A Model Checking Approach to Verify BPEL4WS Workflows

The increasing diffusion of service oriented computing in critical business transactions demands reliability and correctness of the workflow logic representing web service orchestrations. We present an approach for the formal verification of workflow-based compositions of web services, described in BPEL4WS. Workflow processes can be verified in isolation, assuming that the external services invoked are known only through their interface. It is also possible to verify that the actual composition of two or more processes behaves correctly. We can verify deadlock freedom, properties expressed as data-bound assertions written in WS-CoL, a specification language for web services, and LTL temporal properties. Our approach is based on the software model checker Bogor, whose language supports the modeling of all BPEL4WS constructs. We provide an empirical evaluation of our approach and we compare the results with other BPEL4WS model checking tools.

[1]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[2]  A. Prasad Sistla,et al.  Symmetry and model checking , 1993, Formal Methods Syst. Des..

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

[4]  Yichen Xie,et al.  Zing: Exploiting Program Structure for Model Checking Concurrent Software , 2004, CONCUR.

[5]  Jesús Arias-Fisteus,et al.  Formal Verification of BPEL 4 WS Business Collaborations , 2004 .

[6]  Thomas A. Henzinger,et al.  Lazy abstraction , 2002, POPL '02.

[7]  Wang Yi,et al.  UPPAAL - a Tool Suite for Automatic Verification of Real-Time Systems , 1996, Hybrid Systems.

[8]  Holger Schlingloff,et al.  Modeling and Model Checking Web Services , 2005, LCMAS.

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

[10]  S. Nakajima,et al.  Verification of Web service flows with model-checking techniques , 2002, First International Symposium on Cyber Worlds, 2002. Proceedings..

[11]  Luciano Baresi,et al.  Towards Dynamic Monitoring of WS-BPEL Processes , 2005, ICSOC.

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

[13]  Jerry R. Hobbs,et al.  DAML-S: Semantic Markup for Web Services , 2001, SWWS.

[14]  Constance L. Heitmeyer,et al.  A Benchmark for Comparing Different Approaches for Specifying and Verifying Real-Time Systems , 1993 .

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

[16]  Karsten Wolf,et al.  LoLA: A Low Level Analyser , 2000, ICATPN.

[17]  Rance Cleaveland,et al.  The concurrency workbench: a semantics-based tool for the verification of concurrent systems , 1993, TOPL.

[18]  Geguang Pu,et al.  Towards the Semantics and Verification of BPEL4WS , 2006, WLFM@FM.

[19]  Luciano Baresi,et al.  Towards Fine-Grained Automated Verification of Publish-Subscribe Architectures , 2006, FORTE.

[20]  Patrice Godefroid Using Partial Orders to Improve Automatic Verification Methods , 1990, CAV.

[21]  Shin Nakajima Model-Checking Behavioral Specification of BPEL Applications , 2006, Electron. Notes Theor. Comput. Sci..

[22]  Franck van Breugel,et al.  Verication of Business Processes for Web Services , 2003 .

[23]  Edmund M. Clarke,et al.  Counterexample-guided abstraction refinement , 2003, 10th International Symposium on Temporal Representation and Reasoning, 2003 and Fourth International Conference on Temporal Logic. Proceedings..

[24]  Xiang Fu,et al.  WSAT: A Tool for Formal Analysis of Web Services , 2004, CAV.

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

[26]  Luciano Baresi,et al.  Toward Open-World Software: Issue and Challenges , 2006, Computer.

[27]  Matthew B. Dwyer,et al.  Bogor: an extensible and highly-modular software model checking framework , 2003, ESEC/FSE-11.

[28]  Hassen Saïdi,et al.  Construction of Abstract State Graphs with PVS , 1997, CAV.

[29]  Carlos Delgado Kloos,et al.  Formal Verification of BPEL4WS Business Collaborations , 2004, EC-Web.

[30]  Flemming Nielson,et al.  Principles of Program Analysis , 1999, Springer Berlin Heidelberg.

[31]  Raymond A. Paul,et al.  Automated model checking and testing for composite Web services , 2005, Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'05).

[32]  Albert L. Baker,et al.  JML: A Notation for Detailed Design , 1999, Behavioral Specifications of Businesses and Systems.