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

    12 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