Model-Checking of Web Services Choreography

Web services choreography describes the global model of service interactions among a set of participants. In order to achieve a common business goal, the protocols of interaction must be correct. In this paper, we model interactions with recordings of state/channel variable changes that can occur as a result of carrying out the interactions. Thus, it is possible to verify not only normal control flow properties such as deadlock-freeness, but also channel-passing related problems such as channel-absence. Concretely, we propose a small language CDL, together with an operational semantics. We illustrate with a T-Shirts procurement protocol how service choreographies can be specified in CDL, and how the verification can be carried out using the SPIN model-checker.

[1]  Roberto Gorrieri,et al.  Choreography and Orchestration: A Synergic Approach for System Design , 2005, ICSOC.

[2]  Jing Li,et al.  Towards the Semantics for Web Service Choreography Description Language , 2006, ICFEM.

[3]  Mario Bravetti,et al.  Towards a Unifying Theory for Choreography Conformance and Contract Compliance , 2007, SC@ETAPS.

[4]  Chao Cai,et al.  Towards the theoretical foundation of choreography , 2007, WWW '07.

[5]  Xiang Fu,et al.  Conversation protocols: a formalism for specification and verification of reactive electronic services , 2003, Theor. Comput. Sci..

[6]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[7]  Wil M. P. van der Aalst,et al.  Choreography Conformance Checking: An Approach based on BPEL and Petri Nets , 2005, The Role of Business Processes in Service Oriented Architectures.

[8]  Marlon Dumas,et al.  Service Interaction Patterns , 2005, Business Process Management.

[9]  Gerard J. Holzmann,et al.  The SPIN Model Checker - primer and reference manual , 2003 .

[10]  Alberto Martelli,et al.  Verifying the Conformance of Web Services to Global Interaction Protocols: A First Step , 2005, EPEW/WS-FM.

[11]  Matjaz B. Juric,et al.  Business process execution language for web services , 2004 .

[12]  Marlon Dumas,et al.  Service Interaction Modeling: Bridging Global and Local Views , 2006, 2006 10th IEEE International Enterprise Distributed Object Computing Conference (EDOC'06).

[13]  Roberto Gorrieri,et al.  Reasoning About Interaction Patterns in Choreography , 2005, EPEW/WS-FM.

[14]  Marlon Dumas,et al.  Let's Dance: A Language for Service Behavior Modeling , 2006, OTM Conferences.

[15]  Yang Hongli,et al.  Reasoning about Channel Passing in Choreography , 2008, 2008 2nd IFIP/IEEE International Symposium on Theoretical Aspects of Software Engineering.

[16]  Antonio Vallecillo,et al.  Formalizing Web Service Choreographies , 2004, Electron. Notes Theor. Comput. Sci..

[17]  Jing Li,et al.  Modeling and Verifying Web Services Choreography Using Process Algebra , 2007, 31st IEEE Software Engineering Workshop (SEW 2007).

[18]  Mathias Weske,et al.  Formalizing Service Interactions , 2006, Business Process Management.

[19]  Sebastián Uchitel,et al.  Model-Based Analysis of Obligations in Web Service Choreography , 2006, Advanced Int'l Conference on Telecommunications and Int'l Conference on Internet and Web Applications and Services (AICT-ICIW'06).

[20]  R. Milner,et al.  A Theoretical Basis of Communication-Centred Concurrent Programming , 2005 .

[21]  Roberto Gorrieri,et al.  Towards a formal framework for choreography , 2005, 14th IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprise (WETICE'05).

[22]  Mathias Weske,et al.  Local Enforceability in Interaction Petri Nets , 2007, BPM.