Return to Home Page
Overview
    History
    Acknowledgements
    Podcasts
    Notification Form
    Feedback Form
    Press Release #1
    Press Release #2
    Press Release #3

Master SOA Design
Pattern Catalog
    Master Pattern List (alphabetical)
    Master Pattern List (by category)
    Master Pattern List (Text)
    Pattern Notation
    Pattern Profiles
    Symbol Legend
    Pattern Contribution Form

SOA Candidate Patterns
    SOA Patterns Review Committee
    Candidate Patterns Overview
    Candidate Patterns List
    Candidate Pattern Contribution Form
    Candidate Pattern
Feedback Form
    SOA Pattern Template

Design Pattern Basics
    What's a Design Pattern?
    What's a Design Pattern Language?
    What's a Compound Pattern?

Supplemental
    SOA Patterns and Application Technologies
    SOA Design Patterns Historical Influences
    SOA Design Patterns and Design Principles
    SOA Design Patterns and Design Granularity
    Legal

Resources
    Design Patterns Publications
    Reference Posters
    SOAPrinciples.com
    WhatIsSOA.com
    SOA Visio Stencil

About the Book



SOA Design Patterns
by Thomas Erl

For more information visit: www.soabooks.com/patterns

Related Publications


"Introducing SOA Design Patterns", SOA World Magazine (PDF)



"The Case for Single-Purpose Services: Understanding the Non-Agnostic Context and a Strategy for Implementation", SOA Magazine (HTML)



"REST-Inspired SOA Design Patterns", SOA Magazine (HTML)



"Service-Orientation and Object-Orientation Part I: A Comparison of Goals and Concepts", SOA Magazine (HTML)



"Service-Orientation and Object-Orientation Part II: A Comparison of Design Principles", SOA Magazine (HTML)



"Service Facade", InformIT (HTML)



"Non-Agnostic Context", InformIT (HTML)



"Domain Inventory", InformIT (HTML)



"Service Normalization", InformIT (HTML)



"Service Decomposition", InformIT (HTML)



"Canonical Schema", InformIT (HTML)



"Policy Centralization", InformIT (HTML)





Reference Data Centralization (candidate)


Home > Candidate Patterns List > Reference Data Centralization

"How can enterprise wide reference data be abstracted, centrally governed and managed?"

Problem

The same reference data often applies across different business services, leading to redundancy and governance challenges. This data can be business specific data such as product codes or can be generic data such as Countries, States and Counties.

Solution

The storage, management and access to reference data is centralized.

Application

The use of a specialized metadata service and repository is employed and accessed using a dedicated reference data utility service.

Impacts

Services are subjected to increased performance overhead and risk.

Principles

Service Reusability

Architecture

Inventory

Status

Under Review

Contributors

Duanne O'Brien
 

Problem

Reference data is used extensively throughout applications and business services to capture and manage state, statuses and different variations of categorizations. It is not uncommon for the reference data to be duplicated throughout services and applications causing significant redundancy and accuracy issues.

Reference data often requires version management and can be subject to complex hierarchies including one to many, many to many and many to one relationships.



Solution

Reference data can be physically abstracted and managed as a dedicated part of the architecture in a central location, accessed using a centralized reference data utility service. Business services and applications can access the reference data service and benefit from a centralized consistent view of the reference data for both business specific and generic reference data.



Application

A centralized reference data service is established to provide an official access point for the retrieval and management of reference data.

The actual application of the reference data will vary depending on the organizations requirements. In particular it may be employed to perform the following tasks:

Provide master flat lists to applications and services. Examples:
Get all Claims Types
Get all Rating Types for a Quote
Get all Address Types
Provide master hierarchical lists to applications and services. Examples:
Get all Counties for a States
Get all States for a Country
Provide lookups and translations between enterprise and legacy reference data. This strategy is often taken when a business service must connect to multiple legacy systems to perform the same activity depending on business unit, product line etc. The reference data values supported in the Canonical Schema will often not be the same as what the legacy system requires and translation is required.



Figure 1: Services and applications use the reference data service to retrieve and manage all reference data values and relationships.



Impacts

Because the reference data and its corresponding services are applied across the entire service inventory, a number of impacts can occur:
Performance requirements and latency becomes a factor. A reference data service can be designed with caching in mind to reduce these impacts.
Version management becomes more important. Without version management the reference data cannot provide a picture over time and is subject to being latest only.
Legacy applications may not be able to access the reference data if not service enabled. Duplication and redundancy may still occur and needs to be managed effectively.


The Prentice Hall Service-Oriented Computing Series from Thomas Erl
Home    SOA Books    SOA Magazine    What is SOA?    SOA Principles    SOASchool.com    SOA Glossary Copyright © 2007-2011
SOA Systems Inc.