Minimum/maximum delay testing of product lines with unbounded parametric real-time constraints☆
Introduction
Many promising formalisms and corresponding quality-assurance methodologies have been proposed in the recent past for specifying and efficiently analyzing functional and non-functional properties of families of similar (software) systems (so-called software product lines Schaefer and Hähnle, 2011). Most of these approach extend existing formalisms by adding constructs for modeling behavioral variability (Benduhn et al., 2015). In addition, a majority of these works employ the notion of feature to constitute explicitly configurable system parameters which—either implicitly or explicitly—occur as explicit syntactic entities in specification- and implementation-artifacts of product-line representations. Hence, features can be used to control automated assembling of product variants for a given product configuration (i.e., a valid selection of features). Correspondingly, product-line analysis strategies address the challenge of ensuring—at least up to a reasonable degree—correctness properties for every valid product variant with respect to a given specification of the product line under consideration (Thüm et al., 2014). In particular, performing variant-based analyses runs for every valid product configuration one-by-one in separate is infeasible for realistic product lines due to the exponential growth of the possible number of configurations in the number of features. To tackle this challenge, effective product-line analysis strategies are either based on sampling (i.e., defining feature-oriented criteria for selecting a small, yet considerably sufficient subset of variants on which out-of-the-box quality-assurance tools can be applied as usual), or they pursue family-based analysis (i.e., lifting established quality-assurance techniques to become variability-aware such that they are applicable to an integrated representation of the whole product family in a single analysis run).
However, in application contexts of product lines with real-time critical behaviors, we can observe that very little support for variability modeling and analysis exists so far. Here, featured timed automata (FTA) constitute one of the most promising approaches until now (Cordy et al., 2012). FTA are an extension of timed automata (TA) (Alur, Dill, 1990, Alur, Dill, 1994, Waez, Dingel, Rudie, 2013), a well-established modeling language for software systems with discrete event/continuous time behaviors. In particular, FTA extend TA by annotation-based variability-modeling (Czarnecki and Antkiewicz, 2005) and (symbolic) family-based product-line model-checking (Classen et al., 2011), based on an underlying featured transition systems (FTS) semantics (Classen et al., 2010).
A TA is defined as a state-transition graph as usual, where states are called locations and transitions between locations are called switches. In addition, a TA consists of a set of numeric and linearly increasing variables representing synchronously elapsing, yet independently resettable clocks. Critical timing behaviors on TA runs can be enforced using clock constraints, denoted as linear inequalities over clock values expressing time intervals with constant lower and upper bounds. Based on these clock constraints, TA models may incorporate guards for switches (i.e., time intervals in which a switch is allowed to be taken), and invariants for locations (i.e., time intervals in which it is allowed to reside in a location). FTA extend TA by the possibility to annotate both kinds of clock constraints as well as entire switches with feature constraints. In this way, feature constraints denote presence conditions for relating annotated modeling entities to respective product configurations. This additional variability information in FTA models facilitates family-based model-checking tools to efficiently verify real-time properties for whole product lines in a single analysis run (Cordy et al., 2013a).
However, the modeling capabilities of FTA for expressing variable real-time modeling are, by definition, limited to Boolean feature constraints by means of configuration-specific conditions over the presence of particular guards, invariants and entire switches within product variants. Nevertheless, behavioral variability in time-critical systems may further comprise configuration-specific bounds of time intervals in product variants. If the number of possible time intervals is finite, this kind of variability can be encoded into FTA, for instance, by enumerating all configuration-specific intervals, respectively. In contrast, freely adjustable and therefore a-priori unbounded (or, open) time intervals are neither directly expressible nor encodable in FTA. This is due to the inherent limitation of FTA to product lines with Boolean variability thus only supporting finite configuration spaces with a finite number of different TA model variants.
To this end, we recently proposed Configurable Parametric Timed Automata (CoPTA) as a new modeling formalism solving the aforementioned limitations of FTA (Luthmann et al., 2017). In this way, CoPTA serve as a novel modeling foundation for behavioral variability of product lines with time-critical behaviors. In particular, CoPTA combine principles of FTA with the those of parametric timed automata (PTA), a generalization of TA by parametric instead of constant lower and upper bounds of clock constraints (Henzinger et al., 1994). CoPTA models further employ FODA (Kang et al., 1990) feature diagrams extended with non-Boolean feature attributes and respective constraints to serve as configuration models for both Boolean as well as numeric variability. In this way, CoPTA models support parametric variability in terms of freely configurable numeric values for initially open bounds of configuration-specific time intervals thus comprising a (potentially) infinite number of different TA model variants. Hence, in contrast to FTA, the resulting infinite configuration spaces of CoPTA models make variant-by-variant analysis strategies practically impossible. Instead, we adapt a family-based test-suite generation methodology (Bürdek et al., 2015) to CoPTA models, ensuring location coverage on every model configuration. To this end, we enable incremental reuse of (symbolic) location-reachability information among configurations by utilizing the language-preservation theory which has been initially developed for PTA models (André and Markey, 2015).
Based on those techniques which we have initially presented in a previous work (Luthmann et al., 2017), we now further define an entirely novel—and more meaningful—coverage criterion on CoPTA models beyond location coverage, called Minimum/Maximum Delay (M/MD) coverage, for investigating more effectively time-critical behaviors of product lines with configurable real-time constraints. To this end, M/MD coverage requires every location in a CoPTA model to be reached by at least one test case on those configurations having minimum/maximum possible durations with respect to the given parametric real-time constraints (Courcoubetis and Yannakakis, 1992). In this way, M/MD coverage systematically identifies and stimulates best-case/worst-case execution-time behaviors on whole product lines which is widely considered particularly crucial in the context of real-time critical systems (Wilhelm et al., 2008). We extend the family-based test-suite generation methodology, accordingly, to ensure M/MD coverage on a given CoPTA model. This is achieved by a novel semantic-preserving augmentation of the given CoPTA model by means of an additional parametric clock for measuring the duration of a test-case run, respectively, during reachability analysis of a particular location. Based on the information obtained from this augmentation, we are able to apply an ILP-solver to derive precise minimizing/maximizing delay values for reaching those locations. By utilizing the inverse method of PTA, we are able to derive corresponding configuration constraints for runs having those minimum/maximum delay thus serving as test configurations for M/MD test coverage.
As a new challenge, the increased expressive power of CoPTA models as compared to FTA causes almost all non-trivial decision problems to become undecidable for PTA and thus for CoPTA (including the problem of reachability of locations being essential for automated test-case generation) (André, 2016). However, experiences gained from conducting our experimental evaluation performed on a collection of case studies indicate that problematic cases barely occur in practice. In addition, we revisit non-trivial sub-classes of PTA from the literature with (semi-)decidable properties, yet being effectively more expressive than FTA (André, 2016).
The contents of this article can be summarized as follows.
- •
Modeling formalism CoPTA enabling freely configurable real-time behaviors of product lines, thus improving expressiveness of existing approaches by facilitating infinite configuration spaces.
- •
Family-based test-suite generation methodology for CoPTA models for efficient test coverage of time-critical product lines.
- •
Novel coverage criterion M/MD (Minimum/Maximum Delay)and a corresponding family-based test-suite generation technique for systematically deriving test cases for identifying and investigating best-case/worst-case execution times of whole product lines.
- •
Tool support for automated family-based test-suite generation ensuring location coverage as well as M/MD coverage on every product variant based on the PTA analysis tool IMITATOR (André et al., 2012).
- •
Case studies demonstrating applicability and usefulness of the CoPTA language for specifying and testing product lines with real-time critical behaviors.
- •
Experimental evaluation results showing feasibility of family-based test-suite generation for location coverage and M/MD coverage on CoPTA models, by handling potentially infinite configuration spaces. Furthermore, in case of finite configuration spaces, our results reveal considerable efficiency improvements using family-based test-suite generation, as compared to a variant-by-variant approach.
The modeling formalism CoPTA, family-based test-suite generation technique for simple location coverage of CoPTA models as well as accompanying tool support and an initial experimental evaluation of this technique have been already presented in our previous work in Luthmann et al. (2017). In contrast, all parts about M/MD analysis augmentation, family-based test-suite generation for M/MD coverage as well as accompanying tool support, and the additional experiments for evaluating M/MD testing are original and novel contributions not yet published elsewhere.
The remainder of this article is organized as follows. In Section 2, we first describe preliminary notions and concepts of TA and FTA using a running example. In Section 3, we introduce our novel modeling formalism CoPTA, followed by Section 4, where we describe our family-based test-suite generation approach for CoPTA models with respect to location coverage and the novel M/MD coverage criterion. In Section 5, we describe details about our tool implementation as well as experimental evaluation results gained from several case studies adapted from recent literature on TA analysis. Finally, in Section 6, we describe related work on real-time modeling and analysis for product lines and in Section 7, we conclude and give a brief outlook on future work.
We provide our tool, the collection of CoPTA models used in our experiments as well as all experimental data on a supplementary Web page: www.es.tu-darmstadt.de/copta-analysis/.
Section snippets
Background and motivation
In the following section, we first describe a running example which we use throughout this article to illustrate our approach.
As our running example, we consider a slightly adapted version of the well-known Train-Gate-Controller (TGC) case study. The TGC case study has been frequently used in many recent works dealing with different aspects of time-critical behaviors (Leveson, Stolzy, 1985, Alur, Henzinger, Vardi, 1993). In particular, the TGC consists of three distributed components, namely
Configurable parametric real-time modeling
We now define Configurable Parametric Timed Automata(CoPTA), as an extension of Parametric Timed Automata (PTA) with featured clock constraints as initially proposed for Featured Timed Automta (FTA). To this end, we first revisit the basic notions and concepts of PTA and, thereupon, we define the formal syntax and operational semantics of CoPTA models.
Model-based testing of configurable parametric real-time behavior
In this section, we describe a methodology for automated generation of test suites from CoPTA models achieving a complete test coverage of all derivable TA variants. To this end, we first revisit basic notions of model-based real-time testing and then describe in detail our family-based algorithm for deriving complete test suites from CoPTA models. In addition to complete location coverage on every model variant, we propose as a novel criterion M/MD coverage for testing best-case/worst-case
Implementation and evaluation
We have implemented the concepts described in the previous section in a tool for family-based test-suite generation supporting both location coverage as well as our novel criterion M/MD coverage using CoPTA test models as input. The tool implementation further enabled us to conduct an experimental evaluation of the proposed techniques. In particular, we focus our evaluation on the following goals.
- 1.
We are interested in the potential improvements in efficiency achieved by our family-based
Related work
In this section, we discuss related work on modeling and model-based testing of real-time critical behaviors with special focus on variability modeling and product-line engineering.
Conclusion
We presented a novel modeling and model-based testing approach for product lines with potentially unbounded behavioral real-time constraints, called CoPTA. To this end, we combine concepts from FTA and PTA into a unified conceptual framework to enable efficient family-based test coverage of product lines with potentially infinite configuration spaces. We further propose an entirely novel coverage criterion, called M/MD coverage, extending the notion of location coverage by requiring
Lars Luthmann is a Ph.D. Student at the Real-Time Systems Laboratory of Prof. Andy Schürr at the TU Darmstadt. His main research activities are in the field of real-time software product lines and model-based testing. His research is part of the DFG project IMoTEP.
References (68)
- et al.
Scheduling with timed automata
Theor. Comput. Sci.
(2006) - et al.
A theory of timed automata
Theor. Comput. Sci.
(1994) - et al.
Facilitating Reuse in Multi-goal Test-Suite Generation for Software Product Lines
(2015) - et al.
Formal modeling and analysis of an audio/video protocol: an industrial case study using UPPAAL
Proceedings of the RTSS
(1997) - et al.
Linear parametric model checking of timed automata
J. Logic Algebr. Program.
(2002) - et al.
Integer parameter synthesis for real-Time systems
IEEE Trans. Software Eng.
(2015) - et al.
A classification and survey of analysis strategies for software product lines
CSUR
(2014) - et al.
Automata For Modeling Real-Time Systems
(1990) - et al.
Parametric Real-time Reasoning
Proceedings of the STOC
(1993) - et al.
Optimal Paths in Weighted Timed Automata
(2001)
Decision Problems for Timed Automata: A Survey
What’s Decidable About Parametric Timed Automata?
IMITATOR 2.5: a tool for analyzing robustness in scheduling problems
Decision Problems for Parametric Timed Automata
On the expressiveness of parametric timed automata
Language Preservation Problems in Parametric Timed Automata
Static guard analysis in timed automata verification
Minimum-cost reachability for priced timed automata
HSCC
Distributing timed model checking — How the search order matters
Efficient timed reachability analysis using clock difference diagrams
Optimal scheduling using priced timed automata
SIGMETRICS Perform. Eval. Rev.
JTorX: a tool for on-line model-driven test derivation and execution
A survey on modeling techniques for formal behavioral verification of software product lines
Proceedings of the VaMoS
Language emptiness of continuous-time parametric timed automata
Proceedings of the ICALP
Timed Automata: Semantics, Algorithms and Tools
Refinement and Consistency of Timed Modal Specifications
Verification of timeliness QoS properties in multimedia systems
Test Derivation from Timed Automata
On parametric timed automata and one-counter machines
Inf. Comput.
Symbolic model checking of software product lines
Proceedings of the ICSE
Model checking lots of systems: Efficient verification of temporal properties in software product lines
Proceedings of the ICSE
Provelines: a product line of verifiers for software product lines
Proceedings of the SPLC Workshops
A framework for the rigorous design of highly adaptive timed systems
Proceedings of the FormaliSE
Behavioural modelling and verification of real-time software product lines
Proceedings of the SPLC
Cited by (0)
Lars Luthmann is a Ph.D. Student at the Real-Time Systems Laboratory of Prof. Andy Schürr at the TU Darmstadt. His main research activities are in the field of real-time software product lines and model-based testing. His research is part of the DFG project IMoTEP.
Timo Gerecht graduated in computer science (M.Sc.) at the TU Darmstadt.
Andreas Stephan graduated in computer science (M.Sc.) at the TU Darmstadt.
Johannes Bürdek is a Ph.D. Student at the Real-Time Systems Laboratory of Prof. Andy Schürr. His main research activities are in the field of evolving software product lines and model-based testing.
Malte Lochau has a postdoc position at the Real-Time Systems Laboratory of Prof. Andy Schürr at the TU Darmstadt. His research interests are software product line engineering, model-based testing, and formal semantics. His research is part of the DFG project IMoTEP and the DFG SFB 1053 MAKI.