Skip to main content

Deriving Tailored UML Interaction Models from Scenario-Based Runtime Tests

  • Conference paper
  • First Online:
Software Technologies (ICSOFT 2015)

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 586))

Included in the following conference series:

Abstract

Documenting system behavior explicitly using graphical models (e.g. UML activity or sequence diagrams) facilitates communication about and understanding of software systems during development and maintenance tasks. Creating graphical models manually is a time-consuming and often error-prone task. Deriving models from system-execution traces, however, suffers from resulting model sizes which render the models unmanageable for humans. This paper describes an approach for deriving behavior documentation from runtime tests in terms of UML interaction models. Key to our approach is leveraging the structure of scenario-based runtime tests to render the resulting interaction models and diagrams tailorable by humans for a given task. Each derived model represents a particular view on the test-execution trace. This way, one can benefit from tailored graphical models while controlling the model size. The approach builds on conceptual mappings (transformation rules) between a test-execution trace metamodel and the UML2 metamodel. In addition, we provide means to turn selected details of test specifications and of testing environment (i.e. test parts and call scopes) into views on the test-execution trace (scenario-test viewpoint). A prototype implementation called KaleidoScope based on a software-testing framework (STORM) and model transformations (Eclipse M2M/QVTo) is available.

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 EPUB and 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

Notes

  1. 1.

    Available for download from our website [14].

  2. 2.

    For the purposes of this paper, a trace is defined as a sequence of interactions between the structural elements of the system under test (SUT), see e.g. [38].

  3. 3.

    The process described so far is supported by our KaleidoScope tool [14].

  4. 4.

    The number of views computes as follows: There are \((2^3-1) \) non-empty combinations of the three feature-call scopes (SUT internal, STF internal, STF to SUT) times the \((2^{11}-1)\) non-empty combinations of at least 11 individual test parts (e.g. setup of test case, test body of test scenario).

  5. 5.

    The default value seq provides weak sequencing, i.e. ordering of fragments just along lifelines, which means that occurrences on different lifelines from different operands may come in any order [27].

  6. 6.

    Available for download from our website [14].

