Skip to main content

Property-Aware Unit Testing of UML-RT Models in the Context of MDE

  • Conference paper
  • First Online:
Modelling Foundations and Applications (ECMFA 2018)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 10890))

Included in the following conference series:

Abstract

Modern cyber-physical systems are complex to model due, among other things, to timing constraints and complex communications between components of such systems. Therefore, testing models of these systems is not straightforward. This paper presents an approach for automatically testing components of UML-RT models with respect to a set of formally defined properties. Compared to existing model-based techniques where abstract test cases are complemented with their concrete counterparts, our approach solely leverages on constructs provided by the modeling language to express all artifacts (component to test, test harness, the property of interest) and existing code generator to generate test cases. This helps to reduce the cost of ensuring the consistency between code- and model-level tests. Moreover, to reduce the number of test cases and the associated cost, our approach integrates our test case generators with slicing techniques to reduce the size of the components. A prototype implementation has been sketched and our approach has been evaluated over two case studies.

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.

    The tool along with the sample models presented in this paper can be found at: https://bitbucket.org/rezaahmadi/umlrtunit.

  2. 2.

    The complete model can be found at: https://bitbucket.org/rezaahmadi/umlrtunit.

References

  1. Testing solutions with UML/SysML (2010). http://www.artist-embedded.org/docs/Events/2010/UML_AADL/slides/Session1_Matthew_Hause.pdf. Accessed 06 Jan 2018

  2. Model-Based Systems Engineering Design of an Automobile Collision Avoidance System (2011). https://www.isr.umd.edu/~austin/enes489p/projects2011a/CollisionAvoidance-FinalReport.pdf. Accessed 06 Jan 2018

  3. A collection of well-known software failures (2016). http://www.cse.psu.edu/~gxt29/bug/softwarebug.html. Accessed 25 Aug 2016

  4. Androutsopoulos, K., Clark, D., Harman, M., Hierons, R.M., Li, Z., Tratt, L.: Amorphous slicing of extended finite state machines. IEEE Trans. Softw. Eng. 39(7), 892–909 (2013)

    Article  Google Scholar 

  5. Bordeleau, F., Fiallos, E.: Model-based engineering: a new era based on Papyrus and open source tooling. In: OSS4MDE@ MoDELS, pp. 2–8 (2014)

    Google Scholar 

  6. Cadar, C., Sen, K.: Symbolic execution for software testing: three decades later. Commun. ACM 56(2), 82–90 (2013)

    Article  Google Scholar 

  7. Clarke, D., Jéron, T., Rusu, V., Zinovieva, E.: STG: a symbolic test generation tool. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, pp. 470–475. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-46002-0_34

    Chapter  Google Scholar 

  8. Colby, C., Godefroid, P., Jagadeesan, L.J.: Automatically closing open reactive programs. In: ACM SIGPLAN Notices, vol. 33, pp. 345–357. ACM (1998)

    Article  Google Scholar 

  9. Drusinsky, D.: Modeling and Verification Using UML Statecharts: a Working Guide to Reactive System Design, Runtime Monitoring and Execution-Based Model Checking (2011)

    Google Scholar 

  10. Drusinsky, D.: Practical UML-Based Specification, Validation, and Verification of Mission-Critical Software: Space Exploration and Defense Software Examples in Practice. Dog Ear Publishing, Indianapolis (2011)

    Google Scholar 

  11. Feilkas, M., Fleischmann, A., Pfaller, C., Spichkova, M., Trachtenherz, D., et al.: A top-down methodology for the development of automotive software (2009)

    Google Scholar 

  12. Grossmann, J., Serbanescu, D., Schieferdecker, I.: Testing embedded real time systems with TTCN-3. In: International Conference on Software Testing Verification and Validation, ICST 2009, pp. 81–90. IEEE (2009)

    Google Scholar 

  13. Hessel, A., Larsen, K., Mikucionis, M., Nielsen, B., Pettersson, P., Skou, A.: Testing real-time systems using UPPAAL. In: Formal Methods and Testing, pp. 77–117 (2008)

    Google Scholar 

  14. Jagadeesan, L.J., Porter, A., Puchol, C., Ramming, J.C., Votta, L.G.: Specification-based testing of reactive software: tools and experiments: experience report. In: Proceedings of the 19th International Conference on Software Engineering, pp. 525–535. ACM (1997)

    Google Scholar 

  15. Jard, C., Jéron, T.: TGV: theory, principles and algorithms. Int. J. Softw. Tools Technol. Transf. (STTT) 7(4), 297–315 (2005)

    Article  Google Scholar 

  16. Joshi, A., Heimdahl, M.P.E.: Model-based safety analysis of simulink models using SCADE design verifier. In: Winther, R., Gran, B.A., Dahll, G. (eds.) SAFECOMP 2005. LNCS, vol. 3688, pp. 122–135. Springer, Heidelberg (2005). https://doi.org/10.1007/11563228_10

    Chapter  Google Scholar 

  17. Dominguez, A.L.J.: Detection of feature interactions in automotive active safety features. Ph.D. thesis, University of Waterloo (2012)

    Google Scholar 

  18. Jussien, N., Rochart, G., Lorca, X.: Choco: an open source java constraint programming library. In: CPAIOR 2008 Workshop on Open-Source Software for Integer and Contraint Programming (OSSICP 2008), pp. 1–10 (2008)

    Google Scholar 

  19. Kim, Y.G., Hong, H.S., Bae, D.-H., Cha, S.D.: Test cases generation from UML state diagrams. IEE Proc.-Softw. 146(4), 187–192 (1999)

    Article  Google Scholar 

  20. Korel, B., Singh, I., Tahat, L., Vaysburg, B.: Slicing of state-based models. In: Proceedings of the International Conference on Software Maintenance, ICSM 2003, pp. 34–43. IEEE (2003)

    Google Scholar 

  21. Li, S., Wang, J., Qi, Z.-C.: Property-oriented test generation from UML statecharts. In: Proceedings of the 19th IEEE International Conference on Automated Software Engineering, pp. 122–131. IEEE Computer Society (2004)

    Google Scholar 

  22. Mealy, G.H.: A method for synthesizing sequential circuits. Bell Labs Tech. J. 34(5), 1045–1079 (1955)

    Article  MathSciNet  Google Scholar 

  23. Offutt, J., Liu, S., Abdurazik, A., Ammann, P.: Generating test data from state-based specifications. Softw. Test. Verification Reliab. 13(1), 25–53 (2003)

    Article  Google Scholar 

  24. Posse, E., Dingel, J.: An executable formal semantics for UML-RT. Softw. Syst. Model. 15(1), 179–217 (2016)

    Article  Google Scholar 

  25. Pretschner, A., Philipps, J.: 10 methodological issues in model-based testing. In: Broy, M., Jonsson, B., Katoen, J.-P., Leucker, M., Pretschner, A. (eds.) Model-Based Testing of Reactive Systems. LNCS, vol. 3472, pp. 281–291. Springer, Heidelberg (2005). https://doi.org/10.1007/11498490_13

    Chapter  Google Scholar 

  26. Pretschner, A., Philipps, J.: 10 methodological issues in model-based testing. In: Broy, M., Jonsson, B., Katoen, J.-P., Leucker, M., Pretschner, A. (eds.) Model-Based Testing of Reactive Systems. LNCS, vol. 3472, pp. 11–18. Springer, Heidelberg (2005). https://doi.org/10.1007/11498490_13

    Chapter  Google Scholar 

  27. Rapos, E.J., Dingel, J.: Incremental test case generation for UML-RT models using symbolic execution. In: 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation (ICST), pp. 962–963. IEEE (2012)

    Google Scholar 

  28. Selic, B.: Using UML for modeling complex real-time systems. In: Mueller, F., Bestavros, A. (eds.) LCTES 1998. LNCS, vol. 1474, pp. 250–260. Springer, Heidelberg (1998). https://doi.org/10.1007/BFb0057795

    Chapter  Google Scholar 

  29. Selic, B., Gullekson, G., Ward, P.T.: Real-Time Object-Oriented Modeling, vol. 2. Wiley, New York (1994)

    MATH  Google Scholar 

  30. Generating tests from UML specifications: generating tests from UML specifications. The Unified Modeling Language, p. 76 (1999)

    Google Scholar 

  31. Tkachuk, O.: Domain-Specific Environment Generation for Modular Software Model Checking. Kansas State University, Manhattan (2008)

    Google Scholar 

  32. Utting, M., Pretschner, A., Legeard, B.: A taxonomy of model-based testing approaches. Softw. Test. Verification Reliab. 22(5), 297–312 (2012)

    Article  Google Scholar 

  33. Willcock, C., Dei, T., Tobies, S., Keil, S., Engler, F., Schulz, S.: An Introduction to TTCN-3, vol. 2. Wiley, Hoboken (2005)

    Book  Google Scholar 

  34. Zurowska, K., Dingel, J.: Symbolic execution of UML-RT state machines. In: Proceedings of the 27th Annual ACM Symposium on Applied Computing, pp. 1292–1299. ACM (2012)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Reza Ahmadi , Nicolas Hili or Juergen Dingel .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Ahmadi, R., Hili, N., Dingel, J. (2018). Property-Aware Unit Testing of UML-RT Models in the Context of MDE. In: Pierantonio, A., Trujillo, S. (eds) Modelling Foundations and Applications. ECMFA 2018. Lecture Notes in Computer Science(), vol 10890. Springer, Cham. https://doi.org/10.1007/978-3-319-92997-2_10

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-92997-2_10

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-92996-5

  • Online ISBN: 978-3-319-92997-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics