基于改进蝙蝠算法的软件缺陷预测模型
2018-12-20杨晓琴
计算机技术与发展 2018年12期
杨晓琴
(太原广播电视大学,山西 太原 030002)
0 引 言
软件缺陷预测是一种根据以往开发软件模块特征来预测未来开发软件缺陷性的模型。软件缺陷预测能够预测软件存在的缺陷位置和数量,能够知道测试工作,提升测试工作效率,节约成本。
软件缺陷预测技术涵盖了动态、静态两种。以往的动态缺陷预测技术主要有Rayleigh分布模型、指数分布模型和S曲线分布模型。Rayleigh分布模型应用广泛,Trachtenberg等开展了一系列实验,进而实现对缺陷数据的验证,从结果来看这些缺陷数据符合Rayleigh分布模型。Rescorla等在一系列研究之后,阐述了著名的指数分布模型,其将研究重点放在软件验收的测试阶段,通过深入研究,确定了此阶段软件缺陷累计分布规律[1]。基于S曲线的分布模型能够了解到,从软件开发一直到回归测试,在缺陷累计数量方面是符合S型的,最终意味着来到了软件成熟阶段。Alhazmi等在一系列研究之后,阐述了著名的AML模型,该模式作为S曲线模型中的代表模型,和实验数据的拟合度较高,性能较好[2-3]。Joh等在对软件生命周期中软件缺陷模块占比变动规律进行描述的过程中,主要基于Weibull统计分布来实现[4],该方法能够有效地评估软件风险。
与动态软件缺陷预测技术不同,静态软件缺陷预测技术一般将软件预测问题进行转化,最终变为机器学习中的一种分类问题,具体就是基于缺陷预测模型有效划分待预测模块,分为无缺陷以及有缺陷的模块两类。传统分类技术相……
登录APP查看全文
