Environment Modeling with UML/MARTE to Support Black-Box System Testing for Real-Time Embedded Systems: Methodology and Industrial Case Studies
The behavior of real-time embedded systems (RTES) is driven by their environment. Independent system test teams normally focus on black-box testing as they have typically no easy access to precise design information. Black-box testing in this context is mostly about selecting test scenarios that are more likely to lead to unsafe situations in the environment. Our Model-Based Testing (MBT) methodology explicitly models key properties of the environment, its interactions with the RTES, and potentially unsafe situations triggered by failures of the RTES under test. Though environment modeling is not new, we propose a precise methodology fitting our specific purpose, based on a language that is familiar to software testers, that is the UML and its extensions, as opposed to technologies geared towards simulating natural phenomena. Furthermore, in our context, simulation should only be concerned with what is visible to the RTES under test. Our methodology, focused on black-box MBT, was assessed on two industrial case studies. We show how the models are used to fully automate black-box testing using search-based test case generation techniques and the generation of code simulating the environment.
KeywordsState Machine Environment Modeling Object Constraint Language System Under Test Domain Specific Language
Unable to display preview. Download preview PDF.
- 1.OMG: Modeling and Analysis of Real-time and Embedded systems (MARTE), Version 1.0 (2009), http://www.omg.org/spec/MARTE/1.0/
- 2.Kishi, T., Noda, N.: Aspect-oriented Context Modeling for Embedded Systems. In: Workshop on Early Aspects: Aspect-Oriented Requirements Engineering and Architecture Design, pp. 68–74 (2004)Google Scholar
- 4.Choi, K.S., Jung, S.C., Kim, H.J., Bae, D.H., Lee, D.H.: UML-based Modeling and Simulation Method for Mission-Critical Real-Time Embedded System Development. In: IASTED International Conference Proceedings pp. 160–165 (2006)Google Scholar
- 5.Kreiner, C., Steger, C., Weiss, R.: Improvement of Control Software for Automatic Logistic Systems Using Executable Environment Models. In: EUROMICRO 1998: Proceedings of the 24th Conference on EUROMICRO, pp. 20919–20923. IEEE Computer Society, Los Alamitos (1998)Google Scholar
- 6.Axelsson, J.: Unified Modeling of Real-Time Control Systems and Their Physical Environments Using UML. In: Eighth Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems (ECBS 2001), p. 18 (2001)Google Scholar
- 7.Gomaa, H.: Designing Concurrent, Distributed And Real-Time Applications With UML. Addison-Wesley Educational Publishers Inc., Reading (2000)Google Scholar
- 8.Friedenthal, S., Moore, A., Steiner, R.: A Practical Guide to SysML: The Systems Modeling Language. Elsevier, Amsterdam (2008)Google Scholar
- 12.Heisel, M., Hatebur, D., Santen, T., Seifert, D.: Testing Against Requirements Using UML Environment Models. In: Fachgruppentreffen Requirements Engineering und Test, Analyse & Verifikation, pp. 28–31. GI (2008)Google Scholar
- 14.Larman, C.: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process. Prentice Hall PTR, Upper Saddle River (2001)Google Scholar
- 15.Arcuri, A., Iqbal, M.Z., Briand, L.: Black-box System Testing of Real-Time Embedded Systems Using Random and Search-based Testing. Technical Report, Simula Research Laboratory (2010)Google Scholar