SlideShare ist ein Scribd-Unternehmen logo
1 von 41
 
BPEL: Building Standards-Based Business Processes with Web Services   Session id:  40024
Web Services Meet Business Processes Web Service 1 Web Service 2 Web Service 3 Web Service 4 Web Service 5 Web Service n
Example Problem Space Client PO Service Credit Service Inventory Service Consolidate Results Purchase  Order Credit Check Reserve Inventory Credit Response Inventory Response Invoice
Business Process Challenges ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
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
Orchestration vs Choreography ,[object Object],[object Object],[object Object],[object Object]
Sample Business Process: Purchase Order Sample Purchase Order Purchase Order Request Purchase Order Acknowledgement Purchase Order Response Business   “A” Business  “ B”
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
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
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
Business Process Execution Language for Web Services ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Value Proposition ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
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
BPEL Depends on WSDL and WSDL Extensions Service  Implementation Definition Service  Interface  Definition Service Port Binding Port types define Operations Message Type
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>
BPEL Activities ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Partners ,[object Object],[object Object],Credit Service Partner 2 Inventory Service Partner 3 Partner 1 (the process) Purchase Service
Partners in BPEL <partnerLinks> <partnerLink name=“customer&quot; serviceLinkType=“lns:purchasePLT”  myRole=“purchaseService”/> <partnerLink name= “ inventoryChecker ”  serviceLinkType= “ lns:inventoryPLT ”   myRole=“inventoryRequestor” partnerRole=“inventoryService”/> <partnerLink name=“creditChecker” serviceLinkType=“lns:creditPLT” myRole=“creditRequestor” partnerRole=“creditService”/> </partnerLinks> <plt:partnerLinkType name= “ purchasePLT”> <plt:role name= “ purchaseService”> <plt:portType name= “ tns:purchasePT”/> </plt:role> </plt:partnerLinkType>  Purchase Process WSDL: BPEL: <portType name= “ purchasePT”> < operation   name = &quot; sendPurchase &quot; > </operation> </portType> Purchase Process PortType:
Variables ,[object Object],[object Object],[object Object],Customer Service Process <variable> <activity> <activity> Persist Persist/ Retrieve Customer Service Persist/ Retrieve Persist/ Retrieve <variable> <A> <B>
Variables in BPEL <variables> <variable name=“PO” messageType=“lns:POMessage”/> <variable name=“Invoice” messageType=“lns:InvMessage”/> <variable name=“POFault” messageType=“lns:orderFaultType”/> </variables> <message name=“POMessage”> <part name=“customerInfo” type=“sns:customerInfo”/> <part name=“purchaseOrder” type=“sns:purchaseOrder”/> </message> <message name=&quot;InvMessage&quot;> <part name=“IVC” type=“sns:Invoice”/> </message> <message name=“orderFaultType”> <part name=“problemInfo” type=“xsd:string”/> </message> Purchase Process WSDL: BPEL:
How is Data Manipulation  Done? ,[object Object],[object Object],<assign> <copy> <from variable=&quot;PO&quot; part=&quot;customerInfo&quot;/> <to variable=“creditRequest” part=&quot;customerInfo&quot;/> </copy> </assign>
Simple Activities ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Simple Activities Combined with Structured Activities Invoke <InventoryService> Invoke <CreditService> Reply <Invoice> Receive <PO> <sequence> <flow> </sequence>
Sample Activities in BPEL <sequence> <receive partnerLink=“customer” portType=“lns:purchaseOrderPT&quot;  operation=“sendPurchaseOrder” variable=“PO” createInstance=&quot;yes&quot; /> <flow> <invoke partnerLink=“inventoryChecker” portType=“lns:inventoryPT” operation=&quot;checkINV&quot; inputVariable=&quot;inventoryRequest&quot; outputVariable=&quot;inventoryResponse&quot; /> <invoke partnerLink=&quot;creditChecker&quot; portType=“lns:creditPT&quot; operation=&quot;checkCRED&quot; inputVariable=&quot;creditRequest&quot; outputVariable=&quot;creditResponse&quot; /> </flow> ... <reply partnerLink=“customer” portType=“lns:purchaseOrderPT”  operation=“sendPurchaseOrder” variable=“invoice&quot;/> </sequence>
Links – Control Flow <flow> <links> <link name=&quot;XtoY&quot;/> <link name=&quot;CtoD&quot;/> </links> <sequence name=&quot;X&quot;> <source linkName=&quot;XtoY&quot;/> <invoke name=&quot;A&quot; .../> <invoke name=&quot;B&quot; .../> </sequence> <sequence name&quot;Y&quot;> <target linkName=&quot;XtoY&quot;/> <receive name=&quot;C&quot;/> <source linkName=&quot;CtoD&quot;/> </receive> <invoke name=&quot;E&quot; .../> </sequence> <invoke partnerLink=&quot;D&quot;> <target linkName=&quot;CtoD&quot;/> </invoke> </flow> <flow> </flow> <Y> <X> <link CtoD> <link XtoY> <C> <E> <A> <B> <D>
Correlation Customer ,[object Object],[object Object],PO Correlation: < PO_CustId = 10> <PO_OrdId = 100> POResponse Correlations: < PO_CustId = 10> <PO_OrdId = 100> <Inv_VendId = 20> <Inv_InvId = 200> Seller ,[object Object],[object Object],initiate=yes initiate=yes pattern=out initiate=no pattern=out initiate=yes initiate=yes initiate=no
Correlations in BPEL <correlationSets> <correlationSet name= &quot; POCorr &quot;   properties=&quot;cor:custId cor:ordId&quot;/> <correlationSet name= &quot; InvoiceCorr &quot;   properties= &quot; cor:vendId cor:invId &quot; /> </correlationSets> ... <receive partnerLink=“Customer” portType= &quot; SP:PurchaseOrderPT &quot; operation= &quot; AsynchPurchase &quot;  variable= &quot; PO &quot; > <correlations> <correlation set= &quot; POCorr &quot;  initiate= &quot; yes &quot; > </correlations> </receive> ... <invoke partnerLink=“Customer” portType= &quot; SP:CustomerPT &quot; operation= “ ProcessPurchaseResponse &quot;  inputVariable= &quot; POResponse &quot; > <correlations> <correlation set= &quot; POCorr &quot;  initiate= &quot; no &quot;  pattern= &quot; out &quot; > <correlation set= &quot; InvoiceCorr &quot;  initiate= &quot; yes &quot;  pattern= &quot; out &quot; > </correlations> </invoke> ...
Scopes in BPEL ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],<scope variableAccessSerializable=&quot;yes|no“  ...>   <variables> </variables>  <correlationSets>? ... </correlationSets>  <faultHandlers> </faultHandlers>  <compensationHandler>? ... </compensationHandler>  <eventHandlers> </eventHandlers>  ( activities)*   </scope>
Long Running Transactions and Compensation <scope> </scope> ,[object Object],[object Object],InventoryService ,[object Object],[object Object],[object Object],CreditService Undo Reserve Inventory Undo Charge Hold Fee
Compensation Handlers  in BPEL <scope> <compensationHandler> <invoke partnerLink= &quot; Seller &quot;  portType= &quot; SP:Purchasing &quot; operation= &quot; CancelPurchase &quot; inputVariable=&quot;getResponse&quot; outputVariable=&quot;getConfirmation&quot;> <correlations> <correlation set=&quot;PurchaseOrder&quot; pattern=&quot;out&quot;/> </correlations> </invoke> </compensationHandler> <invoke partnerLink=&quot;Seller&quot; portType=&quot;SP:Purchasing&quot; operation=&quot;SyncPurchase&quot; inputVariable=&quot;sendPO&quot; outputVariable=&quot;getResponse&quot;> <correlations> <correlation set=&quot;PurchaseOrder&quot; initiate=“yes” pattern=&quot;out&quot;/> </correlations> </invoke> </scope>
Exception Handling in BPEL ,[object Object],[object Object],[object Object],<faultHandlers>  <catch faultName=&quot;lns:cannotCompleteOrder&quot; faultVariable=&quot;POFault&quot;> <reply partnerLink=&quot;customer&quot; portType=&quot;lns:purchaseOrderPT&quot; operation=&quot;sendPurchaseOrder&quot; variable=&quot;POFault&quot; faultName=&quot;cannotCompleteOrder&quot;/> </catch> </faultHandlers>
Just Show Me How to Do it! . . . ,[object Object],[object Object],[object Object],Partner WSDL 1 Process WSDL Partner WSDL n BPEL Scenario <process> <partners>  <variables> <sequence> <flow> </sequence> </process> Application Server BPEL Runtime Compiled BPEL Scenario
Tooling Requirements ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
What Happened to Java? ,[object Object],[object Object],Application Server Servlet EJB Based on JSR 207 Session at JavaOne 2003 Messaging Transactions Pooling Naming Security Process Definition for Java
What Happened to J2EE? ,[object Object],[object Object],Based on JSR 208 Session at JavaOne 2003 . . . Routing Engine Transform Engine BPEL Engine Normalized Message Bus JSR 208 Binding SPI . . . Binding Framework JSR 208 Machine SPI EDI JCA Web Services JMS
Oracle’s Strategy ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Remember BPEL Does  Not Solve “World Hunger” ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
But Remember: People Are Trying to Solve “World Hunger” ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Parting Thoughts ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
 

