We're Not Gonna Break It! Consistency-Preserving Operators for Efficient Product Line Configuration

Jose Miguel Horcas, Daniel Strüber*, Alexandru Burdusel, Jabier Martinez, Steffen Zschaler

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

10 Citations (Scopus)

Abstract

When configuring a software product line, finding a good trade-off between multiple orthogonal quality concerns is a challenging multi-objective optimisation problem. State-of-the-art solutions based on search-based techniques create invalid configurations in intermediate steps, requiring additional repair actions that reduce the efficiency of the search. In this work, we introduce consistency-preserving configuration operators (CPCOs) - genetic operators that maintain valid configurations throughout the entire search. CPCOs bundle coherent sets of changes: the activation or deactivation of a particular feature together with other (de)activations that are needed to preserve validity. In our evaluation, our instantiation of the IBEA algorithm with CPCOs outperforms two state-of-the-art tools for optimal product line configuration in terms of both speed and solution quality. The improvements are especially pronounced in large product lines with thousands of features.

Original languageEnglish
Pages (from-to)1102-1117
Number of pages16
JournalIEEE Transactions on Software Engineering
Volume49
Issue number3
DOIs
Publication statusPublished - 1 Mar 2023

Keywords

  • Software product lines
  • feature model configuration
  • search-based software engineering

Fingerprint

Dive into the research topics of 'We're Not Gonna Break It! Consistency-Preserving Operators for Efficient Product Line Configuration'. Together they form a unique fingerprint.

Cite this