Based on a large number of industrial-size/complexity object-oriented systems, this project aims to use statistical meta-analysis techniques to perform a comprehensive investigation on the ability of popular code metrics to predict fault-proneness. For each code metric, we first analyze the relationship between it and fault-proneness. Then, we employ a statistical random-effect model to combine the results from individual object-oriented systems. This random-effect model takes into account not only the difference among the modules within a single system but also the difference among the modules within different systems. Consequently, the conclusions drawn from the random-effect model can be generalized to other systems. The main research contents of this project include: (1) meta-analysis for baseline values of code metrics; (2) meta-analysis for the associations of code metrics with fault-proneness; (3) meta-analysis for the ability of code metrics to classify fault-prone modules; (4) meta-analysis for the ability of code metrics to rank fault-prone modules; (5) meta-analysis for the threshold of code metrics to distinguish between fault-prone and not fault-prone modules; and (6) meta-analysis for the prediction ability comparison of code metrics and process metrics. This project will not only enable us to better understanding the characteristics of code metrics, but also provide developers a scientific basis for using code metrics to understand, control, and improve the quality of object-oriented systems. This will promote code metrics to transfer from academic community to academic research to industrial applications.
本课题以大量工业级规模和复杂性的面向对象软件系统为实验对象,利用元分析技术对上百种主流代码度量的缺陷预测能力展开全面的实证研究。对每一个代码度量,首先在单个软件系统上对它与缺陷之间的关系进行预测性能评价,然后利用统计的随机效应模型元分析方法综合单个系统上所得的结果,不仅考虑单个系统内部模块特性上的差异,而且同时考虑多个系统间模块特性上的差异,以得到尽可能通用化的结论。本课题的主要研究内容包括:(1)代码度量的基准值分析;(2)代码度量与缺陷的相关性元分析;(3)代码度量的缺陷模块分类能力元分析;(4)代码度量的缺陷模块排序能力元分析;(5)代码度量的缺陷预测阈值元分析;(6)代码度量和过程度量的缺陷预测能力比较元分析。本课题不仅可以使得人们深入理解代码度量的特性,而且可以给开发者使用代码度量理解、控制和改进软件质量提供科学的基础,从而推动它们从学术界的研究走向工业界软件开发中的实际应用。
本项目试图利用开源软件数据进行代码度量的实证研究,加深人们对代码度量缺陷预测能力的理解,推动它们在软件质量保证中的应用。在项目执行期间进行了代码度量与缺陷的相关性分析、缺陷模块分类能力分析、缺陷模块排序能力分析、缺陷预测阈值分析、与其他度量的对比分析等研究内容。与前人的工作相比,本项目不仅使用了规模更大、数目更多的软件项目作为实验对象,而且分析了数量更多的代码度量。经过项目组成员的共同努力,完成了相应的研究内容,发表论文9篇。其中,在国际期刊上3篇,在国内一级学报上1篇。所发表的论文已被包括美国、日本和新西兰等国在内的学者引用10余次。
{{i.achievement_title}}
数据更新时间:2023-05-31
玉米叶向值的全基因组关联分析
正交异性钢桥面板纵肋-面板疲劳开裂的CFRP加固研究
硬件木马:关键问题研究进展及新动向
基于LASSO-SVMR模型城市生活需水量的预测
基于SSVEP 直接脑控机器人方向和速度研究
软件缺陷预测的度量元有效性及建模算法研究
基于规则化Boosting算法和度量元选取技术的软件缺陷倾向预测模型
基于代码语义结构特征自动学习的软件缺陷预测研究
代码安全属性度量技术研究