Verification of Computation Orchestration Via Timed Automata

  • Jin Song Dong
  • Yang Liu
  • Jun Sun
  • Xian Zhang
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4260)

Abstract

Recently, a promising programming model called Orc has been proposed to support a structured way of orchestrating distributed web services. Orc is intuitive because it offers concise constructors to manage concurrent communication, time-outs, priorities, failure of sites or communication and so forth. The semantics of Orc is also precisely defined. However, there is no verification tool available to verify critical properties against Orc models. Instead of building one from scratch, we believe the existing mature model-checkers can be reused. In this work, we first define a Timed Automata semantics for the Orc language, which we prove is semantically equivalent to the original operational semantics of Orc. Consequently, Timed Automata models are systematically constructed from Orc models. The practical implication of the construction is that tool supports for Timed Automata, e.g., Uppaal, can be used to model check Orc models. An experimental tool is implemented to automate our approach.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Alur, R., Dill, D.L.: A Theory of Timed Automata. Theor. Comput. Sci. 126(2), 183–235 (1994)MATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Amnell, T., David, A., Wang, Y.: A Real-Time Animator for Hybrid Systems. In: Davidson, J., Min, S.L. (eds.) LCTES 2000. LNCS, vol. 1985, pp. 134–145. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  3. 3.
    Amnell, T., Fersman, E., Pettersson, P., Sun, H., Wang, Y.: Code Synthesis for Timed Automata. Nord. J. Comput. 9(4), 269–300 (2002)MATHGoogle Scholar
  4. 4.
    Bengtsson, J., Larsen, K.G., Larsson, F., Pettersson, P., Wang, Y.: UPPAAL - a Tool Suite for Automatic Verification of Real-Time Systems. In: Alur, R., Sontag, E.D., Henzinger, T.A. (eds.) HS 1995. LNCS, vol. 1066. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  5. 5.
    Brooke, P.: A Timed Semantics for a Hierarchical Desgn Notation. PhD thesis, University of York (1999)Google Scholar
  6. 6.
    Cook, W.R., Misra, J.: A Structured Orchestration Language (2005), Available for download at: http://www.cs.utexas.edu/users/wcook/projects/orc
  7. 7.
    Daws, C., Olivero, A., Tripakis, S., Yovine, S.: The tool KRONOS. In: Hybrid System III: Verification and Control, pp. 208–219 (1996)Google Scholar
  8. 8.
    Dong, J.S., Hao, P., Qin, S., Sun, J., Wang, Y.: Timed Patterns: TCOZ to Timed Automata. In: Davies, J., Schulte, W., Barnett, M. (eds.) ICFEM 2004. LNCS, vol. 3308, pp. 483–498. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  9. 9.
    Dong, J.S., Liu, Y., Sun, J., Zhang, X.: http://nt-appn.comp.nus.edu.sg/fm/orc (2006)
  10. 10.
    Foster, H., Uchitel, S., Magee, J., Kramer, J.: Model-based Verification of Web Service Compositions. In: Automated Software Engineering 2003 (2003)Google Scholar
  11. 11.
    Henzinger, T.A., Nicollin, X., Sifakis, J., Yovine, S.: Symbolic Model Checking for Real-Time Systems. In: 7th. Symposium of Logics in Computer Science, pp. 394–406 (1992)Google Scholar
  12. 12.
    Hoare, C.A.R.: Communicating Sequential Processes. International Series in Computer Science. Prentice-Hall, Englewood Cliffs (1985)MATHGoogle Scholar
  13. 13.
    IBM, BEA Systems, Microsoft, SAP AG, and Siebel Systems. BPEL4WS, Business Process Execution Language for Web Service version 1.1 (2003), http://www.siebel.com/bpel
  14. 14.
    Lin, H.M., Wang, Y.: A Proof System for Timed Automata. In: Tiuryn, J. (ed.) FOSSACS 2000. LNCS, vol. 1784, pp. 208–222. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  15. 15.
    Milner, R.: Communication and Concurrency. Prentice-Hall International, Englewood Cliffs (1989)MATHGoogle Scholar
  16. 16.
    Milner, R.: Communicating and Mobile Systems: the π Calculus. Cambridge University Press, Cambridge (1999)MATHGoogle Scholar
  17. 17.
    Misra, J., Cook, W.: Computation Orchestration: A Basis for Wide-Area Computing. Journal of Software & Systems Modeling (to appear, 2006)Google Scholar
  18. 18.
    Misra, J., Hoare, T., Menzel, G.: A Tree Semantics of an Orchestration Language. In: Broy, M. (ed.) Proc. of the NATO Advanced Study Institute, Engineering Theories of Software Intensive Systems, Marktoberdorf, Germany. NATO ASI Series (August 2004)Google Scholar
  19. 19.
    Pu, G.G., Zhao, X.P., Wang, S.L., Qiu, Z.Y.: Towards the semantics and verification of BPEL4WS. In: International Workshop on Web Languages and Formal Methods, UK (2005)Google Scholar
  20. 20.
    Roscoe, A.W.: The Theory and Practice of Concurrency. Prentice-Hall, Englewood Cliffs (1997)Google Scholar
  21. 21.
    Schneider, S., Davies, J.: A Brief History of Timed CSP. Theoretical Computer Science 138 (1995)Google Scholar
  22. 22.
    Singh, M.P., Huhns, M.N.: Service-Oriented Computing. John Wiley & Sons, Ltd., Chichester (2005)Google Scholar
  23. 23.
    Sorea, M.: TEMPO: A Model-checker for Event-recording Automata. In: Proceedings of Workshop on Real-time Tools (August 2001)Google Scholar
  24. 24.
    Tiu, A.: Model Checking for Pi-calculus Using Proof Search. In: Abadi, M., de Alfaro, L. (eds.) CONCUR 2005. LNCS, vol. 3653, pp. 36–50. Springer, Heidelberg (2005)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Jin Song Dong
    • 1
  • Yang Liu
    • 1
  • Jun Sun
    • 1
  • Xian Zhang
    • 1
  1. 1.School of ComputingNational University of Singapore 

Personalised recommendations