A Product Line of Verifiers for Software Product Lines

Software Product Lines (SPLs) are families of similar software products built from a common set of features. As the number of products of an SPL is potentially exponential in the number of its features, the model checking problem is harder than for single software. A practical way to face this exponential blow-up is to reuse common behaviour between products. We previously introduced Featured Transition Systems (FTS), a mathematical model that serves as a basis for ecient SPL model checking techniques. In this paper, we present ProVeLines, a product line of veriers for SPLs that incorporates the results of over three years of research on formal verication of SPLs. Being itself a product line, our tool is exible and extensible, and oers a wide range of solutions for SPL modelling and verication.

[1]  Pierre-Yves Schobbens,et al.  Behavioural modelling and verification of real-time software product lines , 2012, SPLC '12.

[2]  Pierre-Yves Schobbens,et al.  Simulation-based abstractions for software product-line model checking , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[3]  Andreas Classen,et al.  A text-based approach to feature modelling: Syntax and semantics of TVL , 2011, Sci. Comput. Program..

[4]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[5]  Pierre-Yves Schobbens,et al.  Featured Transition Systems: Foundations for Verifying Variability-Intensive Systems and Their Application to LTL Model Checking , 2013, IEEE Transactions on Software Engineering.

[6]  Maurice H. ter Beek,et al.  VMC: A Tool for Product Variability Analysis , 2012, FM.

[7]  Pierre-Yves Schobbens,et al.  Model checking lots of systems: efficient verification of temporal properties in software product lines , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[8]  Shige Wang,et al.  A feature-oriented requirements modelling language , 2012, 2012 20th IEEE International Requirements Engineering Conference (RE).

[9]  Wang Yi,et al.  UPPAAL in 1995 , 1996, TACAS.

[10]  Mark Ryan,et al.  Feature integration using a feature construct , 2001, Sci. Comput. Program..

[11]  Pierre-Yves Schobbens,et al.  Symbolic model checking of software product lines , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[12]  Maurice H. ter Beek,et al.  Formal Description of Variability in Product Families , 2011, 2011 15th International Software Product Line Conference.

[13]  Gerard J. Holzmann,et al.  The SPIN Model Checker - primer and reference manual , 2003 .

[14]  Sven Apel,et al.  Detection of feature interactions using feature-aware verification , 2011, 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011).

[15]  Marco Pistore,et al.  Nusmv version 2: an opensource tool for symbolic model checking , 2002, CAV 2002.

[16]  Christel Baier,et al.  Principles of model checking , 2008 .

[17]  Randal E. Bryant,et al.  Symbolic Boolean manipulation with ordered binary-decision diagrams , 1992, CSUR.

[18]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.

[19]  Pierre-Yves Schobbens,et al.  Beyond Boolean product-line model checking: Dealing with feature attributes and multi-features , 2013, 2013 35th International Conference on Software Engineering (ICSE).