Guiding the Evolution of Product-Line Configurations

Michael Nieke, Gabriela Sampaio, Thomas Thüm, Christoph Seidl, Leopoldo Teixeira, Ina Schaefer

Research output: Journal Article or Conference Article in JournalJournal articleResearchpeer-review

Abstract

A product line is an approach for systematically managing configuration options of customizable systems, usually by means of features. Products are generated for configurations consisting of selected features. Product-line evolution can lead to unintended changes to product behavior. We illustrate that updating configurations after product-line evolution requires decisions of both, domain engineers responsible for product-line evolution as well as application engineers responsible for configurations. The challenge is that domain and application engineers might not be able to interact with each other. We propose a formal foundation and a methodology that enables domain engineers to guide application engineers through configuration evolution by sharing knowledge on product-line evolution and by defining automatic update operations for configurations. As an effect, we enable knowledge transfer between those engineers without the need for interactions. We evaluate our methodology on four large-scale industrial product lines. The results of the qualitative evaluation indicate that our method is flexible enough for real-world product-line evolution. The quantitative evaluation indicates that we detect product behavior changes for up to 55.3% of the configurations which would not have been detected using existing methods.
Original languageEnglish
JournalSoftware & Systems Modeling (SoSyM)
Volume21
Pages (from-to)225–247
DOIs
Publication statusPublished - 2022

Keywords

  • Product line
  • Product-line evolution
  • Guided feature configuration evolution
  • Product behavior preservation

Fingerprint

Dive into the research topics of 'Guiding the Evolution of Product-Line Configurations'. Together they form a unique fingerprint.

Cite this