Welcome!

.NET Authors: Srinivasan Sundara Rajan, Pat Romanski, Jayaram Krishnaswamy, Elizabeth White, Nitin Bandugula

Related Topics: SOA & WOA, Java, XML, .NET, Web 2.0

SOA & WOA: Book Review

Book Review: SOA Patterns

A Must Read for Every Software Architect

I have been waiting for this book for a long time, so the first thing I would like to do is thank Aya, the author's wife. In the acknowledgements the author thanks her for making him man up and finish the book. The second thing I would like to do is thank the author for listening. A project like this had to have been difficult to finish.

The wait was definitely worth it. This is an excellent compilation of rock solid architectural advice. Having it delivered in the format of patterns is icing on the cake.

The book is broken down into two parts. The first part introduces SOA and then covers the patterns. The second part discusses SOA in the real world. I have listed the chapters and the patterns they include below. At the end of each chapter there is also a Summary and Further reading section which I do not show below.

Part 1 SOA patterns

Chapter 1 Solving SOA pains with patterns
Defining software architecture
Service-oriented architecture
Solving SOA challenges with patterns

Chapter 2 Foundation structural patterns
Service Host pattern
Active Service pattern
Transactional Service pattern
Workflodize pattern
Edge Component pattern

Chapter 3 Patterns for performance, scalability, and availability
Decoupled Invocation pattern
Parallel Pipelines pattern
Gridable Service pattern
Service Instance pattern
Virtual Endpoint pattern
Service Watchdog pattern

Chapter 4 Security and manageability patterns
Secured Message pattern
Secured Infrastructure pattern
Service Firewall pattern
Identity Provider pattern
Service Monitor pattern

Chapter 5 Message exchange patterns
Request/Reply pattern
Request/Reaction pattern
Inversion of Communications pattern
Saga pattern

Chapter 6 Service consumer patterns
Reservation pattern
Composite Front End (Portal) pattern
Client/Server/Service pattern

Chapter 7 Service integration patterns
Service Bus pattern
Orchestration pattern
Aggregated Reporting pattern

Part 2 SOA in the real world

Chapter 8 Service antipatterns
Knot antipattern
Nanoservice antipattern
Transactional Integration antipattern
Same Old Way antipattern

Chapter 9 Putting it all together—a case study
Problem
Solution

Chapter 10 SOA vs. the world
REST vs. SOA
SOA and the cloud
SOA and big data

So what makes this book different from other SOA Pattern books? My take on that is that this one is written by a software architect who is writing to software architects. Yes the book is also appropriate for developers, CIOs, project managers, and testers, but it really speaks to the software architect.

The last section of every pattern description contains a quality attributes section. The author calls the patterns a solution and the quality attributes the requirements. Software architecture is all about the quality attributes. They are what help define the scenarios and the trade-offs that need to be made during architectural design. The quality attributes section maps the quality attribute to concrete attributes to a sample scenario. It really helps to highlight the architectural importance of the pattern.

If you have never read any of the author's published material, you should also take the time to check that out. His material on software architecture is great. He put together the SPAMMED architecture framework (SAF) which is a set activities that an architect can follow when they design an architecture. If you are not experienced with quality attributes, the author's SAF is a great place to start.

Another thing that I really like is that the author includes a technology mapping section with each pattern. Although an architecture can be designed out the specific technology in mind, I usually find that ignoring the technology often leads to an architecture design that isn't specific enough to actually be used.

It is also rare and unrealistic to think that you're going to be designing an architecture for an unknown technology. I always know what the environment is that I am going to be implementing in, at least that's been my experience. There may be several technologies used in the same environment, like the mobile environment that I am currently architecting. I do know the environment includes C#, Java, Objective-C, and ASP.NET MVC. I am therefore placing constraints on the architecture based on the fact that all these languages will be used for certain parts of it.

One of the coolest parts of the book is the appendix 'From quality attributes to patterns'. The appendix first gives a very nice overview of what quality attributes are. It continues with the section that explains how quality attributes are matched with patterns. There is then a very large table of quality attributes which are mapped to concrete attributes, sample scenarios, relevant pattern, and the chapter but you can be found it.

The author's writing style makes this book very easy to read. Each pattern is very well explained and the author makes great use of UML diagrams and other visualizations.

If you're going to purchase just one SOA patterns book, you should make it this one. Every software architect should have this book on their shelf.

SOA Patterns

More Stories By Tad Anderson

Tad Anderson has been doing Software Architecture for 18 years and Enterprise Architecture for the past few.

@ThingsExpo Stories
In their session at @ThingsExpo, Shyam Varan Nath, Principal Architect at GE, and Ibrahim Gokcen, who leads GE's advanced IoT analytics, focused on the Internet of Things / Industrial Internet and how to make it operational for business end-users. Learn about the challenges posed by machine and sensor data and how to marry it with enterprise data. They also discussed the tips and tricks to provide the Industrial Internet as an end-user consumable service using Big Data Analytics and Industrial Cloud.
How do APIs and IoT relate? The answer is not as simple as merely adding an API on top of a dumb device, but rather about understanding the architectural patterns for implementing an IoT fabric. There are typically two or three trends: Exposing the device to a management framework Exposing that management framework to a business centric logic Exposing that business layer and data to end users. This last trend is the IoT stack, which involves a new shift in the separation of what stuff happens, where data lives and where the interface lies. For instance, it's a mix of architectural styles ...
Almost everyone sees the potential of Internet of Things but how can businesses truly unlock that potential. The key will be in the ability to discover business insight in the midst of an ocean of Big Data generated from billions of embedded devices via Systems of Discover. Businesses will also need to ensure that they can sustain that insight by leveraging the cloud for global reach, scale and elasticity.
The Industrial Internet revolution is now underway, enabled by connected machines and billions of devices that communicate and collaborate. The massive amounts of Big Data requiring real-time analysis is flooding legacy IT systems and giving way to cloud environments that can handle the unpredictable workloads. Yet many barriers remain until we can fully realize the opportunities and benefits from the convergence of machines and devices with Big Data and the cloud, including interoperability, data security and privacy.
The Internet of Things (IoT) promises to evolve the way the world does business; however, understanding how to apply it to your company can be a mystery. Most people struggle with understanding the potential business uses or tend to get caught up in the technology, resulting in solutions that fail to meet even minimum business goals. In his session at @ThingsExpo, Jesse Shiah, CEO / President / Co-Founder of AgilePoint Inc., showed what is needed to leverage the IoT to transform your business. He discussed opportunities and challenges ahead for the IoT from a market and technical point of vie...
IoT is still a vague buzzword for many people. In his session at @ThingsExpo, Mike Kavis, Vice President & Principal Cloud Architect at Cloud Technology Partners, discussed the business value of IoT that goes far beyond the general public's perception that IoT is all about wearables and home consumer services. He also discussed how IoT is perceived by investors and how venture capitalist access this space. Other topics discussed were barriers to success, what is new, what is old, and what the future may hold. Mike Kavis is Vice President & Principal Cloud Architect at Cloud Technology Pa...
The Internet of Things (IoT) is rapidly in the process of breaking from its heretofore relatively obscure enterprise applications (such as plant floor control and supply chain management) and going mainstream into the consumer space. More and more creative folks are interconnecting everyday products such as household items, mobile devices, appliances and cars, and unleashing new and imaginative scenarios. We are seeing a lot of excitement around applications in home automation, personal fitness, and in-car entertainment and this excitement will bleed into other areas. On the commercial side, m...
Dale Kim is the Director of Industry Solutions at MapR. His background includes a variety of technical and management roles at information technology companies. While his experience includes work with relational databases, much of his career pertains to non-relational data in the areas of search, content management, and NoSQL, and includes senior roles in technical marketing, sales engineering, and support engineering. Dale holds an MBA from Santa Clara University, and a BA in Computer Science from the University of California, Berkeley.
"People are a lot more knowledgeable about APIs now. There are two types of people who work with APIs - IT people who want to use APIs for something internal and the product managers who want to do something outside APIs for people to connect to them," explained Roberto Medrano, Executive Vice President at SOA Software, in this SYS-CON.tv interview at Cloud Expo, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
Performance is the intersection of power, agility, control, and choice. If you value performance, and more specifically consistent performance, you need to look beyond simple virtualized compute. Many factors need to be considered to create a truly performant environment. In his General Session at 15th Cloud Expo, Harold Hannon, Sr. Software Architect at SoftLayer, discussed how to take advantage of a multitude of compute options and platform features to make cloud the cornerstone of your online presence.
An entirely new security model is needed for the Internet of Things, or is it? Can we save some old and tested controls for this new and different environment? In his session at @ThingsExpo, New York's at the Javits Center, Davi Ottenheimer, EMC Senior Director of Trust, reviewed hands-on lessons with IoT devices and reveal a new risk balance you might not expect. Davi Ottenheimer, EMC Senior Director of Trust, has more than nineteen years' experience managing global security operations and assessments, including a decade of leading incident response and digital forensics. He is co-author of t...
SYS-CON Media announced that Splunk, a provider of the leading software platform for real-time Operational Intelligence, has launched an ad campaign on Big Data Journal. Splunk software and cloud services enable organizations to search, monitor, analyze and visualize machine-generated big data coming from websites, applications, servers, networks, sensors and mobile devices. The ads focus on delivering ROI - how improved uptime delivered $6M in annual ROI, improving customer operations by mining large volumes of unstructured data, and how data tracking delivers uptime when it matters most.
DevOps Summit 2015 New York, co-located with the 16th International Cloud Expo - to be held June 9-11, 2015, at the Javits Center in New York City, NY - announces that it is now accepting Keynote Proposals. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time to wait for long development cycles that produce software that is obsolete at launch. DevOps may be disruptive, but it is essential.
The Internet of Things will greatly expand the opportunities for data collection and new business models driven off of that data. In her session at @ThingsExpo, Esmeralda Swartz, CMO of MetraTech, discussed how for this to be effective you not only need to have infrastructure and operational models capable of utilizing this new phenomenon, but increasingly service providers will need to convince a skeptical public to participate. Get ready to show them the money!
The 3rd International Internet of @ThingsExpo, co-located with the 16th International Cloud Expo - to be held June 9-11, 2015, at the Javits Center in New York City, NY - announces that its Call for Papers is now open. The Internet of Things (IoT) is the biggest idea since the creation of the Worldwide Web more than 20 years ago.
The 3rd International Internet of @ThingsExpo, co-located with the 16th International Cloud Expo - to be held June 9-11, 2015, at the Javits Center in New York City, NY - announces that its Call for Papers is now open. The Internet of Things (IoT) is the biggest idea since the creation of the Worldwide Web more than 20 years ago.
"There is a natural synchronization between the business models, the IoT is there to support ,” explained Brendan O'Brien, Co-founder and Chief Architect of Aria Systems, in this SYS-CON.tv interview at the 15th International Cloud Expo®, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
The Internet of Things will put IT to its ultimate test by creating infinite new opportunities to digitize products and services, generate and analyze new data to improve customer satisfaction, and discover new ways to gain a competitive advantage across nearly every industry. In order to help corporate business units to capitalize on the rapidly evolving IoT opportunities, IT must stand up to a new set of challenges. In his session at @ThingsExpo, Jeff Kaplan, Managing Director of THINKstrategies, will examine why IT must finally fulfill its role in support of its SBUs or face a new round of...
The BPM world is going through some evolution or changes where traditional business process management solutions really have nowhere to go in terms of development of the road map. In this demo at 15th Cloud Expo, Kyle Hansen, Director of Professional Services at AgilePoint, shows AgilePoint’s unique approach to dealing with this market circumstance by developing a rapid application composition or development framework.

ARMONK, N.Y., Nov. 20, 2014 /PRNewswire/ --  IBM (NYSE: IBM) today announced that it is bringing a greater level of control, security and flexibility to cloud-based application development and delivery with a single-tenant version of Bluemix, IBM's platform-as-a-service. The new platform enables developers to build ap...