关键词:
Gompertz
缺陷预测
软件测试
看板
摘要:
随着软件领域的日益发展,软件系统的规模和复杂度也在不断提高,在整个软件开发周期引入的缺陷也会越来越多。同时,市场对软件质量要求在不断提高,软件公司在测试方面的投资在加大。面对愈演愈烈的软件市场竞争,软件公司不断地寻求一种良好的解决方法来应对这些问题。于是以阿里巴巴、腾讯、百度为代表的许多软件公司都已经将缺陷预测这一方法引入到了实际的软件测试工作中,并且在软件质量的保证上发挥了巨大的作用。本文将重点讲述A公司在Y操作系统软件测试中实施缺陷预测技术的整个过程。A公司在软件测试方面非常重视。为解决上述这些问题,Y操作系统软件测试团队率先开始着手实施缺陷预测技术。然而团队一直沿用的传统的测试体系对缺陷预测的实施造成了很大的阻扰。针对此现象,Y操作系统软件测试团队做出了改进测试体系、全面实施缺陷预测的重要决定。测试体系的改进是为了应对日益复杂的软件规模,提高测试质量及效率,并且为缺陷预测技术的实施提供一个稳定的环境。而缺陷预测的实施就是为了能全面地把控测试进展,衡量已发现缺陷在整个产品隐藏缺陷中的占比。这样可以大大地缩减整个软件的投入资本,加快软件产品的交付。文章首先对当前比较流行的几种测试模型进行讨论,紧接着对目前软件测试领域常用的几大缺陷预测技术进行了分析,并将他们的优点以及适应环境逐一讨论。其次,为了给缺陷预测的实施提供一个稳定高效的环境,文章中会详细介绍A公司Y操作系统测试团队对测试体系改进的整个过程,其中包括用户故事制定、结对测试的试行以及敏捷看板的全面实施,以此建立一个适合Y操作系统软件产品测试特点的敏捷看板测试体系。最后,也是本人在整个项目中的主要工作,基于Gompertz模型对Y操作系统软件产品进行缺陷预测技术的实施。文章介绍的预测模型结构清晰,利用统计学理论将Gompertz模型的计算过程进行了非常详细的推导,首先运用分段选择法对模型的参数进行初始值的确定,然后再利用高斯牛顿迭代法对模型的参数进行迭代回归,得到模型参数的近似精确值。本人在使用预测模型建模的过程中,使用了验证模型预测值与实际数据之间拟合度的概念,并引入了FR、R2、Rnew、MAD这四个衡量指标,以确定实际数据是否真正符合Gompertz模型。同时为了提高实际预测效率,避免每次使用模型预测时进行大规模的复杂数学公式计算,本人对该预测模型的整个计算过程进行程序化实现,并且给出了Gompertz模型算法的基本实现代码。最后结合Y操作系统软件的实际缺陷数据进行了针对性的缺陷预测实施,并且对实施运行的结果进行了分析。通过在A公司Y操作系统软件测试中的实施发现,使用预测模型对提升软件产品质量以及缩短产品交付时间有着非常重要的意义。