Weitere ähnliche Inhalte

Andere mochten auch

Nowy trend: Szersza rzeczywistość
Nowy trend: Szersza rzeczywistośćNowy trend: Szersza rzeczywistość
Nowy trend: Szersza rzeczywistośćK2 Internet SA
 
Managing and Tracking Opportunites
Managing and Tracking OpportunitesManaging and Tracking Opportunites
Managing and Tracking OpportunitesDavid Watson
 
Rola innowacyjnych rozwiazan z obszaru video - motion z perspektywy procesu p...
Rola innowacyjnych rozwiazan z obszaru video - motion z perspektywy procesu p...Rola innowacyjnych rozwiazan z obszaru video - motion z perspektywy procesu p...
Rola innowacyjnych rozwiazan z obszaru video - motion z perspektywy procesu p...K2 Internet SA
 
Cursor Adapter W
Cursor Adapter WCursor Adapter W
Cursor Adapter Wguest5f0fa0
 
Hosted accountants presentation
Hosted accountants presentationHosted accountants presentation
Hosted accountants presentationDavid Watson
 
Defining And Delivering A Robust It Strategy For A Professional Firm
Defining And Delivering A Robust It Strategy For A Professional FirmDefining And Delivering A Robust It Strategy For A Professional Firm
Defining And Delivering A Robust It Strategy For A Professional FirmDavid Watson
 
