APP下载

基于相似度匹配的软件缺陷预测方法研究

2017-09-09刘雅新吴高艳何鹏

软件导刊 2017年8期

刘雅新+吴高艳+何鹏

摘 要:针对跨项目缺陷预测(Cross-Project Defect Prediction,CPDP)中为目标项目选择合适的训练数据问题,在已有相似度匹配方法的基础上,引入项目情境信息,从而提出一种改进的CPDP预测模型。实验结果表明:引入项目的情境信息,有助于提高CPDP性能;所提方法的F-measure值比已有方法提高了15.04%和6.57%,但相比WPDP方法,仍有待提高。

關键词:软件质量保证;缺陷预测;相似度匹配;训练数据选择

DOIDOI:10.11907/rjdk.171465

中图分类号:TP301

文献标识码:A 文章编号文章编号:1672-7800(2017)008-0009-03

0 引言

软件缺陷预测研究一直是软件工程领域中的热门方向,最早可以追溯到上世纪70年代。常规的方法是利用项目自身已有历史数据训练预测模型后,再用于后续版本的缺陷预测,即项目内缺陷预测(Within-Project Defect Prediction,简称WPDP),如图1(a)所示。然而,已有研究表明训练高质量的WPDP模型要求有充足的历史数据,这对一些新项目或还不活跃的软件项目便难以满足。

近些年来随着互联网的蓬勃发展,尤其是开源社区如 Github的兴起,互联网上可供获取的公开缺陷数据集越来越多,而且数量仍在不断增长。为有效利用互联网上已有的丰富数据资源,一些研究者提出利用其它软件项目的数据来训练,构建跨项目的缺陷预测模型(Cross-Project Defect Prediction, 简称CPDP),用于解决WPDP中训练数据受限的瓶颈[1-5],如图1(b)所示,为软件缺陷预测研究开辟了一条崭新的途径。

在CPDP早期研究中,都是将来自其它软件项目的所有数据作为训练集,并不涉及训练集的精简。常常出现因训练数据包含过多噪声,从而降低了模型准确性[5]。……

登录APP查看全文