Escolar Documentos
Profissional Documentos
Cultura Documentos
Topics
Introduction Composite Services Orchestration vs. Choreography Standards in Orchestration Use Case Summary
Introduction
SDIs facilitated the distribution, access, & use of
Geo-information
Chained Services
No single service can possibly satisfy every user's
requirements For more complicated tasks, users need services that are chained together Service Chains:
Sequence is determined & coordinated In adjacent: occurrence of first is necessary for the second
How to Chain
Orchestration Choreography
Orchestration
Orchestration
Choreography
Choreography
How to Chain
Orchestration
Involves a central entity that conducts the participating services The services involved are oblivious of their participation Only the 'orchestrator' is aware of the process that is going on. Choreography No central orchestrator Participant services are aware of the other services to interoperate with, and when to perform their tasks
Orchestration vs Choreography
Orchestration
One of the services controls other services.
Choreography
Multiple services work together without a clear "Master". WSCI
BPEL4WS
10
Orchestration vs Choreography
Orchestration
One of the services controls other services.
Choreography
Multiple services work together without a clear "Master". WSCI
BPEL4WS
11
BPEL4WS - Definition
Business Process Execution Language For Web
Services.
12
BPEL4WS - Syntax
Functionality Variable definition Variable Assignment Web Service calling Recieve petition Structured Programming Batch Processing Parallel Processing Exception handling BPEL4WS tag <variables> <assign> <invoke> <recieve> <if> <then> <else> <while> <switch> <sequence> <flow> <FaultHandler>
13
14
15
4. 5. 6.
7.
8. 9. 10. 11.
12. 13.
<process name="RestaurantsRoute" (...)> <partnerLinks> <!-- [CODE] Partner Links--></partnerLinks> <variables> <!-- [CODE] Definition of variables to use--> </variables> <sequence> <!-- Recieve Petition --> <receive partnerLink="client" (...) /> <assign> <copy> <from variable="inputparamaters" part="lat"/> <to variable="ws1INPUT" part="lat"/> </copy> (...) </assign> <!-- sequence of invocations--> <invoke partnerLink="WS1-geocodin" (...) /> <invoke partnerLink="WS2-POI-Listing" (...) /> <invoke partnerLink="WS3-Routing" (...) /> <!-- [CODE] assign all the results to responsedata--> <reply partner=client (...) operation=response container=responsedata/> </sequence> </process> 16
Implementations BPEL4WS
Open Source Apache ODE jBPM OW2 Orchestra Petals BPEL Engine Proprietary Active VOS BizTalk iBolt Parasoft BPEL Maestro
(...)
17
Summary
Composite Services are needed for more complex tasks Chaining can be done either by Orchestration or
Choreography Orchestration offers some advantages primarily due to its centralized set-up Standards are available
17
Thanks
Further References
Albreshne, A., Fuhrer, P., & Paquier, J. (2009). Web services orchestration and composition: Case study of web services composition A working paper. http://diuf.unifr.ch/drupal/softeng/sites/diuf.unifr.ch.drupal. softeng/files/file/publications/internal/WP09-03.pdf. Business Process Execution Language for Web Services 1.1 http://download.boulder.ibm.com/ibmdl/pub/software/dw/specs/ws-bpel/ws-bpel.pdf Daniel, F. & Pernici, B. (2006). Insights into Web Service Orchestration and Choreography. International Journal of E-Business Research, 2(1), 58-77. Juric, M. A hands-on introduction to BPEL. htttp://www.oracle.com/technetwork/articles/matjaz-bpel1-090575.html. Percival, G. (2002). ISO 19119 and OGC service architecture, FIG XXII International Congress Washington, D.C. USA (April 1926 2002) Peltz, C. (2003). Web services orchestration - A review of emerging technologies, tools, and standards. Hewlett Packard, Co. W3C. Web service choreography interface (WSCI) 1.0. W3C Note 8 August 2002. http://www.w3.org/TR/wsci/.