【技术实现步骤摘要】
一种跨项目软件缺陷预测数据选择方法
[0001]本专利技术涉及软件缺陷预测
,更具体的说是涉及一种跨项目软件缺陷预测数据选择方法。
技术介绍
[0002]软件缺陷预测技术是目前提高软件测试效率的重要手段之一。其主要流程如下。首先通过分析软件的历史数据库,并从中选择程序模块,对其进行标记,之后构建缺陷预测数据,随后根据软件代码在编写过程中固有的特征以及代码的复杂程度,为程序设计出特征空间,特征空间的特征要求与软件缺陷紧密相关,并测量已提取的程序模块的特征值,在得到测量的结果后,这些程序模块便可作为训练数据,基于机器学习的方法,得到训练模型。同样将需要预测的程序模块进行按设计的特征进行测量,得到测试集,最后用机器学习得到的训练模型进行缺陷预测,其预测的输出可以是模块内是否含有缺陷、缺陷的数量以及缺陷的密度等。但在现实软件开发的情况下,需要进行缺陷预测的项目(目标项目)很可能并没有历史数据库,或者说仅有少量历史数据而不足以进行模型训练,这时可以借助其他具有充足历史数据的项目(源项目)数据,此方法称为跨项目软件缺陷预测。
[0003]针对跨项目软件缺陷数据匮乏的问题,采用其他软件缺陷数据进行数据补充,然而不同项目之间因其使用场景、软件开发人员的开发模式、设计方案、编程的方法等并不相同,所以这就导致两个不同项目数据会不可避免地存在差异性,这也是最终的预测效果并不好的原因。为了能够让预测效果更理想,采用其他软件缺陷数据进行数据补充时,其选择条件为选取与目标软件信息量更加相似的其他软件的缺陷数据。基于这一目的,计算项 ...
【技术保护点】
【技术特征摘要】
1.一种跨项目软件缺陷预测数据选择方法,其特征在于,包括以下步骤:步骤1:对多个源项目数据和目标项目数据进行数据预处理;步骤2:计算预处理后的每个源项目数据和目标项目数据之间的Wasserstein距离;步骤3:根据Wasserstein距离判断每个源项目数据与目标项目数据的相似性,选定源项目数据。2.根据权利要求1所述的一种跨项目软件缺陷预测数据选择方法,其特征在于,所述数据预处理包括剔除冗余样本、剔除含缺失值的样本和数据标准化;采用主成分分析方法对原始样本进行降维;利用Z
‑
score方法对源项目数据和目标项目数据进行标准化。3.根据权利要求1所述的一种跨项目软件缺陷预测数据选择方法,其特征在于,计算Wasserstein距离的具体过程为:步骤21:源项目数据为X
S
,目标项目数据为X
T
,源项目数据中样本数量为N
S
,目标项目数据中样本个数为N
T
,则源项目数据与目标项目数据的概率分布公式为:其中p(x
s,i
)和p(x
t,i
)分别是源项目数据X
S
和目标项目数据X
T
中第的i个样本的概率分布;源项目数据和目标项目数据均为均匀分布,p(x
s,i
)=1/N
S
,p(x
t,i
)=1/N
T
;步骤22:计算P(X
S
)和P(X
T
)两个分布之间的概率耦合矩阵,其中,P为两个分布之间的概率耦合矩阵;其中,P为两个分布之间的概率耦合矩阵;R表示特征空间;步骤23:根据概率耦合矩阵计算Wasserstin距...
【专利技术属性】
技术研发人员:吴玉美,姚京秀,王江山,胡峥涛,于永利,
申请(专利权)人:北京航空航天大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。