You are on page 1of 13

7083T - Service Oriented Architecture

Week 4 – Topic 05
Service Layers
Source : Service-Oriented Architecture, Thomas Erl, 2005
The three primary service layers.
• Figure shows the SOA layers WITHIN the single Service
Interface Layer of the Enterprise Architecture
– Business Process Layer
Processes of the Enterprise, not just the IT systems
– Service Interface Layer
• Orchestration Layer
• Business Service Layer
– NOT the Business Process Layer
• Application Service Layer
– NOT the Application Layer
– Application Layer
Legacy and Service Implementations
Application Service Layer

Source : Service-Oriented Architecture, Thomas Erl, 2005


The application service layer.
Application Service Layer
• Sits within the Service Interface Layer, and integrates
with the Application Layer below
• Solution (Meaning business process) agnostic, are more
generic and usually reusable across multiple biz
processes
• Can also be used to integrate other application services
• Mixture of custom and COTS products
• Hybrids may cross the line between business and
application logic
Business Service Layer

The business service layer.


Source : Service-Oriented Architecture, Thomas Erl, 2005
Business Service Layer
• Business services can be mapped to small grained
or low level specific business processes and
entities
• Business oriented services can be
– Entity Centric
– Task Centric
– Not both, but a business service layer can be a mix of
both. Usually will be primarily one or the other
Control or Orchestration Service Layer

Source : Service-Oriented Architecture, Thomas Erl, 2005


Control or Orchestration Service Layer
• Introduces another type or service, the process
service (aka but not synonymous with the
controller service)
• Directly relates to a business process
• Controls other business, hybrid and
application/utility services to automate a process
• Can be implemented in “non-technical”
languages, e.g. BPEL
Agnostic Services

Services uniting previously isolated business processes and solution


environments.
Source : Service-Oriented Architecture, Thomas Erl, 2005
Agnostic Services
• Agnostic in this context can mean not bound to
any one process
– e.g. an entity based service can be used by multiple
biz processes that involve that entity
– e.g. a utility service is by definition a generic
reusable service not bound to any business entity:
task or entity based
• Exist with the application service layer or the
business layer
Service Layer Scenarios
• There is no one layered model for the Service Interface Layer,
some options are:
– Single hybrid layer
• Common, doesn’t evolve well, brittle
– Hybrid over utility
• Also common among mature software developers, reuse driven
– Biz task centric over utility
• Often the goal for mature business centric developers
– Task centric over entity centric over utility
• Common among mature systems, flexible, adaptable
– Orchestration over hybrid over utility
• Better then single hybrid, but extending to new orch. difficult
– Orchestration over task centric over utility
• Flexible, evolves well, flexibly adjusts to change
Thank You

You might also like