Concept: SOA Solution Stack
The SOA solution stack is an SOA reference model depicting the conceptual (high level of abstraction) view of an SOA solution.
Relationships
Main Description

The SOA solution stack, shown below, is an SOA reference model depicting the conceptual (high level of abstraction) view of an SOA solution.

Sometimes referred to as "the SOA layered architecture", this model introduces layers and concepts such as business process, service, or service component, as well as the relationships between them.

It is independent of the technology used for implementation.



There are five horizontal layers that relate to the overall functionality of the SOA solution. The vertical layers are nonfunctional in nature and support various concerns that cut across the functional layers.

The five functional layers are as follows (bottom to top):

  • Operational systems: Represents existing IT assets, and shows which IT investments are valuable and can be leveraged in an SOA.
  • Service components: Realize services, possibly by using one or more applications in the operational systems layer. As you can see on the model, consumers and business processes do not have direct access to components, but just services. Existing components can be internally reused, or leveraged in an SOA if appropriate.
  • Services: Represents the services that have been deployed to the environment. These services are governed discoverable entities.
  • Business Process: Represents the operational artifacts that implement business processes as choreographies of services.
  • Consumers: Represents the channels that are used to access business processes, services, and applications.

The four nonfunctional layers are (left to right):

  • Integration: Provides the capability to mediate, route, and transport service requests to the correct service provider.
  • Quality of service: Provides the capability to address the nonfunctional requirements of an SOA (for example, reliability and availability).
  • Information architecture: Provides the capability to support data, metadata, and business intelligence.
  • Governance: Provides the capability to support business operational life cycle management in SOA.

The SOA solution stack is a partially layered architecture. One layer does not solely depend upon the layer below it; for example, a consumer can access the business process layer as a service or the service layer directly, but not beyond the constraints of the SOA architectural style. Further, a solution does not necessarily need to include all layers.  For example, a solution that does not include process choreography would omit the Business Process layer.

Each of the layers is described further in [ARS07] and [PRT07].