-
题名一种半监督集成跨项目软件缺陷预测方法
被引量:17
- 1
-
-
作者
何吉元
孟昭鹏
陈翔
王赞
樊向宇
-
机构
天津大学软件学院软件工程系
南通大学计算机科学与技术学院
-
出处
《软件学报》
EI
CSCD
北大核心
2017年第6期1455-1473,共19页
-
基金
国家自然科学基金(61202030
61373012
+1 种基金
61202006
71502125)~~
-
文摘
软件缺陷预测方法可以在项目的开发初期,通过预先识别出所有可能含有缺陷的软件模块来优化测试资源的分配.早期的缺陷预测研究大多集中于同项目缺陷预测,但同项目缺陷预测需要充足的历史数据,而在实际应用中,可能需要预测项目的历史数据较为稀缺,或这个项目是一个全新项目.因此,跨项目缺陷预测问题成为当前软件缺陷预测领域内的一个研究热点,其研究挑战在于源项目与目标项目数据集间存在的分布差异性以及数据集内存在的类不平衡问题.受到基于搜索的软件工程思想的启发,提出了一种基于搜索的半监督集成跨项目软件缺陷预测方法 S^3EL.该方法首先通过调整训练集中各类数据的分布比例,构建出多个朴素贝叶斯基分类器;随后,利用具有全局搜索能力的遗传算法,基于少量已标记目标实例对上述基分类器进行集成,并构建出最终的缺陷预测模型.在Promise数据集及AEEEM数据集上与多个经典的跨项目缺陷预测方法(Burak过滤法、Peters过滤法、TCA+、CODEP及HYDRA)进行了对比.以F1值作为评测指标,结果表明:在大部分情况下,S^3EL方法可以取得最好的预测性能.
-
关键词
跨项目软件缺陷预测
半监督学习
集成学习
遗传算法
朴素贝叶斯
-
Keywords
cross-project defect prediction
semi-supervised learning, ensemble learning
genetic algorithm
Naive Bayes
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-
-
题名一种基于遗传算法的多缺陷定位方法
被引量:31
- 2
-
-
作者
王赞
樊向宇
邹雨果
陈翔
-
机构
天津大学软件学院软件工程系
厦门航空有限公司信息部
南通大学计算机科学与技术学院
-
出处
《软件学报》
EI
CSCD
北大核心
2016年第4期879-900,共22页
-
基金
国家自然科学基金(61202030,61373012,61202006)~~
-
文摘
基于程序频谱的缺陷定位方法可以有效地辅助开发人员定位软件内部缺陷,但大部分已有自动化方法在解决多缺陷定位问题时表现不佳,部分效果尚可的方法因复杂度较高或需要开发人员较多交互而仍需进一步改善.为改善上述问题,提出一种基于遗传算法的多缺陷定位方法 GAMFal,具体来说:首先基于搜索的软件工程思想对多缺陷定位问题进行建模,构建了候选缺陷分布的染色体编码方式,并基于扩展的Ochiai系数计算个体的适应度值;随后使用遗传算法在解空间中搜索具有最高适应度值的候选缺陷分布,在终止条件被满足后返回最优解种群;最后根据这个种群对程序实体进行排序.这样开发人员可以依次对程序实体进行检查并最终确定多个缺陷的具体位置.实证研究以Siemens套件中的7个程序和Linux的3个程序(gzip、grep和sed)作为评测对象,并扩展传统的定位方法评测标准EXAM至EXAMF和EXAML,通过与其他经典的缺陷定位方法(Tarantula、Improved Tarantula及Ochiai)进行对比,并通过Friedman检测和最小显著性差异测试可得,提出的GAMFal方法在整体定位效率方面优于传统方法,且需要更少的人工交互.除此之外,GAMFal的执行时间也在可接受的范围之内.
-
关键词
缺陷定位
多缺陷
基于搜索的软件工程
遗传算法
EXAM评价标准
-
Keywords
fault localization
multiple faults
search-based software engineering
genetic algorithm
EXAM
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-