Skip to main content

A Model-Driven Approach to Discovery, Testing and Monitoring of Web Services

  • Chapter

Abstract

Service-oriented computing is distinguished by its use of dynamic discovery and binding for the integration of services at runtime. This poses a challenge for testing, in particular, of the interaction between services.

We propose a model-driven solution to address this challenge. Service descriptions are promoted from largely syntactical to behavioural specifications of services in terms of contracts (pre-conditions and effects of operations), expressed in a visual UML-like notion. Through mappings to semantic web languages and the Java Modelling Language (JML) contracts support the automatic discovery of services as well as the derivation of test cases and their execution and monitoring.

We discuss an extended life cycle model for services based on the model-driven approach and illustrate its application using a model of a hotel reservation service.

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

Buying options

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   59.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   54.99
Price excludes VAT (USA)
  • Durable hardcover 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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Apache. Axis. http://ws.apache.org/axis/.

    Google Scholar 

  2. P. Baldan, B. König, and I. Stürmer. Generating test cases for code generators by unfolding graph transformation systems. In proceedings of the 2nd International Conference on Graph Transformation, Rome, Italy, 2004.

    Google Scholar 

  3. L. Baresi and R. Heckel. Tutorial introduction to graph transformation: a software engineering perspective. In proceedings of the International Conference on Graph Transformation, volume 1 of LNCS. Springer, 2002.

    Google Scholar 

  4. M. Barnett, K. R. M. Leino, and W. Schulte. The spec# programming system: An overview. In CASSIS 2004, volume 3362 of LNCS. Springer-Verlag, 2004.

    Google Scholar 

  5. B. Benatallah, M.-S. Hacid, C. Rey, and F. Toumani. Semantic reasoning for web services discovery. In proceedings of the WWW 2003 Workshop on E-Services and the Semantic Web (ESSW’ 03), 2003.

    Google Scholar 

  6. A. Bertolino, L. Frantzen, A. Polini, and J. Tretmans. Architecting Systems with Trustworthy Components, chapter Audition of Web Services for Testing Conformance to Open Specified Protocols. Number 3938 in Lectures Notes in Computer Science Series. Springer, 2006.

    Google Scholar 

  7. D. Booth, H. Haas, F. McCabe, E. Newcomer, C. Michael, C. Ferris, and D. Orchard. Web services architecture - W3C working group note 11 february 2004. Technical report, W3C, 2004.

    Google Scholar 

  8. P. Bottoni, M. Koch, F. Parisi-Presicce, and G. Taentzer. A visualization of OCL using collaborations. In M. Gogolla and C. Kobryn, editors, proceedings of the 4th International Conference on The Unified Modeling Language, Modeling Languages, Concepts, and Tools, volume 2185 of Lecture Notes In Computer Science, pages 257–271. Springer-Verlag, 2001.

    Google Scholar 

  9. L. Burdy, Y. Cheon, D. Cok, M. Ernst, J. Kiniry, G. T. Leavens, K. R. M. Leino, and E. Poll. An overview of JML tools and applications. International Journal on Software Tools for Technology Transfer (STTT), February 2005.

    Google Scholar 

  10. G. Canfora and M. D. Penta. Testing services and service-centric systems: Challenges and opportunities. IEEE IT Pro, pages 10–17, March/April 2006.

    Google Scholar 

  11. R. Chinnici, J.-J. Moreau, A. Ryman, and S. Weerawarana. Web services description language (WSDL) version 2.0 part 1: Core language - W3C working draft 10 may 2005, May 2005.

    Google Scholar 

  12. D. Connolly, F. van Harmelen, I. Horrocks, D. L. McGuinness, P. F. Patel-Schneider, and L. A. Stein. DAML+OIL (march 2001) reference description - W3C note 18 december 2001, March 2001.

    Google Scholar 

  13. A. Corradini, U. Montanari, F. Rossi, H. Ehrig, R. Heckel, and M. Lö we. Chapter 3: Algebraic approaches to graph transformation - part I: Basic concepts and double pushout approach. In G. Rozenberg, editor, Handbook of Graph Grammars of Computing by Graph Transformation. World Scientific, 1997.

    Google Scholar 

  14. G. Engels, B. Güldali, O. Juwig, M. Lohmann, and J.-P. Richter. Industrielle Fallstudie: Einsatz visueller Kontrakte in serviceorientierten Architekturen. In B. Biel, M. Book, and V. Gruhn, editors, Software Enginneering 2006, Fachtagung des GI Fachbereichs Softwaretechnik, volume 79 of Lecture Notes in Informatics, pages 111–122. Köllen Druck+Verlag GmbH, 2006.

    Google Scholar 

  15. G. Engels, R. Heckel, G. Taentzer, and H. Ehrig. A view-oriented approach to system modelling based on graph transformation. In proceedings of the 6th European Conference held jointly with the International Symposium on Foundations of Software Engineering, pages 327–343. Springer-Verlag, 1997.

    Google Scholar 

  16. G. Engels, M. Lohmann, S. Sauer, and R. Heckel. Model-driven monitoring: An application of graph transformation for design by contract. In proceedings of the Third International Conference on Graph Transformations (ICGT 2006), volume 4178 of Lecture Notes in Computer Science, pages 336–350. Springer, 2006.

    Google Scholar 

  17. J. Fan and S. Kambhampati. A snapshot of public web services. SIGMOD Record, 34(1):24–32, March 2005.

    Article  Google Scholar 

  18. T. Fischer, J. Niere, L. Torunski, and A. Zündorf. Story diagrams: A new graph rewrite language based on the Unified Modeling Language. In H. Ehrig, G. Engels, H.-J. Kreowski, and G. Rozenberg, editors, Selected papers from the 6th International Workshop on Theory and Application of Graph Transformations (TAGT), volume 1764 of Lecture Notes In Computer Science, pages 296–309. Springer Verlag, 1998.

    Google Scholar 

  19. P. Frankl and E. Weyuker. An applicable family of data flow testing criteria. IEEE Transactions on Software Engineering, 14(10):1483–1498, 1988.

    Article  Google Scholar 

  20. A. Habel, R. Heckel, and G. Taentzer. Graph grammars with negative application conditions. Fundamenta Informaticae, 26(3,4):287–313, 1996.

    MATH  Google Scholar 

  21. A. Hamie. Translating the object constraint language into the java modeling language. In proceedings of the 2004 ACM symposium on Applied computing, pages 1531–1535. ACM Press, 2004.

    Google Scholar 

  22. J. Hartmann, C. Imoberdorf, and M. Meisinger. Uml-based integration testing. In proceedings of the 2000 international symposium on Software testing and analysis (ISSTA), pages 60–70. ACM Press, 2000.

    Google Scholar 

  23. J. H. Hausmann, R. Heckel, and M. Lohmann. Model-based discovery of Web Services. In proceedings of the International Conference on Web Services (ICWS), 2004.

    Google Scholar 

  24. J. H. Hausmann, R. Heckel, and M. Lohmann. Model-based development of web services descriptions enabling a precise matching concept. International Journal of Web Services Research, 2(2):67–84, April-June 2005.

    Google Scholar 

  25. R. Heckel and M. Lohmann. Model-driven development of reactive informations systems: From graph transformation rules to JML contracts. International Journal on Software Tools for Technology Transfer (STTT), 2006.

    Google Scholar 

  26. R. Heckel and L. Mariani. Automatic conformance testing of web services. In proceedings of the 8th International Conference on Fundamental Approaches to Software Engineering (FASE). Springer-Verlag, 2005.

    Google Scholar 

  27. Hewlett-Packard Development Company. Jena - a semantic web framework for Java. http://jena.sourceforge.net/.

    Google Scholar 

  28. J. Howse, F. Molina, J. Tayloy, S. Kent, and J. Gil. Spider diagrams: A diagrammatic reasoning system. Journal of Visual Languages and Computing, 12(3):299–324, June 2001.

    Article  Google Scholar 

  29. H. Hussmann, B. Demuth, and F. Finger. Modular architecture for a toolset supporting OCL. Science of Computer Programming, 44:51–69, 2002.

    Article  MATH  Google Scholar 

  30. B. Jeng and E. Weyuker. A simplified domain-testing strategy. ACM Transactions on Software Engineering and Methodology, 3:254–270, 1994.

    Article  Google Scholar 

  31. S. Kent and J. Howse. Mixing visual and textual constraint languages. In R. France and B. Rumpe, editors, proceedings of International Conference on The Unified Modeling Language (UML’99), volume 1723 of Lecture Notes in Computer Science, pages 384–398. Springer, 1999.

    Google Scholar 

  32. A. Kühnel. Visual C# 2005. Galileo Computing, 2006.

    Google Scholar 

  33. G. T. Leavens, A. L. Baker, and C. Ruby. Preliminary design of JML: A behavioral interface specification language for Java. Technical Report 98-06-rev27, Department of Computer Science, Iowa State University, February 2005.

    Google Scholar 

  34. M. Lohmann, G. Engels, and S. Sauer. Model-driven monitoring: Generating assertions from visual contracts. In proceedings of the 21st IEEE International Conference on Automated Software Engineering (ASE’06), pages 355–356, September 2006.

    Google Scholar 

  35. M. Lohmann, J.-P. Richter, G. Engels, B. Güldali, O. Juwig, and S. Sauer. Abschlussbericht: Semantische Beschreibung von Enterprise Services - Eine industrielle Fallstudie. Technical Report 1, Software Quality Lab (s-lab), Unversity of Paderborn, May 2006.

    Google Scholar 

  36. M. Lohmann, S. Sauer, and G. Engels. Executable visual contracts. In M. Erwig and A. Schürr, editors, proceedings of the 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC’05), pages 63–70, 2005.

    Google Scholar 

  37. B. Meyer. Applying “Design by Contract”. IEEE Computer, 25(10):40–51, 1992.

    Google Scholar 

  38. B. Meyer. Object-Oriented Software Construction. Prentice-Hall, Englewood Cliffs, second edition, 1997.

    MATH  Google Scholar 

  39. N. Mitra. SOAP version 1.2 part 0: Primer - W3C recommendation 24 june 2003, Juni 2003.

    Google Scholar 

  40. OMG (Object Management Group). UML 2.0 OCL final adopted specification, 2003.

    Google Scholar 

  41. OMG (Object Management Group). UML 2.0 superstructure specification - revised final adopted specification, 2004.

    Google Scholar 

  42. M. Paolucci, T. Kawmura, T. R. Payne, and K. Sycara. Semantic matching of web services capabilities. In I. Horrocks and J. A. Hendler, editors, proceedings of the First International Semantic Web Conference on the Semantic Web, volume Lecture Notes In Computer Science; Vol. 2342, pages 333–347, Sardinia, Italy, 2002. Springer-Verlag.

    Google Scholar 

  43. M. Pezzè and M. Young. Software Test and Analysis: Process, Principles and Techniques. John Wiley and Sons, 2007.

    Google Scholar 

  44. M. Raacke. Generierung von spec#-code aus visuellen kontrakten, October 2006. Bachelor Thesis at the University of Paderborn.

    Google Scholar 

  45. A. Reddy. Java coding style guide. Technical report, 2000.

    Google Scholar 

  46. A. Rensink. The GROOVE simulator: A tool for state space generation. In 2nd Intl. Workshop on Applications of Graph Transformations with Industrial Relevance, volume 3062 of LNCS, pages 479–485. Springer, 2004.

    Google Scholar 

  47. A. Schürr, A. J. Winter, and A. Zündorf. The PROGRES approach: language and environment. In Handbook of graph grammars and computing by graph transformation: vol.2: applications, languages, and tools, pages 487–550. World Scientific, 1999.

    Google Scholar 

  48. A. Seaborne. RDQL - a query language for RDF - W3C member submission 9 january 2004. Technical report, W3C, 2004.

    Google Scholar 

  49. K. Sivashanmugam, K. Verma, A. Sheth, and J. Miller. Adding semantics to web services standards. In L.-J. Zhang, editor, proceedings of the International Conference on Web Services, ICWS ’03, pages 395–401, Las Vegas, Nevada, USA, 2003. CSREA Press.

    Google Scholar 

  50. O. U. S. TC. UDDI version 3.0.2. OASIS standard, Organization for the Advancement of Structured Information Standards, 2004.

    Google Scholar 

  51. Technical University Berlin. The attributed graph grammar system (AGG). http://tfs.cs.tu-berlin.de/agg/.

    Google Scholar 

  52. W. Tsai, R. Paul, Z. Cao, L. Yu, A. Saimi, and B. Xiao. Verification of web services using an enhanced UDDI server. In proceedings of the IEEE International Workshop on Object-oriented Real-time Dependable systems, 2003.

    Google Scholar 

  53. E. Weyuker and B. Jeng. Analyzing partition testing strategies. IEEE Transactions on Software Engineering, 17:703–711, 1991.

    Article  Google Scholar 

  54. L. White and E. Cohen. A domain strategy for computer program testing. IEEE Transactions on Software Engineering, 6:247–257, 1980.

    Article  Google Scholar 

  55. J. Winkelmann, G. Taentzer, K. Ehrig, and J. Küster. Translation of restricted OCL constraints into graph constraints for generating meta model instances by graph grammars. In proceedings of the International Workshop on the Graph Transformation and Visual Modeling Techniques, Electronic Notes in Theoretical Computer Science, 2006.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Lohmann, M., Mariani, L., Heckel, R. (2007). A Model-Driven Approach to Discovery, Testing and Monitoring of Web Services. In: Baresi, L., Nitto, E.D. (eds) Test and Analysis of Web Services. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-72912-9_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-72912-9_7

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-72911-2

  • Online ISBN: 978-3-540-72912-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics