Upload
dominick-wilkerson
View
213
Download
0
Tags:
Embed Size (px)
Citation preview
A Survey on Service Composition Languages and Models
Antonio BucchiaroneAntonio Bucchiarone and Stefania GnesiIstituto di Scienza e Tecnologie dell’Informazione
”A. Faedo” (ISTI - CNR)Area della Ricerca CNR di Pisa, 56100 Pisa, Italy
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Agenda
Introduction Current Models
Web Services and Semantic Web Services Static and Dynamic Composition
A comparison of Current Languages Service Composition Requirements High-level key features of BPEL4WS, BPML, WSCI,
WS-CDL and DAML-S
Conclusions and Future Work
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Introduction Composition of Services (B2B and EAI)
Business world
XML-based standards to formalize the specification of WS
Composition of WSs
Execution of WSs
Semantic Web Community
Web resources (RDF), description and relationships
Preconditions and effects described by terms precisely defined in ontologies
Models of Services Composition
Static and Dynamic
Languages
BPEL4WS, BPML, WSCI, WS-CDL, DAML-S
Comparison by considering some specific requirements
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
The environment Service Oriented Computing (SOC)
autonomous and heterogeneous computational entities, that run on different platforms
are owned by different organizations
are described, published and discovered
are combined using an engine that coordinates the interaction among collaborative services
Web Services and Semantic Web Services
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Web Services
Web Service
XML-based open standard
Heterogeneousplatforms
Application Integration
Composition
IBM’s WSFL Microsoft XLANG
BPEL4WS
WS-CDL
Dynamic Composition
• these WS standards do not deal with the dynamic composition of existing services
• total absence of semantic representation for services available on the internet.
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Semantic Web Services
Extension of the current web technologies
Information with a well-defined meaning
Markup language with a well-defined semantics
Fully automation of all the stages in the WS lifecycle
WWW as a globally linked database where web pages are marked with semantic annotations
Ontologies to formalize domain concepts that are shared among services
DAML-S
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Static CompositionStatic
Composition
Orchestration Choreography
It specifies
• the order in which services are invoked
• the conditions under which a certain service may not to be invoked
• combines available services adding a central coordinator (orchestrator) responsible for invoking and combining the single sub-activities.
• it defines complex tasks via the definition of the conversation that should be undertaken by each participant.
BPEL4WS
WS-CDL
BPML
WSCI
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Dynamic Composition
Dynamic Composition
Semantic Composition
• static composition: flow of information and the binding between services are known a priori
• compose service dynamically
• semantic web technology : RDF + Ontologies
DAML-S
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Some Requirements
• We compare BPEL4WS, BPML, WSCI, WS-CDL and DAML-S according to the following requirements:
• Modeling collaborations
• Modeling the control of execution
• Representation of Roles
• Transactions and Compensations
• Exception handling
• Semantic Support
• Business agreement support
• Software vendor support
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Collaboration and Execution
The ability to perform long-lived, p2p collaboration between participating services.
Collaboration should be modeled in terms of interactions (i.e., message exchanges).
The ability of assembling and incorporating individual WSs into the course of a business process execution
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Representation of Role
Parties involved in business processes play different roles in different process stages.
Behavior assumed by parties in different scenarios.
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Transactions and Compensations
The ability of managing transactions and compensations over service invocations
Compensations are needed to rollback the effects of completed transactions when there is a failure.
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Exceptions handling
The composition of WSs uses external WSs that are purely under the control of the WSs owner.
Process invocation should handle exceptions when the invoked WSs do not respond.
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Semantic support
Representation of the semantics of composed services to facilitate the automated composition of WSs
Description of the semantics to enable dynamic service discovery and invocation.
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Business agreement support
Business agreement defines the contract between involved parties.
It is necessary to represent QoS in composed WSs.
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Software vendor support
Whether the language has software support.
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
BPEL4WS key features Partner links to model p2p collaboration “myRole” and “PartnerRole”: the only means for giving a
name to the roles Transactions are realized through fault and
compensation handlers A Fault Handler is used to catch an error. No semantic No business agreement support Many tools available
IBM WebSphere, Oracle BPEL Process Manager, Microsoft BizTalk, etc..)
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
BPML key features basic activities for sending, receiving, and invoking
services It handles conditional, sequential, and parallel activities No Role representation! Support for persistence in long-running processes Robust exception handling mechanisms No automation support! Services and partners are
specified at design time No support for business agreement Few tools available
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
WSCI key features Defines overall choreography of WS taking part in
an interaction It does not focus on the definition of executable
business processes Based on messages Role of Composition Partners Support for business transactions and exceptions Exceptional behaviour
Alternative patterns of behaviour No support for Semantic description or Business
agreement. Few tools
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
WS-CDL key features Global view of the observable behavior of a set of Web
Services p2p collaboration between participants using
Choreography No support for execution Roles, Participants and Relationships Finalizer Block is used for handling transactions and
compensations Exception Blocks catch faults No support for Semantic description or Business
agreement. No tools.
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
DAML-S key features
A DARPA Agent Markup Language for Services
Web Service Discovery & Selection Find an airline offerings flights to Rome
Web Service Invocation Book flight tickets on Alitalia to arrive 13th June
Web Service Composition & Interoperation Arrange taxis, flights and hotel to travel from Rome to Palermo
Monitoring Web Service Execution Has the taxi to Palermo Airport been reserved?
Tools availability (Academy and Industry) DAML+OIL reasoners DAML-S editors
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
DAML-S Upper Ontology
. input types
. output types
. preconditions
. postconditions
. communication protocol (RPC, HTTP, …). port number. marshalling/serialization
• process flow• composition hierarchy• process definitions
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Summary
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Conclusion Initial results and much more details must be described An overview of major Web and Semantic Web Services
composition languages BPEL4WS, WSCI, WS-CDL and BPML focus on service
syntax Definition of a new process that interact with existing one
must be done manually hard, time consuming and error prone task
DAML-S: description of the semantics of services Automation of WSs tasks
Discovery and composition
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Future Work We wish to extend the comparison with more details
Tool support, messaging models supported, examples, etc..
QoS characteristics that each language is able to describe in order to define a QoS Service Composition.
Correctness Verification of service composition BPEL4WS automata or Petri Nets DAML-S Petri Nets or Prolog …..
A Survey on Service Composition Approaches: From Industrial Standards to Formal Methods (submitted to WS-FM06 workshop).
Automata, Petri Nets, Process Algebras
Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006
Thank you for your attention
Good lunch!!