Professional Documents
Culture Documents
“You start with Web services and you start with good solid object-
oriented architectures. Why? Because the fundamentals of engineering
like good abstractions, good separation of concerns never go out of
style. Just because we have yet another set of protocols does not mean
those things get thrown away [Grady Booch, InfoWorld 02/04] .”
SOA Concepts
SOAs promote flexibility via clear definition and loose coupling
What is a service?
A service is a self-contained entity that performs a distinct business function
How do services interact?
May be invoked by clients inside and outside the enterprise
May interact with each other, invoking operations and exchanging data
Can be mediated
What is service choreography?
Choreography enables representations of business processes
What is service discovery?
A registry of services can exist allowing services to be discovered at buildtime or
runtime
How is it enabled?
Uses existing middleware according to SOA principles
Exploits new, open standards and XML data definitions (Web Services)
Combines both into fast time to market solutions
Process Integration
Challenge: Creating and managing the logic that links applications and services
together to implement a business function
Application Domain
begin
1
2
Process State 3
4
end
People Systems
Customers Customers
Partners Partners
Suppliers Suppliers
Employees
Operating Environment
Choreography Svcs
Staff Services
People Process Systems
Customers Customers
Partners Partners
Suppliers Suppliers
Employees
Infrastructure Services
Compensation Support
Runtime components that support compensation (undo of
committed work) for processes.
Value Proposition
WebSphere Business
Integration Modeler v 5.1
Application Process
Development Orchestration
BPEL
choreography,
describing BPEL (Process) extensions
behavior and
interaction
WSDL (Service) e.g.
binds
technology
JavaSnippet
process
Structuring activities help to define Assign
process
Receive
Output Data
Types of Processes
Microflow
Reply
Invoke
Fault
T0
Transaction
boundary
Transaction
JMS message boundary
“Continue Connector”
CC CC CC CC
AI AC
T0 T1 T2 T3 T4 T5
CC CC CC CC
J
Receive Invoke Script Invoke Invoke
T0 T1 TT
2 2’ T3 T4
Compensation
A2 A4 Sphere
A1 A3
Compensation
List
P-1
Compensation
A-12 A-14 Sphere
A1-1
Compensation
List
ProcessApp.ear
Utility.jar
ProcessEJB.jar
Process.bpel Receive
JavaSnippet
Process-Base.java
Invoke
Wait
Assign
JavaSnippet Throw
Process
Receive
Receive
Base Class
Assign
Invoke
Process.wsdl Client.war
Process.java
Stateless
Business Process
Session Bean
Container
...
Process-Entity.java
Entity Bean
EJB Archive
Application adapters
Thank you!
Questions?