SOA Patterns | Design Patterns | Contract Denormalization


SOA Patterns > Service Contract Design Patterns > Contract Denormalization
Home > Design Patterns > Contract Denormalization

Contract Denormalization (Erl)

How can a service contract facilitate consumer programs with differing data exchange requirements?

Contract Denormalization

Problem

Services with strictly normalized contracts can impose unnecessary functional and performace demands on some consumer programs.

Solution

Service contracts can include a measured extent of denormalization, allowing multiple capabilities to redundantly express core functions in different ways for different types of consumer programs.

Application

The service contract is carefully extended with additional capabilities that provide functional variations of a primary capability.

Impacts

Overuse of this pattern on the same contract can dramatically increase its size, making it difficult to interpret and unwieldy to govern.

Architecture

Service

Contract Denormalization: Equipped with additional (albeit redundant) capabilities, the Invoice service is able to better accommodate the individual requirements of the three consumers.Equipped with additional (albeit redundant) capabilities, the Invoice service is able to better accommodate the individual requirements of the three consumers.


SOASchool.com SOA Certified Professional (SOACP) Module 4: Fundamental SOA Analysis & Modeling with Services & Microservices

This pattern is covered in SOACP Module 4: Fundamental SOA Analysis & Modeling with Services & Microservices.

For more information regarding the SOA Certified Pofessional (SOACP) curriculum,
visit www.arcitura.com/soa.


SOA Design Patterns

This page contains excerpts from:

SOA Design Patterns by Thomas Erl

(ISBN: 0136135161, Hardcover, Full-Color, 400+ Illustrations, 865 pages)

For more information about this book, visit www.arcitura.com/books.

Web Service Contract Design and Versioning for SOA

This page contains excerpts from:

Web Service Contract Design and Versioning for SOA

by Thomas Erl, Anish Karmarkar, Priscilla Walmsley, Hugo Haas, Umit Yalcinalp, Canyang Kevin Liu, David Orchard, Andre Tost, James Pasley

For more information about this book, visit www.arcitura.com/books.