Skip to main content
Log in

Model-checking web services business activity protocols

  • TACAS 2011
  • Published:
International Journal on Software Tools for Technology Transfer Aims and scope Submit manuscript

Abstract

Web services business activity (WS-BA) specification defines two coordination protocols BAwCC (Business Agreement with Coordination Completion) and BAwPC (Business Agreement with Participant Completion) that ensure a consistent agreement on the outcome of long-running distributed applications. To verify fundamental properties of the protocols, we provide formal analyses in the model checker Uppaal. Our analyses are supported by a newly developed tool chain, where in the first step we translate tables with state-transition protocol descriptions into an intermediate XML format, and in the second step we translate this format into a network of communicating state machines directly suitable for verification in Uppaal. Our results show that the WS-BA protocols, as described in the standard specification, violate correct operation by reaching invalid states for all underlying communication media except for a perfect FIFO. Hence, we propose changes to the protocols and a further investigation of the modified protocols suggests that in case of the BAwCC protocol, messages should be received in the same order as they are sent to preserve correct behaviour, while BAwPC is now correct even for asynchronous, unordered, lossy and duplicating media. Another important property of communication protocols is that all parties always reach, under certain fairness assumptions, their final states. Based on an automatic verification with different communication models, we prove that our enhanced protocols satisfy this property whereas the original protocols do not. All verification results presented in this article were performed in a fully automatic way using our new tool csv2uppaal.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Afek Y., Attiya H., Fekete A., Fischer M., Lynch N., Mansour Y., Wang D.-W., Zuck L.: Reliable communication over unreliable channels. J. ACM 41(6), 1267–1297 (1994)

    Article  MathSciNet  Google Scholar 

  2. Apt K.R., Francez N., Katz S.: Appraising fairness in languages for distributed programming. Distrib. Comput. 2, 226–241 (1988)

    Article  MATH  Google Scholar 

  3. Barghouti N., Nounou N., Yemini Y.: An integrated protocol development environment. In: Protocol Specification Testing and Verification VI, pp. 63–69. North-Holland, Amsterdam (1987)

  4. Behrmann G., David A., Larsen K.G.: A tutorial on UPPAAL. In: Proceedings of the 4th International School on Formal Methods for the Design of Computer, Communication, and Software Systems (SFM-RT’04). LNCS, vol. 3185, pp. 200–236. Springer, Berlin (2004)

  5. Brand D., Zafiropulo P.: On communicating finite-state machines. J. ACM 30(2), 323–342 (1983)

    Article  MathSciNet  MATH  Google Scholar 

  6. Finkel A.: Decidability of the termination problem for completely specified protocols. Distrib. Comput. 7, 129–135 (1994)

    Article  Google Scholar 

  7. Gray J., Reuter A.: Transaction Processing: Concepts and Techniques. Morgan Kaufmann, Menlo Park (1993)

    MATH  Google Scholar 

  8. Greenfield P., Kuo D., Nepal S., Fekete A.: Consistency for web services applications. In: VLDB ’05: proceedings of the 31st international conference on very large data bases, pp. 1199–1203. VLDB Endowment (2005)

  9. Johnson J.E., Langworthy D.E., Lamport L., Vogt F.H.: Formal specification of a web services protocol. J. Logic. Algebraic Program. 70(1), 34–52 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  10. Lamport L.: Specifying Systems. Addison-Wesley, Reading (2003)

    Google Scholar 

  11. Lohmann N.: Communication models for services. In: Proceedings of ZEUS’10, vol. 563 of CEUR Workshop Proceedings, pp. 9–16. CEUR-WS.org (2010)

  12. Marques A.P. Jr., Ravn A.P., Srba J., Vighio S.: Tool supported analysis of web services protocols. In: Proceedings of the 5th International Workshop of Harnessing Theories for Tool Support in Software (TTSS’11), pp. 50–64 (2011)

  13. Marques A.P., Ravn A.P., Srba J., Vighio S.: The tool csv2uppaal. http://csv2uppaal.github.com/csv2uppaal/. Accessed 6 April 2012

  14. Mathew B., Juric M., Sarang P.: Business Process Execution Language for Web Services, 2nd edn. Packt Publishing, Birmingham (2006)

    Google Scholar 

  15. Naumovich G.N., Clarke L.A., Osterweil L.J.: Verification of communication protocols using data flow analysis. SIGSOFT Softw. Eng. Notes 21, 93–105 (1996)

    Article  Google Scholar 

  16. Newcomer E., Robinson I. (chairs): Web services atomic transaction (WS-atomic transaction) version 1.2 (2009). http://docs.oasis-open.org/ws-tx/wstx-wsat-1.2-spec.html. Accessed 6 April 2012

  17. Newcomer E., Robinson I. (chairs): Web services business activity (WS-businessactivity) version 1.2 (2009). http://docs.oasis-open.org/ws-tx/wstx-wsba-1.2-spec-os/wstx-wsba-1.2-spec-os.html. Accessed 6 April 2012

  18. Newcomer E., Robinson I. (chairs): Web services coordination (WS-coordination) version 1.2 (2009). http://docs.oasis-open.org/ws-tx/wstx-wscoor-1.2-spec-os/wstx-wscoor-1.2-spec-os.html. Accessed 6 April 2012

  19. Nicollin X., Sifakis J.: The algebra of timed processes, ATP: theory and application. Inf. Comput. 114(1), 131–178 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  20. OASIS. Discussion forum, report on error trace in BAwCC (2011). http://markmail.org/message/xgnyonkihfif5vz2. Accessed 6 April 2012

  21. Ravn A.P., Srba J., Vighio S.: UPPAAL model of the WS-BA protocol. http://www.uppaal.org. Accessed 6 April 2012

  22. Ravn A.P., Srba J., Vighio S.: A formal analysis of the web services atomic transaction protocol with UPPAAL. In: Proceedings of the 4th International Symposium On Leveraging Applications of Formal Methods, Verification and Validation (ISOLA’10). LNCS, vol. 6416, pp. 579–593. Springer, Berlin (2010)

  23. Ravn A.P., Srba J., Vighio S.: Modelling and verification of web services business activity protocol. In: Abdulla, P.A., Leino, K.R.M. (eds) Proceedings of TACAS’11. LNCS, vol. 6605, pp. 357–371. Springer, Berlin (2011)

  24. Robinson I.: Answer in WS-BA discussion forum, July 14th (2010). http://markmail.org/message/wriewgkboaaxw66z. Accessed 6 April 2012

  25. Schnoebelen Ph.: Verifying lossy channel systems has nonprimitive recursive complexity. Inf. Process. Lett. 83, 251–261 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  26. UPPAAL. http://www.uppaal.com. Accessed 6 April 2012

  27. Vogt F.H., Zambrovski S., Gruschko B., Furniss P., Green A: Implementing web service protocols in SOA: WS-coordination and WS-businessactivity. In: Proceedings of the Seventh IEEE International Conference on E-Commerce Technology Workshops(CECW’05), pp. 21–28. IEEE Computer Society, New york (2005)

  28. Vuong S.T., Hui D.D., Cowan D.D.: Valira—a tool for protocol validation via reachability analysis. In: Protocol Specification, Testing and Verification VI, pp. 35–41. North-Holland, Amsterdam (1987)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Saleem Vighio.

Additional information

The paper is supported by VKR Center of Excellence MT-LAB. A. P. Marques Jr. is affiliated to the Brazilian Society of Health Informatics.

S. Vighio is supported by Quaid-e-Awam University of Engineering, Science, and Technology, Nawabshah, Pakistan, and partially by the Nordunet3 project COSoDIS.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Marques, A.P., Ravn, A.P., Srba, J. et al. Model-checking web services business activity protocols. Int J Softw Tools Technol Transfer 15, 125–147 (2013). https://doi.org/10.1007/s10009-012-0231-4

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10009-012-0231-4

Keywords

Navigation