Product Details
SOA Design Patterns (The Prentice Hall Service-Oriented Computing Series from Thomas Erl)

SOA Design Patterns (The Prentice Hall Service-Oriented Computing Series from Thomas Erl)
By Thomas Erl

List Price: $59.99
Price: $46.79 & eligible for FREE Super Saver Shipping on orders over $25. Details

Availability: Usually ships in 24 hours
Ships from and sold by Amazon.com

50 new or used available from $42.99

Average customer review:

Product 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 capabilities are developed, to the desired end results, or real-world effects required to satisfy organizational business processes. In SOA Design Patterns, Thomas Erl provides service architects with a broad palette of reusable service patterns that describe service capabilities that can cut across many SOA applications. Service architects taking advantage of these patterns will save a great deal of time describing and assembling services to deliver the real world effects they need to meet their organization’s specific business objectives.”

- Chuck Georgo, Public Safety and National Security Architect

 

“In IT, we have increasingly come to see the value of having catalogs of good solution patterns in programming and systems design. With this book, Thomas Erl brings a comprehensive set of patterns to bear on the world of SOA. These patterns enable easily communicated, reusable, and effective solutions, allowing us to more rapidly design and build out the large, complicated and interoperable enterprise SOAs into which our IT environments are evolving.”

- Al Gough, Business Systems Solutions CTO, CACI International Inc.

 

“This book provides a comprehensive and pragmatic review of design issues in service-centric design, development, and evolution. The Web site related to this book [SOAPatterns.org] is a wonderful platform and gives the opportunity for the software community to maintain this catalogue….”

- Veronica Gacitua Decar, Dublin City University

 

“Erl’s SOA Design Patterns is for the IT decision maker determined to make smart architecture design choices, smart investments, and long term enterprise impact. For those IT professionals committed to service-orientation as a value-added design and implementation option, Patterns offers a credible, repeatable approach to engineering an adaptable business enterprise. This is a must read for all IT arch...


Product Details

  • Amazon Sales Rank: #32554 in Books
  • Published on: 2009-01-09
  • Original language: English
  • Number of items: 1
  • Binding: Hardcover
  • 800 pages

Customer Reviews

Wonderful Overkill3
This text provides a wonderful and thorough explanation of base SOA principles. The core definitions are concrete, base references well chosen and contains many useful points for consideration. The key topics are covered in a logical structure and approached in logical order. This makes the text much more useful for building a foundation on SOA than its competitors.

However, the text clearly overstates the issues. The use of non-illuminating case studies coupled with needlessly complex re-definition of key terminology makes this reference sheer overkill. This book provides a key example of taking simple concepts and turning them in on themselves to make them appear much more complex than they really are. I am unsure whether this is because of the author's desire to become the biblical reference that Distributed Systems: Principles and Paradigms is or if it is simply because the author wants to make the topic seem more intellectually difficult to grasp than it really is.

I do not want to take away from the value of the content covered, but there are much more succinct and light-hearted publications that will lead you to the same base understanding. It is VERY wordy and over-stated, but it is worth having in your stack of SOA, Web Services, etc. etc. etc. reference stack. If for nothing else, than key citations and consideration points.

Possibly the most value thing I got from this book was the ability to ask additional questions and put key things to consideration that would have otherwise been missed. Sometimes the most obvious things are taken for granted and hence overlooked -- this book touches on that wonderfully.

To summarize: a wonderful book with a thorough examination of core SOA principles, but it breaks the primary principle of "I'm sorry this letter is so long, I didn't have time to make it shorter."

I enjoyed the author's/publisher's other books on the topic, but this one was a bit of a disappointment - perhaps it should have been first on my list instead of close to last. I highly recommend ignoring the fruitless illustrations/diagrams and sticking to the text, as well.

Also a great SOA security reference5
The book SOA Design Patterns by Thomas Erl offers a very clean and straight-forward explanation of to the many different facets and options of implementing SOA.

I particularly enjoyed Chapter 13: Service Security Patterns and Chapter 20: Service Interaction Security Patterns. Discussed intelligibly in these chapters are security standards such as WS-Security, SAML, WS-BPEL (which goes towards data integrity), XML Encryption and XML Signature. It was for me a good bridge between security concepts I have applied in different areas (such as PKI, Kerberos, etc.) and how to implement these same solutions in a service-oriented architecture.

In addition to the two chapters dedicated to security, I also found the following sections interesting from a security perspective.

Chapter 19-3: Atomic Transaction Services
All tasks, or web services, within a transaction must be followed by an acknowledgement to indicate that the task completed. If no such commit is received by task coordinator defined for the transaction, all the tasks within the transaction can be rolled back (or other mitigating actions can take place.) The web service specifications WS-Coordination and WS-Atomic Transactions can be utilized to employ this safer method of transaction management.

Chapter 19-5: Compensating Service Transaction
This allows for a web service to have an "undo" event, defined at the task level, which can protect the encompassing transactions against individually failing web services. These tasks can operate asynchronously, and the other inline web services are notified when an exception occurs so that they can handle the event appropriately without sacrificing the entire transaction. This helps build robust exception management and defend against resource starvation attacks.

Chapter 18-9: Reliable Messaging
The method helps ensure message delivery. Messages can be tracked via acknowledgements similar to TCP/IP packets, and persist messages during failure conditions. Reliable messaging can help protect against data integrity and service availability attacks.

Chapter 12-5: Partial Validation
At first this sounds like disabling some of the data validation performed by a web service, which is definitely discouraged (remember, all input is evil), but instead what this does is use a language like XPath to filter out unnecessary data from a message so that only a subset of the data is validated; the omitted data is dropped off before the validation phase. This can be used as an optimization technique.

Chapter 18-6: Service Callback
This allows for asynchronous web service calls, which can be helpful for web services that can take a long time to process and respond. A callback address is provided so that the web service can be polled at intervals to see if it is ready to return data. This can also be used to protect against resource starvation attacks.

While the book is sometimes light on implementation details (the author maintained platform agnosticism throughout) it definitely provides a good starting point for managers, coders and architects by including sample SOAP headers, messages and WSDL definitions. What I also appreciated is that keywords are followed by the page number in parenthesis to easily look up the definition of that term. Lastly, not only is the book filled with useful information, but the inside covers themselves is a pattern list reference.

The book may be a challenge to read cover to cover, but is an excellent reference. It is a bookshelf staple for anyone implementing, or interested in, SOA.

Proven, real world patterns5
One of the chief complaints against Service Oriented Architecture (SOA) is that it ignores the real-world challenges facing the average IT organization. Specifically, architects must always balance the need to remain true to a pure vision of SOA with the realities of their environments, business requirements, vendor solutions, and so on. The number of considerations can be overwhelming given all of the factors that must be considered when making an architectural decision.

In an effort to make the job of SOA practitioners easier, Thomas Erl and a diverse team of industry experts have assembled a proven set of techniques that SOA implementers can employ when determining how to meet their obligations. These patterns span the entire range of design and deployment responsibilities, from creating the service inventory all the way to optimal service composition approaches. Readers can take confidence in knowing that every one of these strategies has been validated in production environments. The book also contains comprehensive case studies, which demonstrate how a particular pattern would be applied in a realistic environment.