Feature Interaction Aware Test Case Generation for Embedded Control Systems

  • Authors:
  • Malte Lochau;Ursula Goltz

  • Affiliations:
  • Institute for Programming and Reactive Systems, TU Braunschweig, Germany;Institute for Programming and Reactive Systems, TU Braunschweig, Germany

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

The growing number and increased coupling of functionality in embedded control systems, e.g. in the automotive domain, leads to complex networks of interacting features and a wide range of variants. Hence, today's software development processes must include systematic approaches to analyze the functional correctness of system specifications and implementations. Model-based testing is of particular importance for embedded software systems as the test cases can be performed at the real system under test and failures arising from the interaction of software and hardware can be discovered. As features are usually designed in a modular and isolated way, unexpected and undesired behavior caused by unintended interferences of insufficiently synchronized and even contradicting features concurrently active in the system often remains undetected which may lead to serious safety problems. To overcome such feature interactions at system integration level is tedious as it leads to a voluminous number of unmanageable test cases. We describe a model-based approach for efficiently generating test cases that particularly aim at feature interaction analysis. We first characterize feature interaction in a formal way based on a rigorous functional architecture model, and describe how to detect potential feature interactions. For test case generation, behavioral models like Statecharts and according coverage criteria can be used as usual, but only those models are integrated into the test model, that contribute to one of the features under consideration. This leads to a trade off between comprehensive test coverage to find possible flaws caused by interacting features, and yet still a reasonable number of test cases. The steps of the approach are illustrated be means of a case study from the automotive domain.