LGSEMLMay 30, 2018

Towards Adversarial Configurations for Software Product Lines

arXiv:1805.12021v16 citations
Originality Incremental advance
AI Analysis

This addresses the problem of configuration reliability in SPLs for software engineers, offering an incremental improvement over existing ML-based methods.

The paper tackles the challenge of ensuring all configurations in software product lines (SPLs) lead to acceptable products by introducing adversarial configurations using machine learning techniques, showing improvements in classifier performance, variability models, implementation, and testing oracles on an industrial video generator.

Ensuring that all supposedly valid configurations of a software product line (SPL) lead to well-formed and acceptable products is challenging since it is most of the time impractical to enumerate and test all individual products of an SPL. Machine learning classifiers have been recently used to predict the acceptability of products associated with unseen configurations. For some configurations, a tiny change in their feature values can make them pass from acceptable to non-acceptable regarding users' requirements and vice-versa. In this paper, we introduce the idea of leveraging these specific configurations and their positions in the feature space to improve the classifier and therefore the engineering of an SPL. Starting from a variability model, we propose to use Adversarial Machine Learning techniques to create new, adversarial configurations out of already known configurations by modifying their feature values. Using an industrial video generator we show how adversarial configurations can improve not only the classifier, but also the variability model, the variability implementation, and the testing oracle.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes