Book Review: Applied SOA: Service-Oriented Architecture and Design Strategies

Registration is free. Login or register to view/download this content.

There is no shortage of books that cover SOA topics, but few of them go beyond background information, telling us what a service is and what technologies we can use to network them, but leaving us on our own to figure out how to identify or design a service. Fewer still go into the design of SOA solutions for the enterprise. I’m happy to report that this book is a welcome exception.

You’re probably familiar with several of the authors already. Lead author Mike Rosen is Editorial Director for SOAInstitute.org, and co-authors Boris Lublinksy and Kevin T. Smith have written articles and spoken at SOAInstitute.org events. For this book, they are also joined by Marc J. Balcer.

The book is organized in three parts. Part I – Understanding SOA gives an overview of service-orientation. Chapter 1 – Realizing the Promise of SOA describes the potential that SOA has to improve agility, flexibility, costs and time to market. It also describes the challenges that must be overcome to realize these benefits. Chapter 2 – SOA Architecture and Fundamentals describes the architecture of SOA from an enterprise perspective, tying SOA into six key enterprise areas: Business Strategy, Information and Semantics, Business Processes, Service Standards, Technology Infrastructure, and Operations. We think you’ll find this perspective of SOA quit different than what you typically see. Chapter 3 – Getting Started with SOA provides a practical approach to introducing SOA into an organization and gives an overview of the design methodology that is detailed throughout the rest of the book.

Part II – Designing SOA contains the meat of the book and really differentiates if from other SOA texts. Chapter 4– Starting with the Business describes a business architecture approach to answering the following questions: What business are you in? What are your business goals and strategies to achieve your desired market position? What products and services are needed to meet those goals? What capabilities and information are needed to provide those products and services? And finally, what services are necessary, now and over time, to provide those capabilities and information?

Chapter 5 – Service Context and Common Semantics discusses the importance of semantics in service interface design and goes into the techniques of defining a common semantic model and using it to define interface documents. Chapter 6 – Designing Service Interfaces starts with a detailed discussion of important service interface characteristics. It then presents design guidelines such as: interaction styles, isolation of responsibility, identifying granularity, interface documents, and exposing exceptions. Finally, all of these are illustrated with a detailed example. Chapter 7 – Designing Service Implementations provides a layered architecture for the design of individual services, describing the roles and responsibilities of the service interface, logic implementation, and resource access layers. Again, these topics are illustrated in detail with a continuation of the example from Chapter 6. Chapter 8 – Composing Services illustrates the issues and techniques of combining services together into composites.

Next, the book takes another departure from the norm. Chapter 9 – Using Services to Build Enterprise Solutions discusses the end-to-end application architectures that SOA fits into, describing the roles and responsibilities of the different types of services in an n-tier architecture. Then it describes other important aspects of enterprise solutions, including service location, versioning, security, exception handling, and management and monitoring. One of the major uses, and challenges of SOA is integrating existing applications, and the authors deal with this in Chapter 10 – Designing and Using Integration in SOA solutions. This informative chapter describes the overall issues of creating integration services, and then provides details on seven different approaches to address common scenarios. Finally, it provides additional tips and techniques for integration.

Still on the topic of enterprise solutions, Chapter 11 – SOA Security goes into depth on the complex topic of security in SOA solutions. The chapter goes over the array of different standards available and their uses. Then, the authors provide a set of blueprints for deciding and applying security to SOA, illustrated by a case study. To finish off the topic, a game plan for addressing security is laid out. Chapter 12 – SOA Governance defines the governance requirements across the entire service lifecycle. Detailed governance processes are described for each aspect, followed by some practical advice for introducing and implementing governance.

Part III – Case Studies provides an illustrative review of the book in the form of two detailed case studies. Chapter 13 – Case Study – Travel Insurance provides a thorough example of SOA solution design. Starting with the business architecture and models, it works down through the design process illustrating how to include the overall enterprise context into service identification, defining the information model of shared semantics, designing the service interfaces and documents, defining the interaction between services, and designing the implementation of a selected service. Since the author, was also one of the contributors to the SoaML Standard for design of services in UML, the example also illustrates the use of an early version of that standard. We’re told than an updated example, aligned with the final release version of SoaML, will be available on the book’s web site soon. Chapter 14 – Case Study – Service Based Integration in Insurance provides an example of six different integration services from an insurance application. It illustrates a variety of techniques for integrating with mainframes, Java, and .NET applications, and directly to data stores and other web services.