References

  1. Bennett, C., Myers, D., Storey, M.A., German, D.M., Ouellet, D., Salois, M., Charland, P.: A survey and evaluation of tool features for understanding reverse-engineered sequence diagrams. Softw. Maint. Evol. 20(4), 291–315 (2008). doi:10.1002/smr.v20:4

    Article  Google Scholar 

  2. Briand, L.C., Labiche, Y., Miao, Y.: Toward the reverse engineering of UML sequence diagrams. In: Proceedings of WCRE 2003, pp. 57–66. IEEE (2003). doi:10.1109/TSE.2006.96

    Google Scholar 

  3. Carroll, J.M.: Five reasons for scenario-based design. Interact. Comput. 13(1), 43–60 (2000). doi:10.1016/S0953-5438(00)00023-0

    Article  Google Scholar 

  4. Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers, J., Little, R., Merson, P., Nord, R., Stafford, J.: Documenting Software Architecture: Views and Beyond. SEI, 2nd edn. Addison-Wesley, Boston (2011)

    Google Scholar 

  5. Cornelissen, B., Van Deursen, A., Moonen, L., Zaidman, A.: Visualizing testsuites to aid in software understanding. In: Proceedings of CSMR 2007, pp. 213–222. IEEE (2007). doi:10.1109/CSMR.2007.54

  6. Czarnecki, K., Helsen, S.: Classification of model transformation approaches. In: WS Proceedings of OOPSLA 2003, pp. 1–17. ACM Press (2003)

    Google Scholar 

  7. Delamare, R., Baudry, B., Le Traon, Y., et al.: Reverse-engineering of UML 2.0 sequence diagrams from execution traces. In: WS Proceedings of ECOOP 2006. Springer (2006)

    Google Scholar 

  8. Eclipse Foundation: Papyrus (2015). http://eclipse.org/papyrus/. Accessed 25 September 2015

  9. Falessi, D., Briand, L.C., Cantone, G., Capilla, R., Kruchten, P.: The value of design rationale information. ACM Trans. Softw. Eng. Methodol. 22(3), 21:1–21:32 (2013). doi:10.1145/2491509.2491515

    Article  Google Scholar 

  10. Fernández-Sáez, A.M., Genero, M., Chaudron, M.R., Caivano, D., Ramos, I.: Are forward designed or reverse-engineered UML diagrams more helpful for code maintenance? a family of experiments. Inform. Softw. Tech. 57, 644–663 (2015). doi:10.1016/j.infsof.2014.05.014

    Article  Google Scholar 

  11. Grati, H., Sahraoui, H., Poulin, P.: Extracting sequence diagrams from execution traces using interactive visualization. In: Proceedings of WCRE 2010, pp. 87–96. IEEE (2010). doi:10.1109/WCRE.2010.18

  12. Guéhéneuc, Y.G., Ziadi, T.: Automated reverse-engineering of UML v2.0 dynamic models. In: WS Proceedings of ECOOP 2005. Springer (2005)

    Google Scholar 

  13. Guerra, E., Lara, J., Kolovos, D.S., Paige, R.F., Santos, O.M.: Engineering model transformations with transML. Softw. Syst. Model. 12(3), 555–577 (2013). doi:10.1007/s10270-011-0211-2

    Article  Google Scholar 

  14. Haendler, T.: KaleidoScope. Institute for Information Systems and New Media. WU Vienna (2015). http://nm.wu.ac.at/nm/haendler. Accessed 25 September 2015

  15. Haendler, T., Sobernig, S., Strembeck, M.: An approach for the semi-automated derivation of UML interaction models from scenario-based runtime tests. In: Proceedings of ICSOFT-EA 2015, pp. 229–240. SciTePress (2015). doi:10.5220/0005519302290240

  16. Hamou-Lhadj, A., Lethbridge, T.C.: A survey of trace exploration tools and techniques. In: Proceedings of CASCON 2004, pp. 42–55. IBM Press (2004). http://dl.acm.org/citation.cfm?id=1034914.1034918

  17. Jacobson, I.: Object-Oriented Software Engineering: A Use Case Driven Approach. ACM Press Series. ACM Press, New York (1992)

    MATH  Google Scholar 

  18. Jarke, M., Bui, X.T., Carroll, J.M.: Scenario management: an interdisciplinary approach. Requirements Eng. 3(3), 155–173 (1998). doi:10.1007/s007660050002

    Article  Google Scholar 

  19. Kanstrén, T.: Towards a deeper understanding of test coverage. Softw. Maint. Evol. 20(1), 59–76 (2008). doi:10.1002/smr.362

    Article  Google Scholar 

  20. Lo, D., Maoz, S.: Mining scenario-based triggers and effects. In: Proceedings of ASE 2008, pp. 109–118. IEEE (2008). doi:10.1109/ASE.2008.21

  21. Nebut, C., Fleurey, F., Le Traon, Y., Jezequel, J.: Automatic test generation: a use case driven approach. IEEE Trans. Softw. Eng. 32(3), 140–155 (2006). doi:10.1109/TSE.2006.22

    Article  Google Scholar 

  22. Neumann, G., Sobernig, S.: Next scripting framework. API reference (2015). https://next-scripting.org/xowiki/. Accessed 25 September 2015

  23. Neumann, G., Zdun, U.: Filters as a language support for design patterns in object-oriented scripting languages. In: Proceedings of COOTS 1999, pp. 1–14. USENIX (1999). http://dl.acm.org/citation.cfm?id=1267992

  24. Object Management Group: Object Constraint Language (OCL) - Version 2.4 (2014). http://www.omg.org/spec/OCL/2.4/. Accessed 25 September 2015

  25. Object Management Group: Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification, Version 1.2, February 2015. http://www.omg.org/spec/QVT/1.2/. Accessed 25 September 2015

  26. Object Management Group: MOF 2 XMI Mapping Specification, Version 2.5.1, June 2015. http://www.omg.org/spec/XMI/2.5.1/. Accessed 25 September 2015

  27. Object Management Group: Unified Modeling Language (UML), Superstructure, Version 2.5.0, June 2015. http://www.omg.org/spec/UML/2.5. Accessed 25 September 2015

  28. Oechsle, R., Schmitt, T.: JAVAVIS: Automatic program visualization with object and sequence diagrams using the java debug interface (JDI). In: Diehl, S. (ed.) Dagstuhl Seminar 2001. LNCS, vol. 2269, pp. 176–190. Springer, Heidelberg (2002). doi:10.1007/3-540-45875-1_14

    Chapter  Google Scholar 

  29. Parizi, R.M., Lee, S.P., Dabbagh, M.: Achievements and challenges in state-of-the-art software traceability between test and code artifacts. Trans. Reliab. IEEE 63, 913–926 (2014). doi:10.1109/TR.2014.2338254

    Article  Google Scholar 

  30. Qusef, A., Bavota, G., Oliveto, R., de Lucia, A., Binkley, D.: Recovering test-to-code traceability using slicing and textual analysis. J. Syst. Softw. 88, 147–168 (2014). doi:10.1016/j.jss.2013.10.019

    Article  Google Scholar 

  31. Richner, T., Ducasse, S.: Recovering high-level views of object-oriented applications from static and dynamic information. In: Proceedings of ICSM 1999, pp. 13–22. IEEE (1999). http://dl.acm.org/citation.cfm?id=519621.853375

  32. Ryser, J., Glinz, M.: A scenario-based approach to validating and testing software systems using statecharts. In: Proceedings of ICSSEA 1999 (1999)

    Google Scholar 

  33. Sharp, R., Rountev, A.: Interactive exploration of UML sequence diagrams. In: Proceedings of VISSOFT 2005, pp. 1–6. IEEE (2005). doi:10.1109/VISSOF.2005.1684295

  34. Strembeck, M.: Testing policy-based systems with scenarios. In: Proceedings of IASTED 2011, pp. 64–71. ACTA Press (2011). doi:10.2316/P.2011.720-021

  35. Van Geet, J., Zaidman, A., Greevy, O., Hamou-Lhadj, A.: A lightweight approach to determining the adequacy of tests as documentation. In: Proceedings of PCODA 2006, pp. 21–26. IEEE CS (2006)

    Google Scholar 

  36. Zdun, U.: Patterns of tracing software structures and dependencies. In: Proceedings of EuroPLoP 2003, pp. 581–616. Universitaetsverlag Konstanz (2003)

    Google Scholar 

  37. Zdun, U., Strembeck, M., Neumann, G.: Object-based and class-based composition of transitive mixins. Inform. Softw. Tech. 49(8), 871–891 (2007). doi:10.1016/j.infsof.2006.10.001

    Article  Google Scholar 

  38. Ziadi, T., Da Silva, M.A.A., Hillah, L.M., Ziane, M.: A fully dynamic approach to the reverse engineering of UML sequence diagrams. In: Proceedings of ICECCS 2011, pp. 107–116. IEEE (2011). doi:10.1109/ICECCS.2011.18

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Thorsten Haendler .

Editor information

Editors and Affiliations

Appendix

Appendix

figure b

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Haendler, T., Sobernig, S., Strembeck, M. (2016). Deriving Tailored UML Interaction Models from Scenario-Based Runtime Tests. In: Lorenz, P., Cardoso, J., Maciaszek, L., van Sinderen, M. (eds) Software Technologies. ICSOFT 2015. Communications in Computer and Information Science, vol 586. Springer, Cham. https://doi.org/10.1007/978-3-319-30142-6_18

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-30142-6_18

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-30141-9

  • Online ISBN: 978-3-319-30142-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics