26
A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione ”A. Faedo” (ISTI - CNR) Area della Ricerca CNR di Pisa, 56100 Pisa, Italy [email protected]

A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

Embed Size (px)

Citation preview

Page 1: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

[email protected]

Page 2: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 3: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 4: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 5: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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.

Page 6: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 7: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 8: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 9: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 10: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 11: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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.

Page 12: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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.

Page 13: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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.

Page 14: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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.

Page 15: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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.

Page 16: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006

Software vendor support

Whether the language has software support.

Page 17: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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..)

Page 18: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 19: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 20: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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.

Page 21: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 22: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 23: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006

Summary

Page 24: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 25: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

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

Page 26: A Survey on Service Composition Languages and Models Antonio Bucchiarone Antonio Bucchiarone and Stefania Gnesi Istituto di Scienza e Tecnologie dell’Informazione

Antonio Bucchiarone WsMaTe ’06 - Palermo, 9 June 2006

Thank you for your attention

Good lunch!!

[email protected]