Introduction to Indigo
Introduction to IndigoIntroduction to Indigo
Introduction to IndigoDavid Watson
 
移动互联网产品和用户体验设计的 6.5 个支点
移动互联网产品和用户体验设计的 6.5 个支点移动互联网产品和用户体验设计的 6.5 个支点
移动互联网产品和用户体验设计的 6.5 个支点ariamax
 
Hora De Refletir
Hora De RefletirHora De Refletir
Hora De Refletirrosemarques
 
TonlaKazan - A New Mobile Advertising Platform
TonlaKazan - A New Mobile Advertising PlatformTonlaKazan - A New Mobile Advertising Platform
TonlaKazan - A New Mobile Advertising PlatformAnafikir
 

Andere mochten auch (12)

Nowy trend: Szersza rzeczywistość
Nowy trend: Szersza rzeczywistośćNowy trend: Szersza rzeczywistość
Nowy trend: Szersza rzeczywistość
 
Las Ideas De Pupi Ingles
Las Ideas De Pupi   InglesLas Ideas De Pupi   Ingles
Las Ideas De Pupi Ingles
 
Managing and Tracking Opportunites
Managing and Tracking OpportunitesManaging and Tracking Opportunites
Managing and Tracking Opportunites
 
Rola innowacyjnych rozwiazan z obszaru video - motion z perspektywy procesu p...
Rola innowacyjnych rozwiazan z obszaru video - motion z perspektywy procesu p...Rola innowacyjnych rozwiazan z obszaru video - motion z perspektywy procesu p...
Rola innowacyjnych rozwiazan z obszaru video - motion z perspektywy procesu p...
 
Cursor Adapter W
Cursor Adapter WCursor Adapter W
Cursor Adapter W
 
Hosted accountants presentation
Hosted accountants presentationHosted accountants presentation
Hosted accountants presentation
 
闲谈GDP
闲谈GDP闲谈GDP
闲谈GDP
 
Defining And Delivering A Robust It Strategy For A Professional Firm
Defining And Delivering A Robust It Strategy For A Professional FirmDefining And Delivering A Robust It Strategy For A Professional Firm
Defining And Delivering A Robust It Strategy For A Professional Firm
 
Introduction to Indigo
Introduction to IndigoIntroduction to Indigo
Introduction to Indigo
 
移动互联网产品和用户体验设计的 6.5 个支点
移动互联网产品和用户体验设计的 6.5 个支点移动互联网产品和用户体验设计的 6.5 个支点
移动互联网产品和用户体验设计的 6.5 个支点
 
Hora De Refletir
Hora De RefletirHora De Refletir
Hora De Refletir
 
TonlaKazan - A New Mobile Advertising Platform
TonlaKazan - A New Mobile Advertising PlatformTonlaKazan - A New Mobile Advertising Platform
TonlaKazan - A New Mobile Advertising Platform
 

Ähnlich wie Oracle

Business Process Execution Language
Business Process Execution LanguageBusiness Process Execution Language
Business Process Execution Language招政 蔣
 
Enabling The Service-Oriented Enterprise
Enabling The Service-Oriented EnterpriseEnabling The Service-Oriented Enterprise
Enabling The Service-Oriented EnterpriseNathaniel Palmer
 
jBPM5 - Bringing more power to your business processes
jBPM5 - Bringing more power to your business processesjBPM5 - Bringing more power to your business processes
jBPM5 - Bringing more power to your business processesKris Verlaenen
 
jBPM5 (Argentina workshop)
jBPM5 (Argentina workshop)jBPM5 (Argentina workshop)
jBPM5 (Argentina workshop)Kris Verlaenen
 
Peter Ward: The True Power of SharePoint Designer Workflows
Peter Ward: The True Power of SharePoint Designer WorkflowsPeter Ward: The True Power of SharePoint Designer Workflows
Peter Ward: The True Power of SharePoint Designer WorkflowsSharePoint Saturday NY
 
EMEA Partner Summit: jBPM 5 - Bringing More Power to BPM
EMEA Partner Summit: 	jBPM 5 - Bringing More Power to BPMEMEA Partner Summit: 	jBPM 5 - Bringing More Power to BPM
EMEA Partner Summit: jBPM 5 - Bringing More Power to BPMEric D. Schabell
 
Policy Based Approach To Runtime Governace
Policy Based Approach To Runtime GovernacePolicy Based Approach To Runtime Governace
Policy Based Approach To Runtime GovernaceMichiel.Kemperman
 
Ws Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticeWs Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticePini Cohen
 
jBPM5: Bringing more Power to your Business Processes
jBPM5: Bringing more Power to your Business ProcessesjBPM5: Bringing more Power to your Business Processes
jBPM5: Bringing more Power to your Business ProcessesKris Verlaenen
 
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...ddrschiw
 
Software Development Trends 2010-2011
Software Development Trends 2010-2011Software Development Trends 2010-2011
Software Development Trends 2010-2011Charalampos Arapidis
 
Delivering BAM & BPM With Run-Time Integration
Delivering BAM & BPM With Run-Time IntegrationDelivering BAM & BPM With Run-Time Integration
Delivering BAM & BPM With Run-Time IntegrationNathaniel Palmer
 
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-OrchesterWeb Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-OrchesterTammo van Lessen
 
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processes
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processesJBossOneDayTalk 2011: Using jBPM to bring more power to your business processes
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processesKris Verlaenen
 
TechDays 2010 Portugal - Event Driven Architectures - 16x9
TechDays 2010 Portugal - Event Driven Architectures - 16x9TechDays 2010 Portugal - Event Driven Architectures - 16x9
TechDays 2010 Portugal - Event Driven Architectures - 16x9Nuno Godinho
 

Ähnlich wie Oracle (20)

Business Process Execution Language
Business Process Execution LanguageBusiness Process Execution Language
Business Process Execution Language
 
Enabling The Service-Oriented Enterprise
Enabling The Service-Oriented EnterpriseEnabling The Service-Oriented Enterprise
Enabling The Service-Oriented Enterprise
 
jBPM5 - Bringing more power to your business processes
jBPM5 - Bringing more power to your business processesjBPM5 - Bringing more power to your business processes
jBPM5 - Bringing more power to your business processes
 
jBPM5 (Argentina workshop)
jBPM5 (Argentina workshop)jBPM5 (Argentina workshop)
jBPM5 (Argentina workshop)
 
