You are on page 1of 17

Service Oriented

Analysis and Design


Models
Pictorial representation of the design of an application
Model is a pictorial representation of a specific kind of
elements based on the established notation
Structure Diagram – class, object, components, composite,
package and deployment
Behavior diagram – use case, activity and state machine
Interaction diagram – sequence, communication, timing and
interaction
Principles of Service Design
Reuse
Well chosen granularity
coarse grained services consumed by number of other service or
application
Abstraction
All interaction based on contract(service / data)
High cohesion (cohesion describes particles that are the same
and tend to stick together)
All operations and functionality are grouped
Autonomy
Control over its environment and required resources
Principles of Service Design
Integration
Loose coupling – all interactions via interfaces
Agility
Statelessness
conversational state are not stored
Composability
Combining of services to build new services
Discoverability
Metadata describes the capability and limitations of the service.
Service registry is implemented for dynamic discovery of services by
consumer
Design of Activity Services
(Business Services)
Service Contract
Service exposed with operation
Data Contract
Data exchange format
Requirement analysis and business
applications

Activity service identification

Perform Analysis

Choose Technology platform & Framework

Design of Activity Service

Code & Test Activity Service


Design of Data Services
Encapsulated access to data stored across the enterprise
Interact with the data sources outside the enterprise
Data Modeling

Data service identification

Perform Analysis

Technology Selection

Design of Data Service

Code & Test Data Service


Design of Client Services
Identify the requirements of users
Analysis of requirements of results
Information available portal/Mobile
Source of information that are aggregated by client service
Technology infrastructure
Identified client services are specified in terms of service
contracts and data contracts
Requirement analysis of Business
Applications

Client service identification

Perform Analysis

Technology Selection

Design of Client Service

Code & Test Client Service


Design of Business Process
Services
BPEL – Business Process Execution Language
XML Based language
Combines benefits of hierarchical languages (XLANG and WSFL
- Web Services Flow Language)
Process orchestration engine – runtime environment for BPEL
Basic Activities
Receive – Begin with receive
Invoke –invoke web service operation
Assign – data manipulation of variables
Reply - it similar to return statement
Terminate – terminate entire process
Throw - exception handling
Wait – wait for period of time or specified point in time
Empty – no-op instruction
Compensate – compensation for a successfully completed set of
activities
Structured Activities
While – used to implement loops
Switch –select one branch at decision
Step-pick – selection of specific branch based on message or
time out
Sequence – set of activities executed sequentially
Flow – activities executed in parallel
Scope – define nested activities, correlation sets, fault handlers,
compensation handlers and event handlers

You might also like