img
Home > Design Patterns > Decomposed Capability

Decomposed Capability (Erl)

How can a service be designed to minimize the chances of capability logic deconstruction?

Decomposed Capability

Problem

The decomposition of a service subsequent to its implementation can require the deconstruction of logic within capabilities, which can be disruptive and make the preservation of a service contract problematic.

Solution

Services prone to future decomposition can be equipped with a series of granular capabilities that more easily facilitate decomposition.

Application

Additional service modeling is carried out to define granular, more easily distributed capabilities.

Impacts

Until the service is eventually decomposed, it may be represented by a bloated contract that stays with it as long as proxy capabilities are supported.

Architecture

Service

Listen to the podcasts that accompany this site

Decomposed Capability: The Invoice service (middle) derived from the same business entities (left) exposes a series of more granular capabilities, several of which correspond directly to specific business entities. This increases the ease at which subsequent service decomposition can be accomplished. The decomposed services (right) are no longer in conflict because the capabilities affected by the decomposition are clearly mapped to the new services. Those same capabilities also remain in the Invoice service contract (top right) as per Proxy Capability.

The Invoice service (middle) derived from the same business entities (left) exposes a series of more granular capabilities, several of which correspond directly to specific business entities. This increases the ease at which subsequent service decomposition can be accomplished. The decomposed services (right) are no longer in conflict because the capabilities affected by the decomposition are clearly mapped to the new services. Those same capabilities also remain in the Invoice service contract (top right) as per Proxy Capability.

Related Patterns in This Catalog

Contract Denormalization, Proxy Capability, Service Decomposition

Related Service-Oriented Computing Goals

Increased Intrinsic Interoperability, Reduced IT Burden

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.