SOA Patterns > Service Contract Design Patterns > Decoupled Contract
Decoupled Contract (Erl)
How can a service express its capabilities independently of its implementation?
Problem
For a service to be positioned as an effective enterprise resource, it must be equipped with a technical contract that exists independently from its implementation yet still in alignment with other services.
Solution
The service contract is physically decoupled from its implementation.
Application
A service’s technical interface is physically separated and subject to relevant service-orientation design principles.
Impacts
Service functionality is limited to the feature-set of the decoupled contract medium.
Principles
Architecture
Service
By decoupling the service contract, the service implementation can be evolved without directly impacting service consumers. This can increase the amount of refactoring opportunities and the range of potential consumer programs (and corresponding reuse).
Related Patterns in This Catalog
Agnostic Context, Canonical Expression, Capability Composition, Capability Recomposition, Logic Centralization
Related Service-Oriented Computing Goals
Increased Business and Technology Alignment, Increased Organizational Agility, Increased ROI, Reduced IT Burden