Title / definition
SOA – Service Oriented Architecture.

IT Architecture


Brief history and description
A Service-Oriented Architecture (SOA) is a set of principles and methodologies for designing and developing software in the form of interoperable services. These services are implemented in the form of well-defined business functionalities that are built as software components (discrete pieces of code and/or data structures) that can be reused for different purposes. SOA design principles are used during the phases of systems development and integration.

A SOA based architecture must meet the following requirements:

  • Interoperability among different systems and programming languages that provides the basis for integration between applications on different platforms through a communication protocol.
  • Desire to create a federation of resources. Establish and maintain data flow to a federated database system.


The following guiding principles define the ground rules for development, maintenance, and usage of a Service Oriented Architecture:

  • reuse, granularity, modularity, composability, componentization and interoperability.
  • standards-compliance (both common and industry-specific).
  • services identification and categorization, provisioning and delivery, and monitoring and tracking.


A further eight specific service-orientation principles common to all primary SOA platforms were defined by Thomas Erl of SOA Systems Inc.

  • Standardized service contract – Services adhere to a communications agreement, as defined collectively by one or more service-description documents.
  • Service Loose Coupling – Services maintain a relationship that minimizes dependencies and only requires that they maintain an awareness of each other.
  • Service Abstraction – Beyond descriptions in the service contract, services hide logic from the outside world.
  • Service reusability – Logic is divided into services with the intention of promoting reuse.
  • Service autonomy – Services have control over the logic they encapsulate.
  • Service granularity – A design consideration to provide optimal scope and right granular level of the business functionality in a service operation.
  • Service statelessness – Services minimize resource consumption by deferring the management of state information when necessary
  • Service discoverability – Services are supplemented with communicative meta data by which they can be effectively discovered and interpreted.
  • Service composability – Services are effective composition participants, regardless of the size and complexity of the composition.

(source: Thomas Erl. Published on soaprinciples.com)

Target Audience
Enterprise, Business, Application and IT Architects.

User communities and groups
A SOA work group is active within The Open Group

Official publisher

Accreditations and qualifications



Official Sites n/a
User groups and communities The Open Group SOA workgroup
Publications n/a
Accreditations and Qualifications n/a
Tooling n/a
Other useful links IBPI home page
FREE IBPI documents Whitepapers