中文

面向面向对象系统易变性预测的源代码度量与机器学习算法比较研究

软件工程 2017-12-22 v1

摘要

易变类或模块被定义为源代码中未来可能发生变更的软件组件。易变性预测对维护团队很有用,因为他们可以将测试资源优化并集中在变更可能性更高的模块上。易变性预测模型可以通过在机器学习分类框架中使用源代码度量作为预测变量或特征来构建。本文计算了21个源代码度量以建立预测易变性模块的统计模型。由于易变性模型的性能依赖于源代码度量,它们被用作该易变性模型的独立变量或预测变量。使用了十一种不同的特征选择技术(包括使用文中所述全部2121个源代码度量)来去除不相关特征并选出最佳特征集。使用十八种不同的分类技术和三种集成技术评估了该源代码度量集的有效性。实验结果表明,与应用所有源代码度量作为预测变量的模型相比,应用特征选择技术后基于选定源代码度量集的模型取得了更好的结果。我们的实验结果显示,使用LSSVM-RBF开发的预测模型比其他分类技术取得了更好的结果。

关键词

引用

@article{arxiv.1712.07944,
  title  = {A Comparative Study of Different Source Code Metrics and Machine Learning Algorithms for Predicting Change Proneness of Object Oriented Systems},
  author = {Lov Kumar and Ashish Sureka},
  journal= {arXiv preprint arXiv:1712.07944},
  year   = {2017}
}

备注

Extended version of our previous papers on Predicting Change Proneness of Object Oriented Systems