论文标题
链接预测是否有助于检测软件产品线(SPL)中的特征交互?
Does Link Prediction Help Detect Feature Interactions in Software Product Lines (SPLs)?
论文作者
论文摘要
针对软件产品线的需求工程的持续挑战是预测新的功能(功能单位)是否会产生不必要的功能相互作用。因此,我们寻求改善和自动化开发早期不需要的特征相互作用的预测。在本文中,我们展示了如何有效地表示软件产品线中不需要的特征交互的检测是一个链接预测问题。链接预测使用机器学习算法和图节点之间的相似性分数来识别可能的新边缘。在这里,我们将软件产品线的功能作为节点和边缘功能之间不需要的交互作用进行建模。我们研究了六个基于链接的相似性指标,其中一些使用本地和一些使用该图的全局知识,用于此上下文。我们在文献中的软件产品线基准上评估了我们的方法,从基于图的相似性数据中构建了六个机器学习模型。结果表明,在这项小型研究中,最佳的ML算法对于将特征相互作用分类为不需要或想要的特征相互作用的精度为0.75至1,并且全球相似性指标的性能要比局部相似性指标更好。这项工作显示了链接预测模型如何帮助找到缺失的边缘,这些边缘代表了早期开发的不需要的特征交互。
An ongoing challenge for the requirements engineering of software product lines is to predict whether a new combination of features (units of functionality) will create an unwanted or even hazardous feature interaction. We thus seek to improve and automate the prediction of unwanted feature interactions early in development. In this paper, we show how the detection of unwanted feature interactions in a software product line can be effectively represented as a link prediction problem. Link prediction uses machine learning algorithms and similarity scores among a graph's nodes to identify likely new edges. We here model the software product line features as nodes and the unwanted interactions among the features as edges. We investigate six link-based similarity metrics, some using local and some using global knowledge of the graph, for use in this context. We evaluate our approach on a software product line benchmark in the literature, building six machine-learning models from the graph-based similarity data. Results show that the best ML algorithms achieved an accuracy of 0.75 to 1 for classifying feature interactions as unwanted or wanted in this small study and that global similarity metrics performed better than local similarity metrics. The work shows how link-prediction models can help find missing edges, which represent unwanted feature interactions that are undocumented or unrecognized, earlier in development.