Learning Feature Interactions With and Without Specifications

04/16/2021
by   Seyedehzahra Khoshmanesh, et al.
0

Features in product lines and highly configurable systems can interact in ways that are contrary to developers' intent. Current methods to identify such unanticipated feature interactions are costly and inadequate. To address this problem we propose a new approach to learn feature interactions, both in those product lines where constraints on feature combinations are specified and in feature-rich configurable systems where such specifications often are not available. The contribution of the paper is to use program analysis to extract feature-relevant learning models from the source code in order to detect unwanted feature interactions. Where specifications of feature constraints are unavailable, our approach infers the constraints using feature-related data-flow dependency information. Evaluation in experiments on three software product line benchmarks and a highly configurable system shows that this approach is fast and effective. The contribution is to support developers by automatically detecting feature combinations in a new product or version that can interact in unwanted or unrecognized ways. This enables better understanding of latent interactions and identifies software components that should be tested together because their features interact in some configurations.

READ FULL TEXT
research
09/15/2020

Does Link Prediction Help Detect Feature Interactions in Software Product Lines (SPLs)?

An ongoing challenge for the requirements engineering of software produc...
research
12/20/2017

On the Relation of External and Internal Feature Interactions: A Case Study

Detecting feature interactions is imperative for accurately predicting p...
research
09/06/2023

Requirements Analysis of Variability Constraints in a Configurable Flight Software System

Variability constraints are an integral part of the requirements for a c...
research
03/09/2022

An Empirical Eye-Tracking Study of Feature Model Comprehension

Software Product Lines (SPLs) are families of related software systems w...
research
08/26/2020

Generic Analysis of Model Product Lines via Constraint Lifting

Engineering a product-line is more than just describing a product-line: ...
research
07/20/2023

Software Product Line Engineering via Software Transplantation

For companies producing related products, a Software Product Line (SPL) ...
research
07/11/2020

Feature Interactions in XGBoost

In this paper, we investigate how feature interactions can be identified...

Please sign up or login with your details

Forgot password? Click here to reset