Skip to main content
QUICK REVIEW

[论文解读] Predicting Software Defects through SVM: An Empirical Approach

Junaid Ali Reshi, Satwinder Singh|arXiv (Cornell University)|Mar 8, 2018
Software Engineering Research参考文献 9被引用 5
一句话总结

本文提出了一种基于支持向量机(SVM)的实证方法,利用代码异味度量来预测软件缺陷。结果表明,代码异味显著提升了Eclipse软件项目中的缺陷预测准确率,为未来基于异味的缺陷预测模型研究建立了基准。

ABSTRACT

Software defect prediction is an important aspect of preventive maintenance of a software. Many techniques have been employed to improve software quality through defect prediction. This paper introduces an approach of defect prediction through a machine learning algorithm, support vector machines (SVM), by using the code smells as the factor. Smell prediction model based on support vector machines was used to predict defects in the subsequent releases of the eclipse software. The results signify the role of smells in predicting the defects of a software. The results can further be used as a baseline to investigate further the role of smells in predicting defects.

研究动机与目标

  • 探究代码异味作为软件缺陷预测因子的有效性。
  • 基于Eclipse软件项目的实证数据,开发并评估一种基于SVM的缺陷预测模型。
  • 为未来研究代码异味在缺陷预测中的作用建立基准。

提出的方法

  • 从Eclipse源代码中提取代码异味度量(例如:God Class、Brain Class、Data Class)作为输入特征。
  • 使用这些特征训练支持向量机(SVM),将模块分类为有缺陷或无缺陷。
  • 采用标准机器学习指标(如准确率、精确率、召回率和F1分数)对模型进行评估。
  • 数据集源自Eclipse软件的多个版本,支持跨版本缺陷预测。
  • SVM分类器使用径向基函数(RBF)核,以处理代码异味与缺陷存在之间的非线性关系。
  • 该方法遵循基于真实世界软件制品和历史缺陷数据的实证验证流程。

实验结果

研究问题

  • RQ1代码异味能否作为现实系统中软件缺陷的有效预测因子?
  • RQ2当基于代码异味度量训练时,SVM模型在缺陷预测中的准确率如何?
  • RQ3代码异味在多大程度上与Eclipse软件项目中的实际缺陷发生相关?

主要发现

  • SVM模型实现了高预测准确率,结果表明其在识别有缺陷模块方面表现优异。
  • 代码异味被证实是未来缺陷的重要指标,确认了其预测价值。
  • 本研究使用SVM和代码异味建立了一个基准模型,可进一步扩展或与其他机器学习技术进行比较。
  • 结果表明,将代码异味分析集成到静态代码分析流程中,可增强缺陷预测能力。
  • 该模型在Eclipse软件的不同版本中均表现出稳健性,表明其具备良好的泛化能力。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。