by Deepak Dhungana, Paul Grünbacher, Rick Rabiser, Thomas Neumayer
Abstract:
The scale and complexity of product lines means that it is practically infeasible to develop a single model of the entire system, regardless of the languages or notations used. The dynamic nature of real-world systems means that product line models need to evolve continuously to meet new customer requirements and to reflect changes of product line artifacts. To address these challenges, product line engineers need to apply different strategies for structuring the modeling space to ease the creation and maintenance of models. This paper presents an approach that aims at reducing the maintenance effort by organizing product lines as a set of interrelated model fragments defining the variability of particular parts of the system. We provide support to semi-automatically merge fragments into complete product line models. We also provide support to automatically detect inconsistencies between product line artifacts and the models representing these artifacts after changes. Furthermore, our approach supports the co-evolution of models and their respective meta-models. We discuss strategies for structuring the modeling space and show the usefulness of our approach using real-world examples from our ongoing industry collaboration.
Reference:
Structuring the modeling space and supporting evolution in software product line engineering (Deepak Dhungana, Paul Grünbacher, Rick Rabiser, Thomas Neumayer), In Journal of Systems and Software, volume 83, 2010.
Bibtex Entry:
@ARTICLE{Dhungana2010,
author = {Deepak Dhungana and Paul Grünbacher and Rick Rabiser and Thomas Neumayer},
title = {Structuring the modeling space and supporting evolution in software
product line engineering},
journal = {Journal of Systems and Software},
year = {2010},
volume = {83},
pages = {1108-1122},
number = {7},
abstract = {The scale and complexity of product lines means that it is practically
infeasible to develop a single model of the entire system, regardless
of the languages or notations used. The dynamic nature of real-world
systems means that product line models need to evolve continuously
to meet new customer requirements and to reflect changes of product
line artifacts. To address these challenges, product line engineers
need to apply different strategies for structuring the modeling space
to ease the creation and maintenance of models. This paper presents
an approach that aims at reducing the maintenance effort by organizing
product lines as a set of interrelated model fragments defining the
variability of particular parts of the system. We provide support
to semi-automatically merge fragments into complete product line
models. We also provide support to automatically detect inconsistencies
between product line artifacts and the models representing these
artifacts after changes. Furthermore, our approach supports the co-evolution
of models and their respective meta-models. We discuss strategies
for structuring the modeling space and show the usefulness of our
approach using real-world examples from our ongoing industry collaboration.},
doi = {10.1016/j.jss.2010.02.018},
keywords = {CD Lab ASE}
}