Process algebraic support for web service composition

Web services technology provides a platform on which we can develop distributed services. The interoperability among these services is achieved by various standard protocols. In recent years, several researches suggested that process algebras provide a satisfactory assistance to the whole process of web services development. Business transactions, on the other hand, involve the coordination and interaction between multiple partners. With the emergence of web services, business transactions are conducted using these services. The coordination among the business processes is crucial, so is the handling of faults that can arise at any stage of a transaction. Compensation is an error recovery mechanism to handle faults in business transactions. Compensating CSP (cCSP) is a language defined to model business transactions within the framework of standard CSP process algebra. The language defines a transaction as a process and has the constructs for orchestration of compensations. In this short note, we report a case study showing how cCSP can be used to model business transactions. We also show a mechanical verification technique to verify theoretical properties of the language

[1]  Roberto Bruni,et al.  Theoretical foundations for compensations in flow composition languages , 2005, POPL '05.

[2]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[3]  C. A. R. Hoare,et al.  Unifying theories of programming , 1998, RelMiCS.

[4]  Introduction to UDDI: Important Features and Functional Concepts , 2004 .

[5]  Kenneth J. Turner,et al.  Representing and analysing composed web services using Cress , 2007, J. Netw. Comput. Appl..

[6]  Tony Andrews Business Process Execution Language for Web Services Version 1.1 , 2003 .

[7]  C. Peltz,et al.  Web Services Orchestration and Choreography , 2003, Computer.

[8]  Kenneth J. Turner Formalising Web Services , 2005, FORTE.

[9]  Manuel Mazzara,et al.  A Framework for Generic Error Handling in Business Processes , 2004, Electron. Notes Theor. Comput. Sci..

[10]  Natarajan Shankar,et al.  PVS: A Prototype Verification System , 1992, CADE.

[11]  Cosimo Laneve,et al.  Foundations of Web Transactions , 2005, FoSSaCS.

[12]  Andreas Reuter,et al.  Transaction Processing: Concepts and Techniques , 1992 .

[13]  Mark C. Little,et al.  Transactions and Web services , 2003, CACM.

[14]  Greg Meredith,et al.  Contracts and types , 2003, CACM.

[15]  Rachid Guerraoui,et al.  An Equational Theory for Transactions , 2003, FSTTCS.

[16]  ROBIN MILNER,et al.  Edinburgh Research Explorer A Calculus of Mobile Processes, I , 2003 .

[17]  Andrew William Roscoe,et al.  The Theory and Practice of Concurrency , 1997 .

[18]  Andrea Ferrara,et al.  Web services: a process algebra approach , 2004, ICSOC '04.

[19]  Joachim Parrow,et al.  An introduction to the pi-calculus , 2001 .

[20]  Jim Woodcock,et al.  The Semantics of Circus , 2002, ZB.

[21]  Shamim Ripon,et al.  Executable Semantics for Compensating CSP , 2005, EPEW/WS-FM.

[22]  Laura Bocchi,et al.  A Calculus for Long-Running Transactions , 2003, FMOODS.

[23]  Joachim Parrow,et al.  An Introduction to the π-Calculus , 2001, Handbook of Process Algebra.

[24]  Gordon D. Plotkin,et al.  A structural approach to operational semantics , 2004, J. Log. Algebraic Methods Program..

[25]  C. A. R. Hoare,et al.  A Trace Semantics for Long-Running Transactions , 2004, 25 Years Communicating Sequential Processes.

[26]  Shamim Ripon,et al.  PVS Embedding of cCSP Semantic Models and Their Relationship , 2009, AVoCS.

[27]  Shamim Ripon,et al.  Extending and relating semantic models of compensating CSP , 2008 .

[28]  Michael J. Butler,et al.  Combining CSP and B for Specification and Property Verification , 2005, FM.

[29]  Martin Berger,et al.  The Two-Phase Commitment Protocol in an Extended pi-Calculus , 2003, EXPRESS.

[30]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[31]  Sanjiva Weerawarana,et al.  Unraveling the Web services web: an introduction to SOAP, WSDL, and UDDI , 2002, IEEE Internet Computing.

[32]  Jifeng He,et al.  From Operational Semantics to Denotational Semantics for Verilog , 2001, CHARME.

[33]  Michael J. Butler,et al.  A Process Compensation Language , 2000, IFM.

[34]  Roberto Bruni,et al.  Orchestrating Transactions in Join Calculus , 2002, CONCUR.

[35]  Gwen Salaün,et al.  Describing and reasoning on Web services using process algebra , 2004, Proceedings. IEEE International Conference on Web Services, 2004..

[36]  Cédric Fournet,et al.  The reflexive CHAM and the join-calculus , 1996, POPL '96.

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

[38]  Steve A. Schneider,et al.  An Operational Semantics for Timed CSP , 1995, Inf. Comput..