Using π-calculus for Formal Modeling and Verification of WS-CDL Choreographies

Service-Oriented applications are realized by composing and aggregating existing web services. Orchestration and Choreography are two interaction models for building SOA applications and several standards exist to capture and describe such interactions. The Web Service Choreography Description Language (WS-CDL) is a standard for modeling choreographies. In this paper, we propose a calculus (Chor-calculus) for formal modeling of WS-CDL and we use this language for generating WS-CDL programs. This approach enables the static verification of choreographies using existing pi-calculus model-checker tools and sets the ground for enabling the runtime monitoring of choreographies for behavioral correctness. We validate the calculus for its expressiveness by evaluating the language support for representing workflow, and service interaction, patterns. We demonstrate the use of the HAL toolkit to verify the correctness properties of choreographies.

[1]  Manuel Mazzara,et al.  Towards Abstractions for Web Services Composition , 2006 .

[2]  Takeo Kanade,et al.  Web Services and Formal Methods , 2012, Lecture Notes in Computer Science.

[3]  Francisco Curbera,et al.  Web services description language (wsdl) version 1. 2 , 2001 .

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

[5]  Erik Christensen,et al.  WSDL: Web Service Description Language , 2001 .

[6]  Francisco Curbera,et al.  Web Services Business Process Execution Language Version 2.0 , 2007 .

[7]  Marco Pistore,et al.  An Automated Based Verification Environment for Mobile Processes , 1997, TACAS.

[8]  Wei-Tek Tsai,et al.  Service-oriented system engineering: a new paradigm , 2005, IEEE International Workshop on Service-Oriented System Engineering (SOSE'05).

[9]  Hong Anh Le,et al.  Modeling and Verifying WS-CDL Using Event-B , 2012, ICCASA.

[10]  Terence Parr,et al.  The Definitive ANTLR 4 Reference , 2013 .

[11]  Jakob Rehof,et al.  A Behavioral Module System for the Pi-Calculus , 2001, SAS.

[12]  Geguang Pu,et al.  A Formal Model forWeb Service Choreography Description Language (WS-CDL) , 2006, 2006 IEEE International Conference on Web Services (ICWS'06).

[13]  Roberto Chinnici,et al.  Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language , 2007 .

[14]  MengChu Zhou,et al.  Modeling Service Compatibility with Pi-calculus for Choreography , 2006, ER.

[15]  T. D. Fletcher,et al.  Web Services Choreography Description Language Version 1.0, W3C , 2004 .

[16]  Claudio Guidi,et al.  Formalizing languages for service oriented computing , 2007 .

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

[18]  Hagen Overdick,et al.  On the Suitability of WS-CDL for Choreography Modeling , 2006, EMISA.

[19]  John Mullins,et al.  A Calculus for Generation, Verification and Refinement of BPEL Specifications , 2008, Electron. Notes Theor. Comput. Sci..

[20]  Antonio Bucchiarone,et al.  Web Service Composition Approaches: From Industrial Standards to Formal Methods , 2007, Second International Conference on Internet and Web Applications and Services (ICIW'07).

[21]  Manuel Mazzara,et al.  A pi-calculus based semantics for WS-BPEL , 2007, J. Log. Algebraic Methods Program..

[22]  Niels Lohmann,et al.  A Feature-Complete Petri Net Semantics for WS-BPEL 2.0 , 2007, WS-FM.

[23]  Ivan Lanese,et al.  Bridging the Gap between Interaction- and Process-Oriented Choreographies , 2008, 2008 Sixth IEEE International Conference on Software Engineering and Formal Methods.

[24]  Manuel Mazzara,et al.  A Formal Semantics for the WS-BPEL Recovery Framework - The pi-Calculus Way , 2009, WS-FM.

[25]  Wil M. P. van der Aalst,et al.  Workflow Patterns , 2004, Distributed and Parallel Databases.

[26]  Robin Milner,et al.  Communicating and mobile systems - the Pi-calculus , 1999 .

[27]  Manuel Mazzara,et al.  Towards a formal analysis of dynamic reconfiguration in WS-BPEL , 2013, Intell. Decis. Technol..

[28]  Yaron Goland,et al.  Web Services Business Process Execution Language , 2009, Encyclopedia of Database Systems.

[29]  Thomas Erl,et al.  SOA Design Patterns , 2008 .

[30]  Jeremy Gibbons,et al.  A Process-Algebraic Approach to Workflow Specification and Refinement , 2007, SC@ETAPS.

[31]  Terence John Parr,et al.  ANother Tool for Language Recognition , 2005 .

[32]  Marco Pistore,et al.  A model-checking verification environment for mobile processes , 2003, TSEM.

[33]  Nobuko Yoshida,et al.  Structured Communication-Centred Programming for Web Services , 2007, ESOP.

[34]  Marco Carbone,et al.  Session-based Choreography with Exceptions , 2009, PLACES@DisCoTec.