3. Web Services Meet Business Processes Web Service 1 Web Service 2 Web Service 3 Web Service 4 Web Service 5 Web Service n
4. Example Problem Space Client PO Service Credit Service Inventory Service Consolidate Results Purchase Order Credit Check Reserve Inventory Credit Response Inventory Response Invoice
5.
6. Recent History of Business Process Standards 2000/05 XLang (Microsoft) 2001/03 BPML (Intallio et al) 2001/05 WSFL (IBM) 2001/06 BPSS (ebXML) 2002/03 BPEL4WS 1.0 (IBM, Microsoft) BPEL4WS 1.1 (OASIS) 2002/06 2003/01 WS-Choreography (W3C) 2003/04 WSCI (Sun et al) WSCL (HP) 2002/08
7.
8. Sample Business Process: Purchase Order Sample Purchase Order Purchase Order Request Purchase Order Acknowledgement Purchase Order Response Business “A” Business “ B”
9. From a Choreography Perspective PO Request PO Acknowledgement PO Response Choreography – The observable public exchange of messages Public Process Business A Business B Send PO Receive PO Ack Receive PO Response Receive PO Send PO Ack Send PO Response
10. From an Orchestration Perspective Send PO Receive PO Ack Receive PO Response Transform Transform From ERP To ERP PO Request PO Acknowledgement PO Response Orchestration – A private executable business process Private Process Business A BPEL Workflow
11. Orchestration and Choreography Together Send PO Receive PO Ack Receive PO Response Transform Transform Business A BPEL Workflow PO Request PO Acknowledgement PO Response Generate BPEL Template Generate BPEL Template Receive PO Send PO Ack Receive PO Response Transform Transform Business B BPEL Workflow Two BPEL workflow templates reflecting a business agreement Business B Business Analyst Tool Business A
12.
13.
14. Standards Building Blocks of BPEL Description HTTP,IIOP, JMS, SMTP Transport XML Message SOAP WSDL UDDI Discovery Transactions Coordination WS-Security WS-Reliability Quality of Service Business Processes Context Description Management Orchestration - BPEL4WS Choreography - CDL4WS
15. BPEL Depends on WSDL and WSDL Extensions Service Implementation Definition Service Interface Definition Service Port Binding Port types define Operations Message Type
16. BPEL Scenario Structure <process> <!– Definition and roles of process participants --> <partnerLinks> ... </partnerLinks> <!- Data/state used within the process --> <variables> ... </variables> <!- Properties that enable conversations --> <correlationSets> ... </correlationSets> <!- Exception handling --> <faultHandlers> ... </faultHandlers> <!- Error recovery – undoing actions --> <compensationHandlers> ... </compensationHandlers> <!- Concurrent events with process itself --> <eventHandlers> ... </eventHandlers> <!- Business process flow --> (activities)* </process>