You are previewing SOA Design Patterns.
O'Reilly logo
SOA Design Patterns

Book Description

SOA Design Patterns is an important contribution to the literature and practice
of building and delivering quality software-intensive systems.”

- Grady Booch, IBM Fellow

“With the continued explosion of services and the increased rate of adoption of SOA through the market, there is a critical need for comprehensive, actionable guidance that provides the fastest possible time to results. Microsoft is honored to contribute to the SOA Design Patterns book, and to continue working with the community to realize the value of Real World SOA.”

- Steven Martin, Senior Director, Developer Platform Product Management, Microsoft

SOA Design Patterns provides the proper guidance with the right level of abstraction to be adapted to each organization’s needs, and Oracle is pleased to have contributed to the patterns contained in this book.”

- Dr. Mohamad Afshar, Director of Product Management, Oracle Fusion Middleware, Oracle

“Red Hat is pleased to be involved in the SOA Design Patterns book and contribute important SOA design patterns to the community that we and our customers have used within our own SOA platforms. I am sure this will be a great resource for future SOA practitioners.”

- Pierre Fricke Director, Product Line Management, JBoss SOA Platform, Red Hat

“A wealth of proven, reusable SOA design patterns, clearly explained and illustrated with examples. An invaluable resource for all those involved in the design of service-oriented solutions.”

- Phil Thomas, Consulting IT Specialist, IBM Software Group

“This obligatory almanac of SOA design patterns will become the foundation on which many organizations will build their successful SOA solutions. It will allow organizations to build their own focused SOA design patterns catalog in an expedited fashion knowing that it contains the wealth and expertise of proven SOA best practices.”

- Stephen Bennett, Director, Technology Business Unit, Oracle Corporation

“The technical differences between service orientation and object orientation are subtle

enough to confuse even the most advanced developers. Thomas Erl’s book provides a great service by clearly articulating SOA design patterns and differentiating them from similar OO design patterns.”

- Anne Thomas Manes, VP & Research Director, Burton Group

SOA Design Patterns does an excellent job of laying out and discussing the areas of SOA design that a competent SOA practitioner should understand and employ.”

- Robert Laird, SOA Architect, IBM

“As always, Thomas delivers again. In a well-structured and easy-to-understand way, this book provides a wonderful collection of patterns each addressing a typical set of SOA design problems with well articulated solutions. The plain language and hundreds of diagrams included in the book help make the complicated subjects of SOA design comprehensible even to those who are new to the SOA design world. It’s a must-have reference book for all SOA practitioners, especially for enterprise architects, solution architects, developers, managers, and business process experts.”

- Canyang Kevin Liu, Solution Architecture Manager, SAP

“The concept of service oriented architecture has long promised visions of agile organizations being able to swap out interfaces and applications as business needs change. SOA also promises incredible developer and IT productivity, with the idea that key services would be candidates for cross-enterprise sharing or reuse. But many organizations’ efforts to move to SOA have been mired–by organizational issues, by conflicting vendor messages, and by architectures that may amount to little more than Just a Bunch of Web Services. There’s been a lot of confusion in the SOA marketplace about exactly what SOA is, what it’s supposed to accomplish, and how an enterprise goes about in making it work.

SOA Design Patterns is a definitive work that offers clarity on the purpose and functioning of service oriented architecture. SOA Design Patterns not only helps the IT practitioner lay the groundwork for a well-functioning SOA effort across the enterprise, but also connects the dots between SOA and the business requirements in a very concrete way. Plus, this book is completely technology agnostic—SOA Design Patterns rightly focuses on infrastructure and architecture, and it doesn’t matter whether you’re using components of one kind or another, or Java, or .NET, or Web services, or REST-style interfaces.

While no two SOA implementations are alike, Thomas Erl and his team of contributors have effectively identified the similarities in composition services need to have at a sub-atomic level in order to interact with each other as we hope they will. The book identifies 85 SOA design patterns which have been developed and thoroughly vetted to ensure that a service-oriented architecture does achieve the flexibility and loose coupling promised. The book is also compelling in that it is a living document, if you will, inviting participation in an open process to identify and formulate new patterns to this growing body of knowledge.”

- Joe McKendrick, Independent Analyst, Author of ZDNet’s SOA Blog

“If you want to truly educate yourself on SOA, read this book.”

- Sona Srinivasan, Global Client Services & Operations, CISCO

“An impressive decomposition of the process and architectural elements that support serviceoriented analysis, design, and delivery. Right-sized and terminologically consistent.

Overall, the book represents a patient separation of concerns in respect of the process and architectural parts that underpin any serious SOA undertaking. Two things stand out. First, the pattern relationship diagrams provide rich views into the systemic relationships that structure a service-oriented architecture: these patterns are not discrete, isolated templates to be applied mechanically to the problem space; rather, they form a network of forces and constraints that guide the practitioner to consider the task at hand in the context of its inter-dependencies. Second, the pattern sequence diagrams and accompanying notes provide a useful framework for planning and executing the many activities that comprise an SOA engagement.”

- Ian Robinson, Principal Technology Consultant, ThoughtWorks

“Successful implementation of SOA principles requires a shift in focus from software system means, or the way

Table of Contents

  1. Title Page
  2. Copyright Page
  3. Dedication
  4. Contents
  5. Praise for this Book
  6. Service-Oriented Computing Series
  7. Foreword
  8. Acknowledgments
  9. Contributors
  10. Chapter 1: Introduction
  11. Chapter 2: Case Study Background
  12. Part I: Fundamentals
    1. Chapter 3: Basic Terms and Concepts
    2. Chapter 4: The Architecture of Service-Orientation
    3. Chapter 5: Understanding SOA Design Patterns
  13. Part II: Service Inventory Design Patterns
    1. Chapter 6: Foundational Inventory Patterns
    2. Chapter 7: Logical Inventory Layer Patterns
    3. Chapter 8: Inventory Centralization Patterns
    4. Chapter 9: Inventory Implementation Patterns
    5. Chapter 10: Inventory Governance Patterns
  14. Part III: Service Design Patterns
    1. Chapter 11: Foundational Service Patterns
    2. Chapter 12: Service Implementation Patterns
    3. Chapter 13: Service Security Patterns
    4. Chapter 14: Service Contract Design Patterns
    5. Chapter 15: Legacy Encapsulation Patterns
    6. Chapter 16: Service Governance Patterns
  15. Part IV: Service Composition Design Patterns
    1. Chapter 17: Capability Composition Patterns
    2. Chapter 18: Service Messaging Patterns
    3. Chapter 19: Composition Implementation Patterns
    4. Chapter 20: Service Interaction Security Patterns
    5. Chapter 21: Transformation Patterns
  16. Part V: Supplemental
    1. Chapter 22: Common Compound Design Patterns
    2. Chapter 23: Strategic Architecture Considerations
    3. Chapter 24: Principles and Patterns at the U.S. Department of Defense
  17. Part VI: Appendices
    1. Appendix A: Case Study Conclusion
    2. Appendix B: Candidate Patterns
    3. Appendix C: Principles of Service-Orientation
    4. Appendix D: Patterns and Principles Cross-Reference
    5. Appendix E: Patterns and Architecture Types Cross-Reference
  18. About the Author
  19. About the Contributors
  20. Inside Front Cover
  21. Inside Back Cover
  22. Index of Patterns
  23. Index