This chapter establishes the scope and structure of the book by providing an overview of the primary topic areas along with chapter descriptions and information regarding conventions
and supplemental resources.
The chapters in this book contain numerous case study examples, all of which relate back to the case study background information established in this chapter. Appendix A concludes the case study storylines with a brief summary.
SOA Design Patterns by Thomas Erl
Foreword by Grady Booch
With contributions from David Chappell, Jason Hogg, Anish Karmarkar, Mark Little, David Orchard, Satadru Roy, Thomas Rischbeck, Arnaud Simon, Clemens Utschig, Dennis Wisnosky, and others.
Part I: Fundamentals
Chapter 3: Basic Terms and Concepts
Chapter 4: The Architecture of Service-Orientation
Chapter 5: Understanding SOA Design Patterns
To prepare for the upcoming discussion of service-orientation and technology architecture in Chapter 4, this chapter begins by establishing basic terminology and concepts and defining the fundamental links between service-oriented computing, service-orientation, and technology architecture in general.
Chapter 4: The Architecture of Service-Orientation (TOC)
Service-oriented computing is fundamentally about attaining a specific target state. It asks that we take extra design considerations into account with everything we build so that all the moving parts of a service-oriented solution support the realization of this state and foster its growth and evolution. This target state is attractive because it has associated with it a specific set of goals and benefits.
To fully understand service-oriented technology architecture requires knowledge of:
how these goals and benefits are achieved (the method)
what entails the attainment of these goals and benefits (the end-result)
This understanding allows us to assess what requirements and demands are placed upon technology architecture.
The purpose of this chapter is to describe how the service-orientation design paradigm raises specific requirements and demands that end up shaping technology architecture, resulting in a key set of architectural characteristics distinct to SOA. Different SOA types are further explained as they pertain to the scope at which service-oriented technology architecture is defined. These SOA types are later referenced in design pattern profile sections.
Chapter 5: Understanding SOA Design Patterns (TOC)
The first step to forming an effective working relationship with SOA design patterns is attaining a sound comfort level with pattern-related terminology and notation. This important chapter covers these fundamental topics and further describes how design pattern descriptions are organized into standardized profiles. The remaining sections single out specific pattern types and discuss some common design considerations.
Part II: Service Inventory Design Patterns
"Service inventory" is a term used to represent a collection on independently standardized
and governed services. Design patterns associated with the design of the service inventory
technology architecture are provided in the following chapters:
A set of basic design patterns that help
establish fundamental service design characteristics via a suggested application sequence. Collectively, these patterns form the most basic application of serviceorientation
within a service boundary.
Service composition architecture
design and runtime composition integrity are addressed by these patterns.
Atomic Service Transaction
Compensating Service Transaction
Chapter 20: Service Interaction Security Patterns (TOC)
A set of patterns focused exclusively
on security issues pertaining to runtime service interaction and data exchange.
Data Origin Authentication
Many of the previously documented
design patterns can be combined into compound patterns that solve larger,
yet still common design problems. This chapter provides examples of some of
the more relevant combinations, including Enterprise Service Bus and
Enterprise Service Bus
Canonical Schema Bus
Federated Endpoint Layer
This chapter essentially provides a
strategic context for all of the content covered in previous chapters by revisiting the
key goals of service-oriented computing and highlighting how the attainment of each
individual goal can impact the different SOA types first established in Chapter 4.
Chapter 24: Principles and Patterns at the U.S. Department of Defense (TOC)
A brief exploration
of how service-orientation design principles and key design patterns are used
at the DoD in relation to the Business Operating Environment (BOE).
Part VI: Appendices
Appendix A: Case Study Conclusion
Appendix B: Candidate Patterns
Appendix C: Principles of Service-Orientation
Appendix D: Patterns and Principles Cross-Reference
Appendix E: Patterns and Architectural Types Cross-Reference