Dr. rer. nat. Johannes Bürdek
Automation engineers are regularly faced with the problem to maintain long living safety critical process control software families. A promising paradigm for developing this type of software efficiently is (dynamic) software product line (SPL) engineering; it supports the systematic development of software product families of similar applications. However, existing SPL approaches offer only little support for integrated quality assurance and evolution of software over time. In particular, there exist only few approaches and no concise methodology for testing evolving SPLs and their applications until now. For automation systems, there is a particular need for such a support, since here modifications often have to be conducted under hard safety constraints—sometimes even in a running system.
We hence propose an approach for managed dynamic SPL evolution in the automation engineering domain with a particular focus on efficient model-based testing techniques. SPL test suites needed for (1) systematic offline testing of representative sets of products in their development environments and (2) online testing of reconfigurating products in their runtime environments are generated and incrementally updated using a mixture of model checking, constraint solving, and model transformation techniques. Integrated general purpose feature modeling and domain-specific (test) modeling languages are used together with standard model- and new feature model/interaction-based coverage criteria for that purpose. The involved models and their metamodels as well as the associated model processing algorithms are used both at design and runtime. The overall aim is to support both predefined reconfigurations of products and unforeseen evolution of full product lines with a specific focus on the adaptation of their test suites.
IMoTEP in cooperation with IPS/TU Braunschweig.