Skip to main content

Conversation Protocols: A Formalism for Specification and Verification of Reactive Electronic Services

  • Conference paper
  • First Online:
Implementation and Application of Automata (CIAA 2003)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2759))

Included in the following conference series:

Abstract

This paper focuses on the realizability problem of a framework for modeling and specifying the global behavior of reactive electronic services (e-services). In this framework, Web accessible programs (peers) communicate by asynchronous message passing, and a virtual global watcher listens silently to the network. The global behavior is characterized by a conversation, which is the infinite sequence of messages observed by the watcher. We show that given a Büchi automaton specifying the desired set of conversations, called a conversation protocol, it is possible to implement it using a set of finite state peers if three realizability conditions are satisfied. In particular, the synthesized peers will conform to the protocol by generating only those conversations specified by the protocol. Our results enable a top-down verification strategy where: (1) A conversation protocol is specified by a realizable Büchi automaton, (2) The properties of the protocol are verified on the Büchi automaton specification, (3) The peer implementations are synthesized from the protocol via projection.

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. M. Abadi, L. Lamport, and P. Wolper. Realizable and unrealizable specifications of reactive systems. In Proc. of 16th Int. Colloq. on Automata, Languages and Programming, volume 372 of LNCS, pages 1–17. Springer Verlag, 1989.

    Chapter  Google Scholar 

  2. P.A. Abdulla and B. Jonsson. Verifying programs with unreliable channels. Journal of Information and Computation, 127:91–101, 1996.

    Article  MATH  MathSciNet  Google Scholar 

  3. L.D. Alfaro and T.A. Henzinger. Interface automata. In Proc. of 9th ACM Symp. on Foundations of Software Engineering, pages 109–120, 2001.

    Google Scholar 

  4. R. Alur, K. Etessami, and M. Yannakakis. Realizability and verification of MSC graphs. In Proc. 28th Int. Colloq. on Automata, Languages, and Programming, 2001.

    Google Scholar 

  5. R. Alur, K. McMillan, and D. Peled. Model-checking of correctness conditions for concurrent objects. Information and Computation, 160:167–188, 2000.

    Article  MATH  MathSciNet  Google Scholar 

  6. Business process execution language for web services (BPEL4WS), version 1.1. available at http://www.ibm.com/developerworks/library/ws-bpel.

  7. Business process modeling language (BPML). http://www.bpmi.org.

  8. D. Brand and P. Zafiropulo. On communicating finite-state machines. Journal of the ACM, 30(2):323–342, 1983.

    Article  MATH  MathSciNet  Google Scholar 

  9. T. Bultan, X. Fu, R. Hull, and J. Su. Conversation specification: A new approach to design and analysis of e-service composition. In Proc. of 12th Intl. World Wide Web Conf., May 2003.

    Google Scholar 

  10. M. Chiodo, P. Giusto, A. Jurecska, L. Lavagno, H. Hsieh, and A. Sangiovanni-Vincentelli. A formal specification model for hardware/software codesign. In Proc. of the Intl. Workshop on Hardware-Software Codesign, October 1993.

    Google Scholar 

  11. E. M. Clarke, O. Grumberg, and D.A. Peled. Model Checking. The MIT Press, Cambridge, Massachusetts, 1999.

    Google Scholar 

  12. E.A. Emerson. Temporal and modal logic. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science: Volume B: Formal Models and Semantics, pages 995–1072. Elsevier, 1990.

    Google Scholar 

  13. A. Finkel and P. McKenzie. Verifying identical communicating processes is undecidable. Theoretical Computer Science, 174(1–2):217–230, 1997.

    Article  MATH  MathSciNet  Google Scholar 

  14. S. J. Garland and N. Lynch. Using I/O automata for developing distributed systems. In Foundations of Component-Based Systems. Cambridge Univ. Press, 2000.

    Google Scholar 

  15. P. Graunke, R.B. Findler, S. Krishnamurthi, and M. Felleisen. Modeling web interactions. In Proc. of 12th European Symp. on Programming, LNCS 2618, 2003.

    Google Scholar 

  16. J.E. Hanson, P. Nandi, and S. Kumaran. Conversation support for business process integration. In Proc. of 6th IEEE Int. Enterprise Distributed Object Computing Conference, 2002.

    Google Scholar 

  17. C.A.R. Hoare. Communicating sequential processes. Communications of the ACM, 21(8):666–677, 1978.

    Article  MATH  MathSciNet  Google Scholar 

  18. R. Hull, M. Benedikt, C. Christophides, and J. Su. E-services: A look behind the curtain. In Proc. of 22nd ACM Symp. on Principles of Database Systems, 2003.

    Google Scholar 

  19. IBM. Conversation support project. http://www.research.ibm.com/convsupport/

  20. G. Kahn. The semantics of a simple language for parallel programming. In Proc. of IFIP 74, pages 471–475. North-Holland, 1974.

    Google Scholar 

  21. H. Liu and R. E. Miller. Generalized fair reachability analysis for cyclic protocols. In IEEE/ACM Transactions on Networking, pages 192–204, 1996.

    Google Scholar 

  22. N. Lynch and M. Tuttle. Hierarchical correctness proofs for distributed algorithms. In Proc. 6th ACM Symp. Principles of Distributed Computing, pages 137–151, 1987.

    Google Scholar 

  23. R. Milner. Communicating and Mobile Systems: the π-Calculus. Cambridge University Press, 1999.

    Google Scholar 

  24. A. Pnueli and R. Rosner. On the synthesis of a reactive module. In Proc. of 16th ACM Symp. Principles of Programming Languages, pages 179–190, 1989.

    Google Scholar 

  25. A. Pnueli and R. Rosner. On the synthesis of an asynchronous reactive module. In Proc. of 16th Int. Colloq. on Automata, Languages, and Programs, volume 372 of LNCS, pages 652–671, 1989.

    Chapter  Google Scholar 

  26. S.K. Rajamani and J. Rehof. A behavioral module system for the pi-calculus. In Proc. of Static Analysis Symposium (SAS), July 2001.

    Google Scholar 

  27. Sun. Java message service. http://java.sun.com/products/jms/.

  28. W3C. Web service choreography interface (WSCI) version 1.0. available at http://www.w3.org/2003/01/wscwg-charter.

  29. W3C. Web services description language (WSDL) version 1.1. available at http://www.w3.org/TR/wsdl, 2001.

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Fu, X., Bultan, T., Su, J. (2003). Conversation Protocols: A Formalism for Specification and Verification of Reactive Electronic Services. In: Ibarra, O.H., Dang, Z. (eds) Implementation and Application of Automata. CIAA 2003. Lecture Notes in Computer Science, vol 2759. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45089-0_18

Download citation

  • DOI: https://doi.org/10.1007/3-540-45089-0_18

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-40561-0

  • Online ISBN: 978-3-540-45089-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics