APP下载

结合多元度量指标软件缺陷预测研究进展

2021-03-09杨丰玉黄雅璇周世健

计算机工程与应用 2021年5期
关键词:语义特征方法

杨丰玉,黄雅璇,周世健,郑 巍

1.南昌航空大学 软件学院,南昌330063

2.南昌航空大学 软件测评中心,南昌330063

软件缺陷是指软件产品的结果不符合软件要求或最终用户期望。它通常会以非预期的方式产生不正确或意外的结果和行为。软件日益增加的复杂性和依赖性增加了软件高质量、低成本和可维护的难度,以及创建软件缺陷的可能性。软件缺陷预测[1]是在测试之前识别出易出错的样本,达到提高软件质量的目的,它能自动检测出最可能出现错误的代码区域中的潜在缺陷,有效地优化有限资源的分配以进行测试和维护。

缺陷预测在软件质量保证中起着重要作用,是近年软件测试领域的研究重点之一。软件缺陷预测包括两个阶段[2]:从源文件中提取度量指标,使用各种机器学习算法构建缺陷预测模型。首先从软件历史仓库中创建数据样本,根据样本是否包含缺陷,可以将其标记为有缺陷或无缺陷。然后,用机器学习算法构建缺陷预测模型。最后,预测测试样本是否有缺陷。利用预测模型,开发人员可以有效地在缺陷样本上分配可用的测试资源,以便在开发生命周期的早期阶段提高软件质量。如图1所示。

图1 软件缺陷预测过程

其中,软件历史仓库包含版本控制系统和缺陷跟踪系统,版本控制系统包含源代码和文件变更信息,缺陷跟踪系统包含缺陷信息。软件历史仓库中每个样本的粒度包含方法、类、文件、变更和包级别等,根据预测粒度,每个样本可以表示为一个方法、一个类、一个源代码文件、一个程序包或一个代码更改。……

登录APP查看全文

猜你喜欢

语义特征方法
语言与语义
如何表达“特征”
不忠诚的四个特征
“上”与“下”语义的不对称性及其认知阐释
用对方法才能瘦
四大方法 教你不再“坐以待病”!
捕鱼
认知范畴模糊与语义模糊
线性代数的应用特征
语义分析与汉俄副名组合