Property Patterns for Runtime Monitoring of Web Service Conversations

  • Jocelyn Simmonds
  • Marsha Chechik
  • Shiva Nejati
  • Elena Litani
  • Bill O’Farrell
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5289)

Abstract

For a system of distributed processes, correctness can be ensured by statically checking whether their composition satisfies the properties of interest. However, web services are distributed processes that dynamically discover properties of other web services. Since the overall system may not be available statically and since each business process is supposed to be relatively simple, we propose to use runtime monitoring of conversations between partners as a means of checking behavioral correctness of the entire web service system. Specifically, we identify a subset of UML 2.0 Sequence Diagrams (SD) as a property specification language. We show how our language can be used to specify the patterns in the Specification Property System (SPS) [1]. By formalizing this subset using automata, we can check finite execution traces of web services against various complex properties. Finally, we discuss our experience using our language for runtime monitoring of an existing application, and conclude with a description of existing tool support.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Dwyer, M., Avrunin, G., Corbett, J.: Patterns in Property Specifications for Finite-State Verification. In: Proceedings of 21st International Conference on Software Engineering (ICSE 1999) pp. 411–420 (May 1999)Google Scholar
  2. 2.
    IBM: Business Process Execution Language for Web Services, http://www-128.ibm.com/developerworks/library/specification/ws-bpel/
  3. 3.
    Fu, X., Bultan, T., Su, J.: Conversation Protocols: A Formalism for Specification and Verification of Reactive Electronic Services. In: H. Ibarra, O., Dang, Z. (eds.) CIAA 2003. LNCS, vol. 2759, pp. 188–200. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  4. 4.
    Fu, X., Bultan, T., Su, J.: Analysis of Interacting BPEL Web Services. In: Proceedings of the Thirteenth International World Wide Web Conference (WWW 2004), New York, pp. 621–630 (May 2004)Google Scholar
  5. 5.
    Kazhamiakin, R., Pistore, M.: A Parametric Communication Model for the Verification of BPEL4WS Compositions. In: EPEW/WS-FM, pp. 318–332 (2005)Google Scholar
  6. 6.
    Baldoni, M., Baroglio, C., Martelli, A., Patti, V., Schifanella, C.: Verifying the Conformance of Web Services to Global Interaction Protocols: A First Step. In: EPEW/WS-FM, pp. 257–271 (2005)Google Scholar
  7. 7.
    Foster, H., Uchitel, S., Magee, J., Kramer, J.: Model-based Verification of Web Service Compositions. In: Proceedings of 18th IEEE International Conference on Automated Software Engineering (ASE 2003), pp. 152–163. IEEE Computer Society, Los Alamitos (2003)CrossRefGoogle Scholar
  8. 8.
    Ghafari, N., Gurfinkel, A., Klarlund, N., Trefler, R.: Algorithmic Analysis of Piecewise FIFO Systems. In: Proceedings of 7th International Conference on Formal Methods in Computer-Aided Design (FMCAD 2007), Austin, Texas, LNCS, pp. 45–52 (November 2007)Google Scholar
  9. 9.
    Baresi, L., Ghezzi, C., Guinea, S.: Smart Monitors for Composed Services. In: ICSOC 2004, pp. 193–202 (2004)Google Scholar
  10. 10.
    Robinson, W.N.: Monitoring Web Service Requirements. In: Proceedings of RE 2003, pp. 65–74 (2003)Google Scholar
  11. 11.
    Mahbub, K., Spanoudakis, G.: Run-time Monitoring of Requirements for Systems Composed of Web-Services: Initial Implementation and Evaluation Experience. In: Proceedings of ICWS 2005, pp. 257–265 (2005)Google Scholar
  12. 12.
    Gan, Y., Chechik, M., Nejati, S., Bennett, J., O’Farrell, B., Waterhouse, J.: Runtime Monitoring of Web Service Conversations. In: Proceedings of CASCON 2007 (November 2007)Google Scholar
  13. 13.
    Object Management Group (OMG): Unified Modeling Language (UML 2.0), http://www.uml.org/
  14. 14.
    Autili, M., Inverardi, P., Pelliccione, P.: A Scenario Based Notation for Specifying Temporal Properties. In: Proceedings of SCESM, ICSE 2006 Workshop (2006)Google Scholar
  15. 15.
    Alur, R., Yannakakis, M.: Model Checking of Message Sequence Charts. In: Baeten, J.C.M., Mauw, S. (eds.) CONCUR 1999. LNCS, vol. 1664, pp. 114–129. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  16. 16.
    Grosu, R., Smolka, S.A.: Safety-Liveness Semantics for UML 2.0 Sequence Diagrams. In: ACSD 2005, pp. 6–14 (2005)Google Scholar
  17. 17.
    Hopcroft, J.E., Ullman, J.D.: Introduction to Automata Theory, Languages and Computation. Addison-Wesley, Reading (1979)MATHGoogle Scholar
  18. 18.
    Harel, D., Maoz, S.: Assert and Negate Revisited: Modal Semantics for UML Sequence Diagrams. In: Proceedings of SCESM, ICSE 2006 Workshop, pp. 13–20 (2006)Google Scholar
  19. 19.
    Störrle, H.: Assert, Negate and Refinement in UML 2 Interactions. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 79–94. Springer, Heidelberg (2003)Google Scholar
  20. 20.
    Vardi, M.: An Automata-Theoretic Approach to Linear Temporal Logic. In: Moller, F., Birtwistle, G. (eds.) Logics for Concurrency. LNCS, vol. 1043, pp. 236–266. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  21. 21.
    Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Property Specification Patterns for Finite-state Verification. In: Proceedings of 2nd Workshop on Formal Methods in Software Practice (March 1998)Google Scholar
  22. 22.
    Clarke, E., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (1999)Google Scholar
  23. 23.
    Yu, J., Manh, T.P., Han, J., Jin, Y., Han, Y., Wang, J.: Pattern Based Property Specification and Verification for Service Composition. In: Aberer, K., Peng, Z., Rundensteiner, E.A., Zhang, Y., Li, X. (eds.) WISE 2006. LNCS, vol. 4255, pp. 156–168. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  24. 24.
  25. 25.
    IBM: WebSphere Process Server, http://www-306.ibm.com/software/integration/wps/
  26. 26.
    IBM: WebSphere Integration Developer, http://www-306.ibm.com/software/integration/wid/
  27. 27.
    Zeller, A.: Isolating cause-effect chains from computer programs. SIGSOFT Softw. Eng. Notes 27(6), 1–10 (2002)CrossRefGoogle Scholar
  28. 28.
    Groce, A., Chaki, S., Kroening, D., Strichman, O.: Error explanation with distance metrics. Int. J. Softw. Tools Technol. Transf. 8(3), 229–247 (2006)CrossRefGoogle Scholar
  29. 29.
    Inverardi, P., Mostarda, L., Tivoli, M., Autili, M.: Synthesis of Correct and Distributed Adaptors for Component-Based Systems: an Automatic Approach. In: Proceedings of ASE 2005, pp. 405–409 (2005)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Jocelyn Simmonds
    • 1
  • Marsha Chechik
    • 1
  • Shiva Nejati
    • 1
  • Elena Litani
    • 2
  • Bill O’Farrell
    • 2
  1. 1.University of TorontoTorontoCanada
  2. 2.IBM Toronto LabMarkhamCanada

Personalised recommendations