One more item of the book is worth particular note. Appendix B – Evaluating SOA Services provides a detailed checklist for determining the quality of a service. It covers 20 different characteristics, organized into three main categories: service alignment, design characteristics, and technical characteristics. The entire checklist is summarized by a table that describes each characteristic, and includes a list of questions to ask to evaluate it. This is followed by a detailed explanation of each and a reference to the appropriate section of the book where the characteristic is defined. A handy Excel version of the spreadsheet can be downloaded from the book’s website.

If you’re looking for a basic overview of SOA, this probably isn’t the book for you. But, if you want real insight into SOA from an architecture, design and enterprise perspective, you will be hard pressed to find better information. And, if you’re in the position of designing services, you definitely want this book. Given my association with the authors, perhaps my review is not completely unbiased. Take a look out our excerpt and decide for yourself. 

Similar Resources

Featured Certificate: BPM Specialist

Everyone starts here.

You're looking for a way to improve your process improvement skills, but you're not sure where to start.

Earning your Business Process Management Specialist (BPMS) Certificate will give you the competitive advantage you need in today's world. Our courses help you deliver faster and makes projects easier.

Your skills will include building hierarchical process models, using tools to analyze and assess process performance, defining critical process metrics, using best practice principles to redesign processes, developing process improvement project plans, building a center of excellence, and establishing process governance.

The BPMS Certificate is the perfect way to show employers that you are serious about business process management. With in-depth knowledge of process improvement and management, you'll be able to take your business career to the next level.

Learn more about the BPM Specialist Certificate

Courses

  •  

 

Certificates

  • Business Process Management Specialist
  • Earning your Business Process Management Specialist (BPMS) Certificate will provide you with a distinct competitive advantage in today’s rapidly evolving business landscape. With in-depth knowledge of process improvement and management, you’ll be able to take your business career to the next level.
  • BPM Professional Certificate
    Business Process Management Professional
  • Earning your Business Process Management Professional (BPMP) Certificate will elevate your expertise and professional standing in the field of business process management. Our BPMP Certificate is a tangible symbol of your achievement, demonstrating your in-depth knowledge of process improvement and management.

Certification

BPM Certification

  • Make the most of your hard-earned skills. Earn the respect of your peers and superiors with Business Process Management Certification from the industry's top BPM educational organization.

Courses

 

Certificates

  • Operational Excellence Specialist
  • Earning your Operational Excellence Specialist Certificate will provide you with a distinct advantage in driving organizational excellence and achieving sustainable improvements in performance.
 

 

OpEx Professional Certificate

  • Operational Excellence Professional
  • Earn your Operational Excellence Professional Certificate and gain a competitive edge in driving organizational excellence and achieving sustainable improvements in performance.

Courses

Certificate
  •  

  • Agile BPM Specialist
  • Earn your Agile BPM Specialist Certificate and gain a competitive edge in driving business process management (BPM) with agile methodologies. You’ll gain a strong understanding of how to apply agile principles and concepts to business process management initiatives.  
 

Business Architecture

 

Certificates

  • Business Architecture Specialist
  • The Business Architecture Specialist (BAIS) Certificate is proof that you’ve begun your business architecture journey by committing to the industry’s most meaningful and credible business architecture training program.

  • Business Architecture Professional
  • When you earn your Business Architecture Professional (BAIP) Certificate, you will be able to design and implement a governance structure for your organization, develop and optimize business processes, and manage business information effectively.

BA CertificationCertification

  • Make the most of your hard-earned skills. Earn the respect of your peers and superiors with Business Architecture Certification from the industry's top BPM educational organization.

Courses

 

Certificates

  • Digital Transformation Specialist
  • Earning your Digital Transformation Specialist Certificate will provide you with a distinct advantage in today’s rapidly evolving business landscape. 
 

 

  • Digital Transformation Professional
  • The Digital Transformation Professional Certificate is the first program in the industry to cover all the key pillars of Digital Transformation holistically with practical recommendations and exercises.

Courses

Certificate

  • Agile Business Analysis Specialist
  • Earning your Agile Business Analysis Specialist Certificate will provide you with a distinct advantage in the world of agile software development.

Courses

Certificate
  • DAS Certificate
  • Decision Automation Specialist
  • Earning your Decision Automation Certificate will empower you to excel in the dynamic field of automated decision-making, where data-driven insights are pivotal to driving business innovation and efficiency.