Peter Ward: The True Power of SharePoint Designer Workflows
Peter Ward: The True Power of SharePoint Designer WorkflowsPeter Ward: The True Power of SharePoint Designer Workflows
Peter Ward: The True Power of SharePoint Designer Workflows
 
EMEA Partner Summit: jBPM 5 - Bringing More Power to BPM
EMEA Partner Summit: 	jBPM 5 - Bringing More Power to BPMEMEA Partner Summit: 	jBPM 5 - Bringing More Power to BPM
EMEA Partner Summit: jBPM 5 - Bringing More Power to BPM
 
Policy Based Approach To Runtime Governace
Policy Based Approach To Runtime GovernacePolicy Based Approach To Runtime Governace
Policy Based Approach To Runtime Governace
 
Ws Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticeWs Soa V6 Theory And Practice
Ws Soa V6 Theory And Practice
 
jBPM5: Bringing more Power to your Business Processes
jBPM5: Bringing more Power to your Business ProcessesjBPM5: Bringing more Power to your Business Processes
jBPM5: Bringing more Power to your Business Processes
 
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
 
OpenESB
OpenESBOpenESB
OpenESB
 
Software Development Trends 2010-2011
Software Development Trends 2010-2011Software Development Trends 2010-2011
Software Development Trends 2010-2011
 
Delivering BAM & BPM With Run-Time Integration
Delivering BAM & BPM With Run-Time IntegrationDelivering BAM & BPM With Run-Time Integration
Delivering BAM & BPM With Run-Time Integration
 
Soa & Bpel
Soa & BpelSoa & Bpel
Soa & Bpel
 
Soa & Bpel
Soa & BpelSoa & Bpel
Soa & Bpel
 
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-OrchesterWeb Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
 
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processes
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processesJBossOneDayTalk 2011: Using jBPM to bring more power to your business processes
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processes
 
BPMN.ppt
BPMN.pptBPMN.ppt
BPMN.ppt
 
TechDays 2010 Portugal - Event Driven Architectures - 16x9
TechDays 2010 Portugal - Event Driven Architectures - 16x9TechDays 2010 Portugal - Event Driven Architectures - 16x9
TechDays 2010 Portugal - Event Driven Architectures - 16x9
 
Soa Test Methodology
Soa Test MethodologySoa Test Methodology
Soa Test Methodology
 

Kürzlich hochgeladen

Socio-economic-Impact-of-business-consumers-suppliers-and.pptx
Socio-economic-Impact-of-business-consumers-suppliers-and.pptxSocio-economic-Impact-of-business-consumers-suppliers-and.pptx
Socio-economic-Impact-of-business-consumers-suppliers-and.pptxtrishalcan8
 
Tech Startup Growth Hacking 101 - Basics on Growth Marketing
Tech Startup Growth Hacking 101  - Basics on Growth MarketingTech Startup Growth Hacking 101  - Basics on Growth Marketing
Tech Startup Growth Hacking 101 - Basics on Growth MarketingShawn Pang
 
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130  Available With RoomVIP Kolkata Call Girl Howrah 👉 8250192130  Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Roomdivyansh0kumar0
 
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature SetCreating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature SetDenis Gagné
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Dave Litwiller
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdfRenandantas16
 
BEST ✨ Call Girls In Indirapuram Ghaziabad ✔️ 9871031762 ✔️ Escorts Service...
BEST ✨ Call Girls In  Indirapuram Ghaziabad  ✔️ 9871031762 ✔️ Escorts Service...BEST ✨ Call Girls In  Indirapuram Ghaziabad  ✔️ 9871031762 ✔️ Escorts Service...
BEST ✨ Call Girls In Indirapuram Ghaziabad ✔️ 9871031762 ✔️ Escorts Service...noida100girls
 
Monte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMMonte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMRavindra Nath Shukla
 
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service Jamshedpur
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service JamshedpurVIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service Jamshedpur
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service JamshedpurSuhani Kapoor
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxAndy Lambert
 
Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear RegressionRavindra Nath Shukla
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyEthan lee
 
GD Birla and his contribution in management
GD Birla and his contribution in managementGD Birla and his contribution in management
GD Birla and his contribution in managementchhavia330
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMANIlamathiKannappan
 
Sales & Marketing Alignment: How to Synergize for Success
Sales & Marketing Alignment: How to Synergize for SuccessSales & Marketing Alignment: How to Synergize for Success
Sales & Marketing Alignment: How to Synergize for SuccessAggregage
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...Paul Menig
 
Cash Payment 9602870969 Escort Service in Udaipur Call Girls
Cash Payment 9602870969 Escort Service in Udaipur Call GirlsCash Payment 9602870969 Escort Service in Udaipur Call Girls
Cash Payment 9602870969 Escort Service in Udaipur Call GirlsApsara Of India
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...lizamodels9
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Serviceritikaroy0888
 

Kürzlich hochgeladen (20)

KestrelPro Flyer Japan IT Week 2024 (English)
KestrelPro Flyer Japan IT Week 2024 (English)KestrelPro Flyer Japan IT Week 2024 (English)
KestrelPro Flyer Japan IT Week 2024 (English)
 
Socio-economic-Impact-of-business-consumers-suppliers-and.pptx
Socio-economic-Impact-of-business-consumers-suppliers-and.pptxSocio-economic-Impact-of-business-consumers-suppliers-and.pptx
Socio-economic-Impact-of-business-consumers-suppliers-and.pptx
 
Tech Startup Growth Hacking 101 - Basics on Growth Marketing
Tech Startup Growth Hacking 101  - Basics on Growth MarketingTech Startup Growth Hacking 101  - Basics on Growth Marketing
Tech Startup Growth Hacking 101 - Basics on Growth Marketing
 
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130  Available With RoomVIP Kolkata Call Girl Howrah 👉 8250192130  Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Room
 
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature SetCreating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
 
BEST ✨ Call Girls In Indirapuram Ghaziabad ✔️ 9871031762 ✔️ Escorts Service...
BEST ✨ Call Girls In  Indirapuram Ghaziabad  ✔️ 9871031762 ✔️ Escorts Service...BEST ✨ Call Girls In  Indirapuram Ghaziabad  ✔️ 9871031762 ✔️ Escorts Service...
BEST ✨ Call Girls In Indirapuram Ghaziabad ✔️ 9871031762 ✔️ Escorts Service...
 
Monte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMMonte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSM
 
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service Jamshedpur
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service JamshedpurVIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service Jamshedpur
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service Jamshedpur
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptx
 
Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear Regression
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
 
GD Birla and his contribution in management
GD Birla and his contribution in managementGD Birla and his contribution in management
GD Birla and his contribution in management
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMAN
 
Sales & Marketing Alignment: How to Synergize for Success
Sales & Marketing Alignment: How to Synergize for SuccessSales & Marketing Alignment: How to Synergize for Success
Sales & Marketing Alignment: How to Synergize for Success
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...
 
Cash Payment 9602870969 Escort Service in Udaipur Call Girls
Cash Payment 9602870969 Escort Service in Udaipur Call GirlsCash Payment 9602870969 Escort Service in Udaipur Call Girls
Cash Payment 9602870969 Escort Service in Udaipur Call Girls
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Service
 

