Skip to main content

The Rely/Guarantee Approach to Verifying Concurrent BPEL Programs

  • Conference paper
Software Engineering and Formal Methods (SEFM 2012)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 7504))

Included in the following conference series:

Abstract

Web services have become more and more important in these years, and BPEL4WS (BPEL) is the OASIS standard for web services composition and orchestration. It contains several distinct features, including scope-based compensation and fault handling mechanism. This paper focuses on the verification of BPEL programs, especially the verification of concurrent BPEL programs. The rely/guarantee approach is applied. Firstly, we present the operational semantics for BPEL programs. Secondly we apply the rely/guarantee method in the design of the verification rules. The rules can handle the features of BPEL programs, including compensation, fault handling and concurrency. Finally, the whole proof system is proved to be sound based on our operational semantics.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Apt, K.R., Francez, N., de Roever, W.P.: A proof system for communicating sequential processes. ACM Trans. Program. Lang. Syst. 2(3), 359–385 (1980)

    Article  MATH  Google Scholar 

  2. Bruni, R., Ferrari, G.L., Melgratti, H.C., Montanari, U., Strollo, D., Tuosto, E.: From Theory to Practice in Transactional Composition of Web Services. In: Bravetti, M., Kloul, L., Zavattaro, G. (eds.) EPEW/WS-EM 2005. LNCS, vol. 3670, pp. 272–286. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  3. Bruni, R., Melgratti, H.C., Montanari, U.: Theoretical foundations for compensations in flow composition languages. In: Proc. POPL 2005, January 12-14, pp. 209–220. ACM, Long Beach (2005)

    Google Scholar 

  4. Butler, M.J., Ferreira, C.: An Operational Semantics for StAC, a Language for Modelling Long-Running Business Transactions. In: De Nicola, R., Ferrari, G.-L., Meredith, G. (eds.) COORDINATION 2004. LNCS, vol. 2949, pp. 87–104. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  5. Butler, M.J., Ferreira, C.: A Process Compensation Language. In: Grieskamp, W., Santen, T., Stoddart, B. (eds.) IFM 2000. LNCS, vol. 1945, pp. 61–76. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  6. Butler, M.J., Ferreira, C., Ng, M.Y.: Precise modelling of compensating business transactions and its application to BPEL. Journal of Universal Computer Science 11(5), 712–743 (2005)

    Google Scholar 

  7. Butler, M.J., Hoare, C.A.R., Ferreira, C.: A Trace Semantics for Long-Running Transactions. In: Abdallah, A.E., Jones, C.B., Sanders, J.W. (eds.) CSP25. LNCS, vol. 3525, pp. 133–150. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  8. Curbera, F., Goland, Y., Klein, J., Leymann, F., Roller, D., Thatte, S., Weerawarana, S.: Business Process Execution Language for Web Service (2003)

    Google Scholar 

  9. de Roever, W.-P., de Boer, F., Hannemann, U., Hooman, J., Lakhnech, Y., Zwiers, M.P.J.: Concurrency Verification: Introduction to Compositional and Noncompositional Methods. Cambridge University Press (2001)

    Google Scholar 

  10. Garcia-Molina, H., Salem, K.: Sagas. In: Proc. ACM SIGMOD International Conference on Management of Data, San Francisco, California, USA, May 27-29, pp. 249–259. ACM (1987)

    Google Scholar 

  11. He, J., Zhu, H., Pu, G.: A model for BPEL-like languages. Frontiers of Computer Science in China 1(1), 9–19 (2007)

    Article  Google Scholar 

  12. Jones, C.B.: Tentative steps toward a development method for interfering programs. ACM Trans. Program. Lang. Syst. 5(4), 596–619 (1983)

    Article  MATH  Google Scholar 

  13. Laneve, C., Zavattaro, G.: Web-Pi at Work. In: De Nicola, R., Sangiorgi, D. (eds.) TGC 2005. LNCS, vol. 3705, pp. 182–194. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  14. Lanotte, R., Maggiolo-Schettini, A., Milazzo, P., Troina, A.: Design and verification of long-running transactions in a timed framework. Science of Computer Programming 73(2-3), 76–94 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  15. Leymann, F.: Web Services Flow Language (WSFL 1.0). IBM (2001)

    Google Scholar 

  16. Luo, C., Qin, S., Qiu, Z.: Verifying BPEL-like programs with hoare logic. In: Proc. TASE 2008, pp. 151–158. IEEE Computer Society, Nanjing (2008)

    Google Scholar 

  17. Moss, J.: Nested Transactions: An Approach to Reliable Distributed Computing. PhD thesis, Department of Electrical Engineering and Computer Science. MIT (April 1981)

    Google Scholar 

  18. Owicki, S.S., Gries, D.: An axiomatic proof technique for parallel programs I. Acta Informatica 6, 319–340 (1976)

    Article  MathSciNet  MATH  Google Scholar 

  19. Qiu, Z., Wang, S.-L., Pu, G., Zhao, X.: Semantics of BPEL4WS-Like Fault and Compensation Handling. In: Fitzgerald, J.S., Hayes, I.J., Tarlecki, A. (eds.) FM 2005. LNCS, vol. 3582, pp. 350–365. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  20. Stølen, K.: A Method for the Development of Totally Correct Shared-State Parallel Programs. In: Groote, J.F., Baeten, J.C.M. (eds.) CONCUR 1991. LNCS, vol. 527, pp. 510–525. Springer, Heidelberg (1991)

    Chapter  Google Scholar 

  21. Thatte, S.: XLANG: Web Service for Business Process Design. Microsoft (2001)

    Google Scholar 

  22. Xu, Q., de Roever, W.P., He, J.: The rely-guarantee method for verifying shared variable concurrent programs. Formal Aspects of Computing 9(2), 149–174 (1997)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Zhu, H., Xu, Q., Ma, C., Qin, S., Qiu, Z. (2012). The Rely/Guarantee Approach to Verifying Concurrent BPEL Programs. In: Eleftherakis, G., Hinchey, M., Holcombe, M. (eds) Software Engineering and Formal Methods. SEFM 2012. Lecture Notes in Computer Science, vol 7504. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33826-7_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-33826-7_12

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-33825-0

  • Online ISBN: 978-3-642-33826-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics