Bridging Test and Model-Driven Approaches in Web Engineering

  • Esteban Robles Luna
  • Julián Grigera
  • Gustavo Rossi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5648)

Abstract

In the last years there has been a growing interest in agile methods and their integration into the so called “unified” approaches. In the field of Web Engineering, agile approaches such as test-driven development are appealing because of the very nature of Web applications, while model-driven approaches provide a less error-prone code derivation; however the integration of both approaches is not easy. In this paper, we present a method-independent approach to combine the agile, iterative and incremental style of test-driven development with the more formal, transformation-based model-driven Web engineering approaches. We focus not only in the development process but also in the evolution of the application, and show how tests can be transformed together with model refactoring. As a proof of concept we show an illustrative example using WebRatio, the WebML design tool.

Keywords

Shipping Selenium Triad Arena Argentina 

References

  1. 1.
    Alles, M., Crosby, D., Erickson, C., Harleton, B., Marsiglia, M., Pattison, G., Stienstra, C.: Presenter First: Organizing Complex GUI Applications for Test-Driven Development. In: AGILE 2006, pp. 276–288 (2006)Google Scholar
  2. 2.
    Ambler, S.W.: The object primer: agile modeling-driven development with UML 2.0. Cambridge University Press, Cambridge (2004)CrossRefGoogle Scholar
  3. 3.
    Beck, K.: Test Driven Development: By Example. Addison-Wesley Signature Series (2002)Google Scholar
  4. 4.
    Binder, R.V.: Testing Object-Oriented Systems: Models, Patterns, and Tools. Addison-Wesley Longman Publishing Co., Inc., Amsterdam (1999)Google Scholar
  5. 5.
    Cachero, C., Koch, N.: Navigation Analysis and Navigation Design in OO-H and UWE. Technical Report. Universidad de Alicante, Spain (April 2002), http://www.dlsi.ua.es/~ccachero/papers/ooh-uwe.pdf
  6. 6.
    Ceri, S., Fraternali, P., Bongio, A.: Web Modeling Language (WebML): A Modeling Language for Designing Web Sites. Computer Networks and ISDN Systems 33(1-6), 137–157 (2000)CrossRefGoogle Scholar
  7. 7.
    Eleftherakis, G., Cowling, A.: An Agile Formal Development Methodology. In: SEEFM 2003 Proceedings 36 (1 de 12) (2003)Google Scholar
  8. 8.
    Fowler, M., Beck, K., Brant, J., Opdyke, W., Roberts, D.: Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional, Reading (1999)Google Scholar
  9. 9.
    Gómez, J., Cachero, C.: OO-H Method: extending UML to model web interfaces. In: van Bommel, P. (ed.) Information Modeling For internet Applications, pp. 144–173. IGI Publishing, Hershey (2003)CrossRefGoogle Scholar
  10. 10.
    Gutiérrez, J.J., Escalona, M.J., Mejías, M., Torres, J.: An approach to generate test cases from use cases. In: Proceedings of the 6th international Conference on Web Engineering. ICWE 2006, Palo Alto, California, USA, July 11 - 14, vol. 263, pp. 113–114. ACM, New York (2006)Google Scholar
  11. 11.
    Jacobson, I.: Object-Oriented Software Engineering: A Use Case Driven Approach. ACM Press/Addison-Wesley (1992)Google Scholar
  12. 12.
    Janzen, D., Saiedian, H.: Does Test-Driven Development Really Improve Software Design Quality? IEEE Software 25(2), 77–84 (2008)CrossRefGoogle Scholar
  13. 13.
    Jeffries, R.E., Anderson, A., Hendrickson, C.: Extreme Programming Installed. Addison-Wesley Longman Publishing Co., Inc., Amsterdam (2000)Google Scholar
  14. 14.
    Koch, N., Knapp, A., Zhang, G., Baumeister, H.: UML-Based Web Engineering, An Approach Based On Standards. In: Web Engineering, Modelling and Implementing Web Applications, pp. 157–191. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  15. 15.
    Maximilien, E.M., Williams, L.: Assessing test-driven development at IBM. In: Proceedings of the 25th international Conference on Software Engineering, Portland, Oregon, May 03 - 10, pp. 564–569. IEEE Computer Society, Los Alamitos (2003)Google Scholar
  16. 16.
    McDonald, A., Welland, R.: Agile Web Engineering (AWE) Process: Multidisciplinary Stakeholders and Team Communication. In: Web Engineering, pp. 253–312. Springer, US (2002)Google Scholar
  17. 17.
    Olsina, L., Garrido, A., Rossi, G., Distante, D., Canfora, G.: Web Application evaluation and refactoring: A Quality-Oriented improvement approach. Journal of Web Engineering 7(4), 258–280 (2008)Google Scholar
  18. 18.
    Pastor, O., Abrahão, S., Fons, J.: An Object-Oriented Approach to Automate Web Applications Development. In: Bauknecht, K., Madria, S.K., Pernul, G. (eds.) EC-Web 2001. LNCS, vol. 2115, pp. 16–28. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  19. 19.
    Pastor, O.: From Extreme Programming to Extreme Non-programming: Is It the Right Time for Model Transformation Technologies? In: Bressan, S., Küng, J., Wagner, R. (eds.) DEXA 2006. LNCS, vol. 4080, pp. 64–72. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  20. 20.
    Pipka, J.U.: Test-Driven Web Application Development in Java. In: Objects, Components, Architectures, Services, and Applications for a Networked World, vol. 1, pp. 378–393. Springer, US (2003)CrossRefGoogle Scholar
  21. 21.
    Rasmussen, J.: Introducing XP into Greenfield Projects: lessons learned. IEEE Softw. 20(3), 21–28 (2003)CrossRefGoogle Scholar
  22. 22.
    Rossi, G., Schwabe, D.: Modeling and Implementing Web Applications using OOHDM. In: Web Engineering, Modelling and Implementing Web Applications, pp. 109–155. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  23. 23.
    Selenium web application testing system, http://seleniumhq.org/
  24. 24.
    The WebRatio Tool Suite, http://www.Webratio.com
  25. 25.
    VanderVoord, M., Williams, G.: Feature-Driven Design Using TDD and Mocks. In: Embedded Systems Conference Boston (October 2008)Google Scholar
  26. 26.
    XML Path Language (XPath), http://www.w3.org/TR/xpath
  27. 27.
    XPather - XPath Generator and Editor, https://addons.mozilla.org/en-US/firefox/addon/1192

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Esteban Robles Luna
    • 1
    • 2
  • Julián Grigera
    • 1
  • Gustavo Rossi
    • 1
    • 2
  1. 1.LIFIA, Facultad de Informática, UNLPLa PlataArgentina
  2. 2.Also at CONICETArgentina

Personalised recommendations