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 October, 2008. To learn more about the book, visit www.soapatterns.com. To be notified of updates to this site, use the notification form.

Chapter 6: Architectural Design Patterns

Home > Chapter 6 Overview > Metadata Centralization
Metadata Centralization

Metadata Centralization

How can service metadata be centrally published and governed?

Problem

Project teams, especially in larger enterprises, run the constant risk of building functionality that already exists or is already in development, resulting in wasted effort, service logic redundancy, and service inventory denormalization.

Solution

Service metadata can be centrally published in a service registry so as to provide a formal means of service registration and discovery.

Application

A private service registry needs to be positioned as a central part of an inventory architecture supported by formal processes for registration and discovery.

Impacts

The service registry technology needs to be adequately mature and reliable and processes need to be consistently followed; otherwise, the registry runs the risk of being ineffective or becoming stale.

Principles

Service Discoverability

Architecture

Inventory

Table 6.15 – Profile summary for the Metadata Centralization pattern.

Problem

When growing a service inventory and fostering fundamental qualities such as those realized by the Service Normalization and Logic Centralization patterns, there is a constant risk of project teams inadvertently (or sometimes even intentionally) delivering new services or service capabilities that already exist or are already in development.

This leads to undesirable results, most notably:

     the introduction of redundant service logic (which runs contrary to the Logic Centralization pattern)

     the introduction of overlapping service contexts (which runs contrary to the Service Normalization pattern)

     an overall less effective service inventory and technology architecture, bloated and convoluted by the added redundancy denormalization and in need of additional governance effort

All of these characteristics can undermine an SOA initiative by reducing its strategic benefit potential.

Figure 6.68 – Without an awareness of the full range of existing and upcoming services, there is a constant risk that project teams will deliver service logic that already exists or is already in development.

Solution

A service registry is established as a central part of the technology architecture and is used by service owners and designers to:

     register existing services and capabilities

     register services and capabilities in development

As emphasized in discovery-related governance patterns, the registration process requires that discovery information be recorded in a highly descriptive and communicative manner so that it can be used by project teams to:

     locate and interpret existing services and learn about their functional contexts and boundaries

     locate and interpret service capabilities and learn about their invocation and interaction requirements

By providing a current and well-maintained registry of service contexts and capabilities, effective service discovery can be achieved.

Figure 6.69 – The fundamental discovery process during which a human locates a potential service via a service registry representing the service inventory, and then interprets the service to determine its suitability.

Note: Metadata Centralization is clearly a design pattern associated with the Service Discoverability design principle and the discovery of services in general. Why then is it not simply called Service Discovery? Service discovery itself is a process that is carried out once an enterprise has successfully applied Metadata Centralization to its architecture and the Service Discoverability design principle to its services. The process of service discovery is therefore related to a set of SOA governance patterns documented separately in the upcoming book SOA Governance that will be released as part of the Prentice Hall Service-Oriented Computing Series by Thomas Erl.

Application

The application of this pattern requires the following common steps:

1.     Regularly apply the Service Discoverability principle to all service contracts being modeled and designed.

2.     Use service profiles and supporting processes to standardize the documentation of service and capability metadata. For example, a common part of service profiles is a standard vocabulary used for keywords that are attached to the service registry records. (

3.     Implement a reliable service registry product and position it as a standard part of the service-oriented technology architecture and perhaps as a common extension to the overall enterprise infrastructure.

Finally, formal processes for the registration and discovery of services and capabilities need to be established, as per related governance patterns.

Note: This pattern can be applied to a single service inventory or multiple domain inventories, depending on the ability of the service registry product to associate domains with service profile records. For a service profile template and descriptions of service discovery and interpretation processes, see Chapters 16 and 12 respectively in SOA: Principles of Service Design.

Impacts

Service registration and discovery processes are key success factors for the effective governance of a service inventory. If the processes are not respected or followed consistently by project teams or if the registry is not kept current, then the value potential of service discovery will severely diminish.

From a design perspective, however, this pattern will introduce the need for metadata standardization, as per the Service Discoverability principle. It will further require that metadata documentation and registration become part of the standard service delivery lifecycles.

Additionally, it may be required to create a new role in support of realizing Metadata Centralization. A person or a group should act as service registry custodians and assume responsibility for collecting the required metadata and maintaining the registry.

Relationships

The Metadata Centralization pattern essentially establishes a service registry, which is key to ensuring the long-term successful application of the Logic Centralization and Contract Centralization pattern. If the correct services and their contracts can be effectively located (discovered), then the risk of inadvertently introducing redundant logic into an environment is reduced (further supporting Service Normalization).

Agnostic services represent the primary type of service for which metadata needs to be centralized for discovery purposes, which is why this pattern is especially relevant to services defined as a result of Entity Abstraction and Utility Abstraction patterns.

The design-time Service Recomposition potential is maximized because of the successful application of this pattern increases the likelihood that the correct service capabilities will be chosen to fulfill composition requirements.

Figure 6.70 – The Metadata Centralization pattern facilitates discovery and therefore relates to other patterns that rely on design-time awareness in order to be consistently applied.

Case Study Example

Case study content is not available on this Web site.

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.