Describing and reasoning on Web services using process algebra

We argue that essential facets of Web services, and especially those useful to understand their interaction, can be described using process-algebraic notations. Web service description and execution languages such as BPEL are essentially process description languages; they are based on primitives for behaviour description and message exchange which can also be found in more abstract process algebras. One legitimate question is therefore whether the formal approach and the sophisticated tools introduced for process algebra can be used to improve the effectiveness and the reliability of Web service development. Our investigations suggest a positive answer, and we claim that process algebras provide a very complete and satisfactory assistance to the whole process of Web service development. We show on a case study that readily available tools based on process algebra are effective at verifying that Web services conform to their requirements and respect properties. We advocate their use both at the design stage and for reverse engineering issues. More prospectively, we discuss how they can be helpful to tackle choreography issues.

[1]  Thomas A. Henzinger,et al.  Interface automata , 2001, ESEC/FSE-9.

[2]  Tran Cao Son,et al.  Adapting Golog for Composition of Semantic Web Services , 2002, KR.

[3]  Jim Davies,et al.  Timed CSP: Theory and Practice , 1991, REX Workshop.

[4]  Sheila A. McIlraith,et al.  Analysis and simulation of Web services , 2003, Comput. Networks.

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

[6]  Stephan Merz,et al.  Model Checking , 2000 .

[7]  Rob van Glabbeek,et al.  Handbook of Process Algebra , 2001 .

[8]  Mirko Viroli,et al.  Towards a Formal Foundation to Orchestration Languages , 2004, WSFM.

[9]  Boualem Benatallah,et al.  A Petri Net-based Model for Web Service Composition , 2003, ADC.

[10]  Shin Nakajima,et al.  Model-Checking Verification for Reliable Web Service , 2002 .

[11]  Marco Pistore,et al.  Requirements-Driven Verification of Web Services , 2004, Electron. Notes Theor. Comput. Sci..

[12]  Alin Deutsch,et al.  Specification and verification of data-driven web services , 2004, PODS.

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

[14]  Michael J. Butler,et al.  Tool Support for Visualizing CSP in UML , 2002, ICFEM.

[15]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[16]  Xiang Fu,et al.  Analysis of interacting BPEL web services , 2004, WWW '04.

[17]  Jerry R. Hobbs,et al.  DAML-S: Web Service Description for the Semantic Web , 2002, SEMWEB.

[18]  Diego Calvanese,et al.  Automatic Composition of E-services That Export Their Behavior , 2003, ICSOC.

[19]  Frank Leymann,et al.  Managing Business Processes via Workflow Technology , 2001, VLDB.

[20]  Sebastián Uchitel,et al.  Model-based verification of Web service compositions , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[21]  Tommaso Bolognesi,et al.  Tableau methods to describe strong bisimilarity on LOTOS processes involving pure interleaving and enabling , 1994, FORTE.

[22]  Marco Aiello,et al.  Planning and monitoring the execution of web service requests , 2003, International Journal on Digital Libraries.

[23]  Jianwen Su,et al.  E-services: a look behind the curtain , 2003, PODS.

[24]  Zohar Manna,et al.  Temporal verification of reactive systems - safety , 1995 .

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

[26]  Vianey Villamizar An Introduction to the Calculus , 1926, Nature.

[27]  S. Krishnan,et al.  2 XLANG : Web Services for Business Process Design , 2002 .

[28]  Gwen Salaün,et al.  Negotiation Among Web Services Using LOTOS/CADP , 2004, ECOWS.

[29]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[30]  Massimo Mecella,et al.  When are Two Web Services Compatible? , 2004, TES.

[31]  Ahmed K. Elmagarmid,et al.  Composing Web services on the Semantic Web , 2003, The VLDB Journal.