«

»

Generating Counterexamples of Model-based Software Product Lines: An Exploratory Study

by Joao Bosco Ferreira Filho, Benoit Baudry, Olivier Barais, Jérôme Le Noir, Mathieu Acher
Abstract:
Model-based Software Product Line (MSPL) engineering ai- ms at deriving customized models corresponding to individ- ual products of a family. MSPL approaches usually promote the joint use of a variability model, a base model expressed in a specific formalism, and a realization layer that maps variation points to model elements. The design space of an MSPL is extremely complex to manage for the engineer, since the number of variants may be exponential and the derived product models have to be conformant to numerous well-formedness and business rules. In this paper, the objec- tive is to provide a way to generate MSPLs, called counterex- amples, that can produce invalid product models despite a valid configuration in the variability model. We provide a systematic and automated process, based on the Common Variability Language (CVL), to randomly search the space of MSPLs for a specific formalism. We validate the effective- ness of this process for three formalisms at different scales (up to 247 metaclasses and 684 rules). We also explore and discuss how counterexamples could guide practitioners when customizing derivation engines, when implementing check- ing rules that prevent early incorrect CVL models, or simply when specifying an MSPL.
Reference:
Generating Counterexamples of Model-based Software Product Lines: An Exploratory Study (Joao Bosco Ferreira Filho, Benoit Baudry, Olivier Barais, Jérôme Le Noir, Mathieu Acher), In Int. Software Product Line Conf. (SPLC), 2013.
Bibtex Entry:
@inproceedings{ferreirafilho13,
    keywords = {MDE, SPL},
    year = {2013},
    title = {{Generating Counterexamples of Model-based Software Product Lines: An Exploratory Study}},
    author = {Ferreira Filho, Joao Bosco and Baudry, Benoit and Barais, Olivier and Le Noir, J{'e}r{^o}me and Acher, Mathieu},
    abstract = {{Model-based Software Product Line (MSPL) engineering ai- ms at deriving customized models corresponding to individ- ual products of a family. MSPL approaches usually promote the joint use of a variability model, a base model expressed in a specific formalism, and a realization layer that maps variation points to model elements. The design space of an MSPL is extremely complex to manage for the engineer, since the number of variants may be exponential and the derived product models have to be conformant to numerous well-formedness and business rules. In this paper, the objec- tive is to provide a way to generate MSPLs, called counterex- amples, that can produce invalid product models despite a valid configuration in the variability model. We provide a systematic and automated process, based on the Common Variability Language (CVL), to randomly search the space of MSPLs for a specific formalism. We validate the effective- ness of this process for three formalisms at different scales (up to 247 metaclasses and 684 rules). We also explore and discuss how counterexamples could guide practitioners when customizing derivation engines, when implementing check- ing rules that prevent early incorrect CVL models, or simply when specifying an MSPL.}},
    booktitle = {{Int. Software Product Line Conf. (SPLC)}},
  	X-International-Audience = {yes},
  	X-Language = {EN},
  	x-abbrv = {SPLC},
    url = {http://hal.inria.fr/hal-00837523/PDF/SPLC2013.pdf},
}