Oracle

  • 1.  
  • 2. BPEL: Building Standards-Based Business Processes with Web Services Session id: 40024
  • 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>
  • 17.
  • 18.
  • 19. Partners in BPEL <partnerLinks> <partnerLink name=“customer&quot; serviceLinkType=“lns:purchasePLT” myRole=“purchaseService”/> <partnerLink name= “ inventoryChecker ” serviceLinkType= “ lns:inventoryPLT ” myRole=“inventoryRequestor” partnerRole=“inventoryService”/> <partnerLink name=“creditChecker” serviceLinkType=“lns:creditPLT” myRole=“creditRequestor” partnerRole=“creditService”/> </partnerLinks> <plt:partnerLinkType name= “ purchasePLT”> <plt:role name= “ purchaseService”> <plt:portType name= “ tns:purchasePT”/> </plt:role> </plt:partnerLinkType> Purchase Process WSDL: BPEL: <portType name= “ purchasePT”> < operation name = &quot; sendPurchase &quot; > </operation> </portType> Purchase Process PortType:
  • 20.
  • 21. Variables in BPEL <variables> <variable name=“PO” messageType=“lns:POMessage”/> <variable name=“Invoice” messageType=“lns:InvMessage”/> <variable name=“POFault” messageType=“lns:orderFaultType”/> </variables> <message name=“POMessage”> <part name=“customerInfo” type=“sns:customerInfo”/> <part name=“purchaseOrder” type=“sns:purchaseOrder”/> </message> <message name=&quot;InvMessage&quot;> <part name=“IVC” type=“sns:Invoice”/> </message> <message name=“orderFaultType”> <part name=“problemInfo” type=“xsd:string”/> </message> Purchase Process WSDL: BPEL:
  • 22.
  • 23.
  • 24. Simple Activities Combined with Structured Activities Invoke <InventoryService> Invoke <CreditService> Reply <Invoice> Receive <PO> <sequence> <flow> </sequence>
  • 25. Sample Activities in BPEL <sequence> <receive partnerLink=“customer” portType=“lns:purchaseOrderPT&quot; operation=“sendPurchaseOrder” variable=“PO” createInstance=&quot;yes&quot; /> <flow> <invoke partnerLink=“inventoryChecker” portType=“lns:inventoryPT” operation=&quot;checkINV&quot; inputVariable=&quot;inventoryRequest&quot; outputVariable=&quot;inventoryResponse&quot; /> <invoke partnerLink=&quot;creditChecker&quot; portType=“lns:creditPT&quot; operation=&quot;checkCRED&quot; inputVariable=&quot;creditRequest&quot; outputVariable=&quot;creditResponse&quot; /> </flow> ... <reply partnerLink=“customer” portType=“lns:purchaseOrderPT” operation=“sendPurchaseOrder” variable=“invoice&quot;/> </sequence>
  • 26. Links – Control Flow <flow> <links> <link name=&quot;XtoY&quot;/> <link name=&quot;CtoD&quot;/> </links> <sequence name=&quot;X&quot;> <source linkName=&quot;XtoY&quot;/> <invoke name=&quot;A&quot; .../> <invoke name=&quot;B&quot; .../> </sequence> <sequence name&quot;Y&quot;> <target linkName=&quot;XtoY&quot;/> <receive name=&quot;C&quot;/> <source linkName=&quot;CtoD&quot;/> </receive> <invoke name=&quot;E&quot; .../> </sequence> <invoke partnerLink=&quot;D&quot;> <target linkName=&quot;CtoD&quot;/> </invoke> </flow> <flow> </flow> <Y> <X> <link CtoD> <link XtoY> <C> <E> <A> <B> <D>
  • 27.
  • 28. Correlations in BPEL <correlationSets> <correlationSet name= &quot; POCorr &quot; properties=&quot;cor:custId cor:ordId&quot;/> <correlationSet name= &quot; InvoiceCorr &quot; properties= &quot; cor:vendId cor:invId &quot; /> </correlationSets> ... <receive partnerLink=“Customer” portType= &quot; SP:PurchaseOrderPT &quot; operation= &quot; AsynchPurchase &quot; variable= &quot; PO &quot; > <correlations> <correlation set= &quot; POCorr &quot; initiate= &quot; yes &quot; > </correlations> </receive> ... <invoke partnerLink=“Customer” portType= &quot; SP:CustomerPT &quot; operation= “ ProcessPurchaseResponse &quot; inputVariable= &quot; POResponse &quot; > <correlations> <correlation set= &quot; POCorr &quot; initiate= &quot; no &quot; pattern= &quot; out &quot; > <correlation set= &quot; InvoiceCorr &quot; initiate= &quot; yes &quot; pattern= &quot; out &quot; > </correlations> </invoke> ...
  • 29.
  • 30.
  • 31. Compensation Handlers in BPEL <scope> <compensationHandler> <invoke partnerLink= &quot; Seller &quot; portType= &quot; SP:Purchasing &quot; operation= &quot; CancelPurchase &quot; inputVariable=&quot;getResponse&quot; outputVariable=&quot;getConfirmation&quot;> <correlations> <correlation set=&quot;PurchaseOrder&quot; pattern=&quot;out&quot;/> </correlations> </invoke> </compensationHandler> <invoke partnerLink=&quot;Seller&quot; portType=&quot;SP:Purchasing&quot; operation=&quot;SyncPurchase&quot; inputVariable=&quot;sendPO&quot; outputVariable=&quot;getResponse&quot;> <correlations> <correlation set=&quot;PurchaseOrder&quot; initiate=“yes” pattern=&quot;out&quot;/> </correlations> </invoke> </scope>
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.