Proceedings paper

Automated Repairing of Variability Models
P. Arcaini, A. Gargantini, P. Vavassori
Proceedings of the 21st International Systems and Software Product Line Conference - Volume A

Variability models are a common means for describing the commonalities and differences in Software Product Lines (SPL); configurations of the SPL that respect the constraints imposed by the variability model define the problem space. The same variability is usually also captured in the final implementation through implementation constraints, defined in terms of preprocessor directives, build files, build-time errors, etc. Configurations satisfying the implementation constraints and producing correct (compilable) programs define the solution space. Since sometimes the variability model is defined after the implementation exists, it could wrongly assess the validity of some system configurations, i.e., it could consider acceptable some configurations (not belonging to the solution space) that do not permit to obtain a correct program. We here propose an approach that automatically repairs variability models such that the configurations they consider valid are also part of the solution space. Experiments show that some existing variability models are indeed faulty and can be repaired by our approach.

    title = {{Automated Repairing of Variability Models}},
    author = {Arcaini, Paolo and Gargantini, Angelo and Vavassori, Paolo},
    year = {2017},
    booktitle = {{Proceedings of the 21st International Systems and Software Product Line Conference - Volume A}},
    publisher = {ACM},
    series = {{SPLC '17}},
    location = {Sevilla, Spain},
    doi = {10.1145/3106195.3106206},
    isbn = {978-1-4503-5221-5},
    pages = {9--18},
    url = {},