A Model Checking Approach to Verify BPEL4WS Workflows
2007, IEEE International Conference on Service-Oriented Computing and Applications (SOCA '07)
Abstract
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.
References (33)
- T. Andrews, F. Curbera, H. Dholakia, Y. Goland, J. Klein, F. Leymann, K. Liu, D. Roller, D. Smith, S. Thatte, I. Trick- ovic, and S. Weerawarana. Business Process Execution Lan- guage for Web Services, Version 1.1. Technical report, OA- SIS, 2003-05-05 2003.
- T. Andrews, S. Qadeer, S. K. Rajamani, and Y. Xie. Zing: Exploiting program structure for model checking concurrent software. In P. Gardner and N. Yoshida, editors, CONCUR 2004 -Concurrency Theory, 15th International Conference, Proceedings, volume 3170 of Lecture Notes in Computer Science, pages 1-15. Springer, 2004.
- A. Ankolekar. OWL-S Semantic Markup for Web Services, 2003. http://www.daml.org/services/owl-s/.
- J. Arias-Fisteus, L. S. Fernández, and C. D. Kloos. Formal Verification of BPEL4WS Business Collaborations. In E- Commerce and Web Technologies, 5th International Confer- ence, EC-Web 2004, Proceedings, volume 3182 of Lecture Notes in Computer Science, pages 76-85. Springer, 2004.
- L. Baresi, E. Di Nitto, and C. Ghezzi. Towards Open-World Software: Issues and Challenges. IEEE Computer, 39:36- 43, October 2006.
- L. Baresi, C. Ghezzi, and L. Mottola. Towards Fine-grained Automated Verification of Publish-Subscribe Architectures. In Proceedings of the 26th International Conference on Formal Methods for Networked and Distributed Systems (FORTE06), Paris, September 2006.
- L. Baresi and S. Guinea. Towards Dynamic Monitoring of WS-BPEL Processes. In B. Benatallah, F. Casati, and P. Traverso, editors, ICSOC, volume 3826 of Lecture Notes in Computer Science, pages 269-282. Springer, 2005.
- J. Bengtsson, K. G. Larsen, F. Larsson, P. Pettersson, and W. Yi. UPPAAL -a Tool Suite for Automatic Verification of Real-Time Systems. In Proc. of Workshop on Verifica- tion and Control of Hybrid Systems III, number 1066 in Lec- ture Notes in Computer Science, pages 232-243. Springer- Verlag, October 1995.
- E. M. Clarke, O. Grumberg, S. Jha, Y. Lu, and H. Veith. Counterexample-guided abstraction refinement. In CAV'00: Proceedings of the 12th International Conference on Com- puter Aided Verification, pages 154-169, London, UK, 2000. Springer-Verlag.
- E. M. Clarke, O. Grumberg, and D. A. Peled. Model check- ing. MIT Press, Cambridge, MA, USA, 1999.
- R. Cleaveland, J. Parrow, and B. Steffen. The concurrency workbench: A semantics-based tool for the verification of concurrent systems. ACM Transactions on Programming Languages and Systems, 15(1):36-72, January 1993.
- E. A. Emerson and A. P. Sistla. Symmetry and model check- ing. Formal Methods in System Design, 9(1-2):105-131, 1996.
- H. Foster, S. Uchitel, J. Magee, and J. Kramer. Model-based Verification of Web Service Compositions. In 18th IEEE In- ternational Conference on Automated Software Engineering (ASE 2003) , pages 152-163. IEEE Computer Society, 2003.
- X. Fu, T. Bultan, and J. Su. Analysis of interacting BPEL web services. In WWW '04: Proceedings of the 13th in- ternational conference on World Wide Web, pages 621-630, New York, NY, USA, 2004. ACM Press.
- X. Fu, T. Bultan, and J. Su. WSAT: A Tool for Formal Anal- ysis of Web Services. In Computer Aided Verification, 16th International Conference, CAV 2004, Proceedings, volume 3114 of Lecture Notes in Computer Science, pages 510-514. Springer, 2004.
- P. Godefroid. Using partial orders to improve automatic ver- ification methods. In CAV '90: Proceedings of the 2nd Inter- national Workshop on Computer Aided Verification, pages 176-185, London, UK, 1991. Springer-Verlag.
- S. Graf and H. Saidi. Construction of abstract state graphs with pvs. In CAV '97: Proceedings of the 9th International Conference on Computer Aided Verification, pages 72-83, London, UK, 1997. Springer-Verlag.
- C. L. Heitmeyer, R. D. Jeffords, and B. G. Labaw. A bench- mark for comparing different approaches for specifying and verifying real-time systems. In Proc. Tenth Intern. Work- shop on Real-Time Operating Systems and Software. IEEE Computer Society Press, may 1993.
- T. A. Henzinger, R. Jhala, R. Majumdar, and G. Sutre. Lazy abstraction. In Symposium on Principles of Programming Languages, pages 58-70, 2002.
- G. J. Holzmann. The model checker SPIN. Software Engi- neering, 23(5):279-295, 1997.
- H. Huang, W.-T. Tsai, R. Paul, and Y. Chen. Automated Model Checking and Testing for Composite Web Services. In 8th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC 2005), pages 300-307. IEEE Computer Society, 2005.
- M. Koshkina and F. van Breugel. Verification of Business Processes for Web Services. Technical Report CS-2003-11, York University -Department of Computer Science, 4700
- G. T. Leavens, A. L. Baker, and C. Ruby. JML: A no- tation for detailed design. In H. Kilov, B. Rumpe, and I. Simmonds, editors, Behavioral Specifications of Busi- nesses and Systems, pages 175-188. Kluwer Academic Pub- lishers, Boston, 1999.
- F. Leymann. Web Services Flow Language (WSFL) 1.1., 2001.
- S. Nakajima. Verification of Web Service Flows with model checking techniques. In CW '02: Proceedings of the First International Symposium on Cyber Worlds (CW'02), page 0378, Washington, DC, USA, 2002. IEEE Computer Soci- ety.
- S. Nakajima. Model-Checking Behavioral Specification of BPEL Applications. In Proceedings of the International Workshop on Web Languages and Formal Methods, WLFM 2005, 2005.
- F. Nielson, H. R. Nielson, and C. Hankin. Principles of Pro- gram Analysis. Springer-Verlag New York, Inc., Secaucus, NJ, USA, 1999.
- G. Puyz, Z. Xiangpengy, W. Shulingy, and Q. ZongyanyS. Towards the Semantics and Verification of BPEL4WS. In Proceedings of the International Workshop on Web Lan- guages and Formal Methods, WLFM 2005, 2005.
- Robby, M. B. Dwyer, and J. Hatcliff. Bogor: an extensible and highly-modular software model checking framework. In ESEC/FSE-11, pages 267-276, 2003.
- Robby, M. B. Dwyer, J. Hatcliff, and R. Iosif. Space- reduction strategies for model checking dynamic systems. In Proceeding of the 2003 Workshop on Software Model Check- ing, volume 89 of Electronic Notes in Theoretical Computer Science. Elsevier, July 2003.
- B.-H. Schlingloff, A. Martens, and K. Schmidt. Modeling and Model Checking Web Services. Electronic Notes in Theoretical Computer Science: Issue on Logic and Com- munication in Multi-Agent Systems, 126:3-26, March 2005.
- K. Schmidt. LoLA: A low level analyser. In M. Nielsen and D. Simpson, editors, Application and Theory of Petri Nets, 21st International Conference (ICATPN 2000), vol- ume 1825 of Lecture Notes in Computer Science, pages 465- 474. Springer-Verlag, June 2000.
- W3C. Web Services Description Language (WSDL) 1.1, 2003. http://www.w3.org/TR/wsdl.