Professional Documents
Culture Documents
Chapter 6 Service Orientation Design
Chapter 6 Service Orientation Design
Chapter 6 Service Orientation Design
1/25/2019 2
Figure 4.1 Three individuals, each capable of providing a distinct service.
Figure 4.3 Much like a human, an automated service can provide multiple capabilities.
1/25/2019 6
Partition the solution logic into capabilities
Each capability is designed to solve an
individual concern
Related capabilities can be grouped into
units of solution logic or services
Service oriented solution logic is comprised
of services
1/25/2019 7
Service standard contract
Service loose coupling
Service abstraction
Service reusability
Service autonomy (self governance)
Service discoverability
Service composability
1/25/2019 8
Service express their capabilities via a service
contract
Service contract should be standardized to
ensure that the endpoints established by
services are consistent, reliable, and governable
1/25/2019 9
“Services within the same service inventory are in compliance with the same
contract design standards."
Services use service contract to
Functional expression
Data representation
Policy
Source: Thomas Erl
Ensure consistent expression of service
purpose and capabilities
Standardized to support service reusability
and interoperability
Can have technical and non-technical
information about service
We emphasize on technical contract
Required whenever two programs need to
connect
Figure 5.1 The fundamental role of this principle is to ensure the consistent expression of service capabilities and
the overall purpose of the service as defined by the parent service context.
1/25/2019 21
“Service contracts impose low consumer
coupling requirements and are themselves
decoupled from their surrounding
environment."
Create specific types of relationships
within and outside of service boundaries
with a constant emphasis on reducing
(“loosening”) dependencies between
Service contract
Service implementation
Service consumers
1/25/2019 23
“Service contracts only contain essential information and information about services
is limited to what is published in service contracts”
Avoid unnecessary service information, meta-data.
Hide as much of the underlying details of a service as possible.
1/25/2019 25
Services are enterprise resources that can be
reused for multi-purpose logic
Reusability is a core part of typical service
analysis and design
Reusability forms the basis for service
models
1/25/2019 26
“Services contain and express agnostic logic and can be positioned as reusable
enterprise resources."
Reusable services have the following characteristics:
1/25/2019 28
"Services exercise a high level of control over their underlying runtime execution
environment."
Represents the ability of a service to carry out its logic independently of outside
influences
To achieve this, services must be more isolated
Primary benefits
Increased reliability
Behavioral predictability
1/25/2019 31
While the principles on the right-hand side want to add specific physical characteristics to the service
design, the principles on the left act as regulators to ensure that these characteristics are implemented
in a coordinated and appropriate manner.
1/25/2019 32