SOA Patterns | Design Patterns | Utility Abstraction

SOA Patterns > Logical Inventory Layer Patterns > Utility Abstraction
Home > Design Patterns > Utility Abstraction

Utility Abstraction (Erl)

How can common non-business centric logic be separated, reused, and independently governed?

Utility Abstraction


When non-business centric processing logic is packaged together with business-specific logic, it results in the redundant implementation of common utility functions across different services.


A service layer dedicated to utility processing is established, providing reusable utility services for use by other services in the inventory.


The utility service model is incorporated into analysis and design processes in support of utility logic abstraction, and further steps are taken to define balanced service contexts.


When utility logic is distributed across multiple services it can increase the size, complexity, and performance demands of compositions.


Inventory, Composition, Service

Cross-cutting utility logic is identified with the help of enterprise technology architecture specifications and then abstracted into a layer of dedicated services based on the utility service model. 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,

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