Return to Home Page

The public review of the manuscript for "SOA Design Patterns" has concluded !
Thank you to all that participated. 234 reviews were received and over 30 new patterns have been contributed,
increasing the size of this book by over 50%. The second draft of the manuscript is currently in development.

About the Public Review
    History
    Podcasts (audio)
    Notification
    Submit Feedback
    Contribute a Proven Pattern
    Contribute a Candidate Pattern
    Acknowledgements
    Press Release

Introduction to SOA Types & Design Patterns
    The Architecture of
Service-Orientation
    Understanding SOA
Design Patterns

SOA Design Patterns
    Basic Service Inventory Design Pattern Language
    Architectural Design Patterns
    Basic Service Design
Pattern Language
    Service Design Patterns
    Common Compound
Design Patterns

Additional Resources
    View Entire TOC
    Symbol Legend
    Master Pattern List
(by category)
    Candidate Design Patterns
    Design Patterns Publications
    Download SOA Principles Poster (PDF)

About the Book



SOA Design Patterns
by Thomas Erl

For more information visit: www.soapatterns.com

Related Publications


Read the article "Introducing SOA Design Patterns" from the
June 2008 SOA World Magazine (High-Res PDF).

PLEASE NOTE

The content on this page is from the first draft of the manuscript for the upcoming book "SOA Design Patterns" by Thomas Erl. This version of the manuscript was authored in September, 2007. Since then, the manuscript has undergone significant content and structural changes as a result of an industry-wide review in which hundreds of SOA practitioners participated in addition to SOA vendors and experts from the design patterns community.

You are welcome to use the information on this page for research purposes, but you should assume that most of it will change in the final release of the "SOA Design Patterns" book.

Note also, that as a result of an industry-wide call for participation from December 2007 to February 2008, over 30 new design patterns have been contributed to this book. As they become finalized and are incorporated by the author, concise descriptions will be published on this site, and full descriptions with examples will be made available in the final, printed book.

Due to the volume of new content and changes, the release of the "SOA Design Patterns" book has been postponed to December 15, 2008. To learn more about the book, visit www.soapatterns.com. To be notified of updates to this site, use the notification form.

Chapter 4: Understanding SOA Design Patterns

Home > Chapter 4 Overview > 4.5 Types of Patterns
4

4.5 Types of Patterns

Basic Patterns

Basic design patterns solve basic problems. Collectively, these patterns establish foundational underpinnings for the design of whatever architectural type (inventory, service, etc.) they may be related to. Basic patterns are therefore more common and easier to understand than specialized patterns. Despite their simplicity, however, their real life application can often be daunting. Studying these patterns can reveal some of the most significant platform shifts required by SOA and service-orientation.

The two pattern languages documented in this book consist solely of basic design patterns (which is why they are labeled as Òbasic design pattern languagesÓ). The fact that these basic patterns are organized into sequences makes them very suitable for learning purposes. In fact, you could consider these two patterns languages as fundamental SOA theory. They provide detailed insight into the distinct design characteristics, runtime dynamics, and governance issues of inventory and service designs.

Specialized Patterns

Design patterns that address problems specific to certain circumstances or requirements are considered specialized. Most of the patterns in this catalog fall under this category, although they are not explicitly classified as such.

The majority of design patterns in Chapters 6 and 8 in particular are specialized. These patterns essentially extend and build upon the foundation established by the design pattern languages in Chapters 5 and 7.

Canonical Patterns

Canonical design patterns propose that the best solution for a particular problem is to introduce a design standard. The successful application of this type of pattern results in a canonical convention that guarantees consistent design across different parts of an inventory or solution.

The canonical design patterns in this book are:

     Canonical Protocol

     Canonical Data Model

     Canonical Interface Expression

     Canonical Resources

Centralization Patterns

Centralization simply means limiting the options of something to one. Applying this concept in key parts of a service-oriented architecture establishes consistency and fosters standardization and compatibility and, ultimately, native interconnectivity.

The following centralization patterns are covered in the upcoming chapters:

     Logic Centralization

     Metadata Centralization

     Process Centralization

     Resource Centralization

     Rules Centralization

     Security Centralization

     Schema Centralization

     Contract Centralization

     Policy Centralization

A common characteristic across centralization patterns is a trade-off between increased architectural harmony and increased governance and performance requirements. As explained shortly in the Measures of Pattern Application section, patterns can be applied to different extents. A key factor when assessing the application measure for centralization patterns is at what point the benefit outweighs the architectural impact.

Note: Centralization patterns are also very much related to the use of design standards. To constantly require that certain parts of a service-oriented architecture are centralized requires that supporting conventions be regularly followed.

Compound Patterns

Most patterns can be combined in creative ways to solve broader, more complex problems. Chapter 9 documents a collection of compound patterns that represent and describe common pattern combinations.

Prev | Next
The Prentice Hall Service-Oriented Computing Series from Thomas Erl
Home    SOA Books    SOA Magazine    What is SOA?    SOA Principles    SOA Methodology    SOA Glossary Copyright © 2007-2008
SOA Systems Inc.