一种基于遗传算法的多缺陷定位方法
发布时间:2017-08-15 07:22
本文关键词:一种基于遗传算法的多缺陷定位方法
更多相关文章: 缺陷定位 多缺陷 基于搜索的软件工程 遗传算法 EXAM评价标准
【摘要】:基于程序频谱的缺陷定位方法可以有效地辅助开发人员定位软件内部缺陷,但大部分已有自动化方法在解决多缺陷定位问题时表现不佳,部分效果尚可的方法因复杂度较高或需要开发人员较多交互而仍需进一步改善.为改善上述问题,提出一种基于遗传算法的多缺陷定位方法 GAMFal,具体来说:首先基于搜索的软件工程思想对多缺陷定位问题进行建模,构建了候选缺陷分布的染色体编码方式,并基于扩展的Ochiai系数计算个体的适应度值;随后使用遗传算法在解空间中搜索具有最高适应度值的候选缺陷分布,在终止条件被满足后返回最优解种群;最后根据这个种群对程序实体进行排序.这样开发人员可以依次对程序实体进行检查并最终确定多个缺陷的具体位置.实证研究以Siemens套件中的7个程序和Linux的3个程序(gzip、grep和sed)作为评测对象,并扩展传统的定位方法评测标准EXAM至EXAMF和EXAML,通过与其他经典的缺陷定位方法(Tarantula、Improved Tarantula及Ochiai)进行对比,并通过Friedman检测和最小显著性差异测试可得,提出的GAMFal方法在整体定位效率方面优于传统方法,且需要更少的人工交互.除此之外,GAMFal的执行时间也在可接受的范围之内.
【作者单位】: 天津大学软件学院软件工程系;厦门航空有限公司信息部;南通大学计算机科学与技术学院;
【关键词】: 缺陷定位 多缺陷 基于搜索的软件工程 遗传算法 EXAM评价标准
【基金】:国家自然科学基金(61202030,61373012,61202006)~~
【分类号】:TP311.53;TP18
【正文快照】: 软件缺陷定位(software fault localization)技术是在执行测试用例集后发现有部分测试用例执行失败时,确定缺陷所在具体位置的一种分析方法.在传统的软件开发过程中,通常是由开发人员手工调试、找到缺陷并进行修复.但这种传统的缺陷定位方法成本较高[1].为了提高调试效率,把开
【相似文献】
中国期刊全文数据库 前7条
1 叶钢;余丹;李重文;李先军;尹杰;吕江花;马世龙;;一种基于Kolmogorov-Smirnov检验的缺陷定位方法[J];计算机研究与发展;2013年04期
2 丁晖;陈林;钱巨;许蕾;徐宝文;;一种基于信息量的缺陷定位方法[J];软件学报;2013年07期
3 何杰;;手机软件APP在配网巡视中的应用[J];电子世界;2014年10期
4 郝鹏;郑征;张震宇;高乙超;宫成;薛云志;;基于谓词执行信息分析的自适应缺陷定位算法[J];计算机学报;2014年03期
5 李伟;郑征;郝鹏;高乙超;饶培峰;宫成;;基于谓词执行序列的软件缺陷定位算法[J];计算机学报;2013年12期
6 蔡虹;黄霞;;一种基于聚类算法的缺陷语句定位技术[J];山东大学学报(工学版);2012年06期
7 ;[J];;年期
中国硕士学位论文全文数据库 前3条
1 唐启锋;基于模型结合的缺陷定位研究[D];南京大学;2012年
2 雷晏;基于迭代反馈的缺陷定位技术研究[D];国防科学技术大学;2010年
3 贡亮;软件频谱缺陷定位技术的研究[D];清华大学;2013年
,本文编号:676925
本文链接:https://www.wllwen.com/kejilunwen/zidonghuakongzhilunwen/676925.html