[[Description::Effective Model-Based Testing of Concurrent Systems (EFFEMBAC)
A research project funded by the Swedish Research Council| ]]
Effective Model-Based Testing of Concurrent Systems
a research project funded by the Swedish Research Council
Testing and debugging account for more than half of the software development costs and are becoming serious bottlenecks in the software development process. The problem is intensified in embedded systems due to the tight coupling between software and its hardware platform and the increasing level of concurrency and distribution; hence, embedded software is often tested too late and too little and in an ad-hoc and unstructured manner. Concurrency faults are particularly difficult to find and are extremely difficult to reproduce. Due to their critical application areas, faults in embedded systems may turn into failures with very severe consequences; see for several instances of failures in the healthcare domain.
A promising solution to testing issues lies in Model-Based Testing (MBT), which provides a structured approach to testing from high-level behavioral models. Our vision is that MBT is instrumental in mechanizing the test process. Embedded software is particularly suitable for MBT, because behavioral and reactive aspects, emphasized by MBT, play a prominent role in its correctness. Three issues hamper the application of MBT: First, abstract models of interface behavior are rarely available. Second, even when models are available, selecting and generating concrete test-cases (including test-data selection), with sufficient coverage is far from trivial. Third, current MBT practices do not scale up to distributed and concurrent systems. We overcome these major obstacles by exploiting structural information from the specification and the system under test in order to enrich the initial test models, to structure the test suite in a compositional manner and to effectively choose data and increase model and implementation coverage. The general objectives of our research agenda are summarized below:
- Using domain-specific abstractions as starting points for test models,
- Augmenting behavioral models with structural information from the implementation domain in order to generate effective concrete test-cases,
- Devising effective mechanized test-data-selection criteria, by integrating model- and implementation-based information as well as redefining test-adequacy in this hybrid setting,
- Enabling compositional testing for concurrent systems in order to manage complexity,
- Devising concrete design for testability guidelines for a semantic model of specification languages and translating them to examples of domain-specific languages.
To our knowledge, no solution integrating the above-mentioned aspects has been provided hitherto; once provided, such a solution will remove the above-mentioned three obstacles in applying MBT. The proposed research is very timely, witnessed by the constant developments in the proposed areas and recent partial solutions.
- Sebastian Kunze, Ph.D. Student
- Mohammad Mousavi, Principal Investigator
- Masoumeh Taromi Rad, Postdoctoral Researcher
Mohammad Mousavi, Professor of Computer Systems Engineering