by Raúl Mazo, Roberto E. Lopez-Herrejon, Camille Salinesi, Daniel Diaz, Alexander Egyed
Abstract:
Developing high quality systems depends on developing high quality models. An important facet of model quality is their consistency with respect to their meta-model. We call the verification of this quality the conformance checking process. We are interested in the conformance checking of Product Line Models (PLMs). The problem in the context of product lines is that product models are not created by instantiating a meta-model: they are derived from PLMs. Therefore it is usually at the level of PLMs that conformance checking is applied. On the semantic level, a PLM is defined as the collection of all the product models that can be derived from it. Therefore checking the conformance of the PLM is equivalent to checking the conformance of all the product models. However, we would like to avoid this naïve approach because it is not scalable due to the high number of models. In fact, it is even sometimes infeasible to calculate the number of product models of a PLM. Despite the importance of PLM conformance checking, very few research works have been published and tools do not adequately support it. In this paper, we present an approach that employs Constraint Logic Programming as a technology on which to build a PLM conformance checking solution. The paper demonstrates the approach with feature models, the de facto standard for modeling software product lines. Based on an extensive literature review and an empirical study, we identified a set of 9 conformance checking rules and implemented them on the GNU Prolog constraints solver. We evaluated our approach by applying our rules to 50 feature models of sizes up to 10000 features. The evaluation showed that our approach is effective and scalable to industry size models.
Reference:
Conformance Checking with Constraint Logic Programming: The Case of Feature Models. (Raúl Mazo, Roberto E. Lopez-Herrejon, Camille Salinesi, Daniel Diaz, Alexander Egyed), In Proceedings of the 35th Computer Software and Applications Conference (COMPSAC 2011), Munich, Germany, IEEE Computer Society, 2011.
Bibtex Entry:
@Conference{DBLP:conf/compsac/MazoLSDE11,
author = {Raúl Mazo and Roberto E. Lopez-Herrejon and Camille Salinesi and Daniel Diaz and Alexander Egyed},
title = {Conformance Checking with Constraint Logic Programming: The Case of Feature Models.},
booktitle = {Proceedings of the 35th Computer Software and Applications Conference (COMPSAC 2011), Munich, Germany},
year = {2011},
pages = {456-465},
publisher = {IEEE Computer Society},
abstract = {Developing high quality systems depends on developing high quality
models. An important facet of model quality is their consistency
with respect to their meta-model. We call the verification of this
quality the conformance checking process. We are interested in the
conformance checking of Product Line Models (PLMs). The problem in
the context of product lines is that product models are not created
by instantiating a meta-model: they are derived from PLMs. Therefore
it is usually at the level of PLMs that conformance checking is applied.
On the semantic level, a PLM is defined as the collection of all
the product models that can be derived from it. Therefore checking
the conformance of the PLM is equivalent to checking the conformance
of all the product models. However, we would like to avoid this naïve
approach because it is not scalable due to the high number of models.
In fact, it is even sometimes infeasible to calculate the number
of product models of a PLM. Despite the importance of PLM conformance
checking, very few research works have been published and tools do
not adequately support it. In this paper, we present an approach
that employs Constraint Logic Programming as a technology on which
to build a PLM conformance checking solution. The paper demonstrates
the approach with feature models, the de facto standard for modeling
software product lines. Based on an extensive literature review and
an empirical study, we identified a set of 9 conformance checking
rules and implemented them on the GNU Prolog constraints solver.
We evaluated our approach by applying our rules to 50 feature models
of sizes up to 10000 features. The evaluation showed that our approach
is effective and scalable to industry size models.},
doi = {10.1109/COMPSAC.2011.66},
file = {:Conferences\\COMPSAC 2011 - Conformance Checking with Constraint Programming - A Case Study Using Feature Models\\Conformance Checking with Constraint Logic Programming - The Case of Feature Models-preprint.pdf:PDF},
keywords = {FWF P21321, EU IEF 254965},
}