基于Gompertz模型与回归分析模型控制测试质量的工程化方法(格式修改)[1]

合集下载

基于Gompertz模型的软件质量与测试过程评估分析

基于Gompertz模型的软件质量与测试过程评估分析

SYS PRACTICE 系统实践摘要:软件产品的缺陷可通过软件测试发现,软件测试直接影响软件质量,为更好开展软件测试,必须设法满足软件产品质量与测试过程的定量度量与预测需求。

基于此,论文将围绕基于模型的软件质量与测试过程评估开展研究,模型参数估计采用非线性回归最小二乘法,以此定量预估软件产品质量和测试过程,为测试活动的更好开展提供支持。

关键词:Gompertz模型;软件质量;软件测试;软件缺陷;过程评估一、研究思路结合相关研究和实践可以了解到,软件测试的最终目的是通过有限的物力、人力,高质量、高效率的完成测试。

对于软件测试来说,过度的测试将引发资源浪费问题,而不充分的测试则会引发很多问题。

如软件测试不足,软件隐藏错误催生的风险将由用户承担,如过度开展软件测试,很多宝贵的资源则会浪费。

因此,在软件测试的实践中,必须把握好软件测试的尺度,这种尺度的掌握需得到科学定义的定量描述工具支持,以此保证软件产品经理能够做出正确判断。

为实现软件测试尺度的定量描述,国内外相关学者开展大量研究,如基于软件缺陷进行度量、基于软件过程能力度指数控制图进行度量、基于软件缺陷状态跟踪图进行度量,但这类研究多围绕测试数据的定性判断展开,缺乏定量层面的研究。

因此,本文基于已有的测试数据,采用模型,定量分析和预测软件测试过程,以此定量评估软件产品质量,为测试任务是否应结束提供科学的判断依据[1]。

二、建模机理结合日常的软件测试实践进行分析可以发现,在软件测试的初始环节,由于不熟悉测试环境,测试人员一般仅开展基本功能测试,这种情况下软件测试日均发现的缺陷数减少,软件缺陷数增长在这一环节也较为缓慢。

随着逐渐进入状态,测试人员可实现对测试环境的熟练掌握,受不断增多的日均发现软件缺陷数影响,存在增长速度迅速加快的发现软件缺陷数。

随着软件测试的不断推进,受隐藏加深的软件缺陷影响,难度加大的测试使得一个缺陷发现需要执行较多的测试用例,这一过程中虽然缺陷数仍属于增长状态,但增长速度极慢,而对于有限的软件中隐藏缺陷来说,发现缺陷数的无限增长也会在这种情况下受到限制。

基于Gompertz成长曲线的真空预压软土沉降规律分析

基于Gompertz成长曲线的真空预压软土沉降规律分析

第25卷增2岩石力学与工程学报V ol.25 Supp.2 2006年10月Chinese Journal of Rock Mechanics and Engineering Oct.,2006基于Gompertz成长曲线的真空预压软土沉降规律分析吴起星,胡辉(暨南大学力学与土木工程系,广东广州 510632)摘要:对真空预压软土沉降变化规律进行分析,发现其与社会经济预测中的Gompertz成长曲线变化规律相似。

引入Gompertz成长曲线模型,采用3段估计法求解模型参数;同时,结合具体工程实例,对真空预压软土的表面累计沉降数据进行拟合和分析,并与双曲线模型和指数曲线模型进行比较。

研究结果表明,Gompertz成长曲线模型拟合曲线与实测曲线吻合良好,采用该模型进行真空预压软土沉降变化规律分析是可行的,并可根据所反映出的沉降发展变化趋势,作出沉降预测,计算工后沉降及确定卸荷时间。

与双曲线模型和指数曲线模型比较,Gompertz 成长曲线模型适应性较好,趋势预测准确性高。

最后指出应用Gompertz成长曲线模型进行分析时应注意抽真空的连续性、实测时间序列数据能等分成3组及保证实测沉降数据已进入弹塑性阶段等问题。

关键词:土力学;软土;真空预压;沉降;Gompertz成长曲线中图分类号:TU 447 文献标识码:A 文章编号:1000–6915(2006)增2–3600–07LAW ANALYSIS OF SOFT SOIL SETTLEMENT TREATED BY V ACUUM PRELOADING BASED ON GOMPERTZ GROWTH CURVEWU Qixing,HU Hui(Department of Mechanics and Civil Engineering,Jinan University,Guangzhou,Guangdong510632,China)Abstract:After the law of settlement change analysis of soft soil treated by vacuum preloading method,it is found that the law is similar to that of Gompertz Growth Curve used in socioeconomic prediction. Based on practical engineering examples,the values of parameters of Gompertz Growth Curve by three-segment estimation method are achieved,and the Gompertz Growth Curve Model is established to analyze the settlement data of soft soil treated by vacuum preloading method and compared with Hyperbolic Model and Index Curve Model. The analytical results of engineering practice indicate that the effect of fitting curves by using this method is good and this method is reasonable to analyze the law of settlement change of soft soil treated by vacuum preloading method. It also can be used for predicting soft soil settlement,calculating post-construction settlement and unloading time decision. Compared with Hyperbolic Model and Index Curve Model,Gompertz Growth Curve Model has good adaptability and precision in trend forecast. Last,some problems such as continuing evacuation,three equal segment measured data and elastic-plastic deformation of soil,are pointed out during application of Gompertz Growth Curve Model.Key words:soil mechanics;soft soil;vacuum preloading;settlement;Gompertz Growth Curve收稿日期:2006–05–18;修回日期:2006–07–19作者简介:吴起星(1972–),男,硕士,2002年于广西大学岩土工程专业获硕士学位,现为讲师、博士研究生,主要从事土工试验、原位测试及地基基础等方面的教学与研究工作。

Gompertz增长曲线方程参数估计若干问题的研究开题报告

Gompertz增长曲线方程参数估计若干问题的研究开题报告

Gompertz增长曲线方程参数估计若干问题的研究开题报告题目:Gompertz增长曲线方程参数估计若干问题的研究一、研究背景与意义随着经济社会的不断发展,人们对于生态环境、资源利用等方面的关注度不断提高,生物学研究也受到了越来越多的关注。

Gompertz增长曲线是描述生物种群在一定环境下生长变化规律的重要数学模型,其应用范围广泛,包括药物治疗、微生物生长、肿瘤生长等方面。

Gompertz增长曲线模型包含三个参数,分别是最大生长速率、最大可达个体数和生长速率下降的速率。

这些参数的准确评估对于生物学的研究具有重要意义,也是决策者在生产和管理方面所需要考虑的关键问题。

因此,本研究将围绕Gompertz增长曲线方程的参数估计方法开展深入研究,旨在提高生物学研究中参数估计的精确度和可靠性,为决策者提供更为科学的依据。

二、研究内容和方法1. Gompertz增长曲线模型概述介绍Gompertz增长曲线模型的基本形式及其在生物学领域中的应用。

2. 参数估计算法比较比较传统的参数估计算法、非线性最小二乘算法和贝叶斯统计方法等不同算法的优缺点,为后续研究提供基础。

3. 改进的Gompertz增长曲线参数估计方法研究基于参数估计算法的比较结果,提出一种改进的Gompertz增长曲线参数估计方法,包括正交实验设计、遗传算法等。

4. 数值模拟与实际数据分析通过数值模拟和实际数据分析,验证改进方法的可靠性与实用性。

三、预期结果与展望本研究将探讨Gompertz增长曲线参数估计方法的现状与未来发展,提出改进方法并进行实际数据分析,验证改进方法的可行性。

预计可提高生物学研究中参数估计的精度和可靠性,为决策者提供更为科学的依据。

四、参考文献[1] DeLury, D. B. (1947). On the estimation of biological populations. Biometrics, 3(4), 145-167.[2] Gompertz, B. (1825). On the nature of the function expressive of the law of human mortality, and on a new mode of determining the value of life contingencies. Philosophical Transactions of the Royal Society of London, 115, 513-585.[3] Höllrigl, T. (2011). Gompertz curve and logistic curve are competing models for incidence rates of female breast cancer in the United States. Journal of Applied Statistics, 38(5), 871-878.[4] Xu, K., DeGala, G. D., & Schmid, R. K. (1999). Parameter estimation and model selection for the Gompertz diffusion model. Technometrics, 41(1), 27-37.[5] Zurauskas, J., & Paliulis, D. (2007). A comparative study of the Gompertz and logistic models for fitting embryonic development data. Mathematical Biosciences and Engineering, 4(3), 529-547.。

量化项目管理案例:缺陷趋势预测利器之Gompertz模型

量化项目管理案例:缺陷趋势预测利器之Gompertz模型

最佳实践】量化项目管理案例:缺陷趋势预测利器之Gompertz模型收藏不知身为软件工程师的你,在写代码时是不是有过这样的经历:一方面对自己写的代码信心满满,一方面又非常希望知道自己开发的代码的质量到底多高。

如果代码真的没被测出bug来或者测出的bug较少时,反而有点担心——会不会还有隐藏的更深的bug没被发现?或者身为测试工程师的你,可能比开发人员担心的会更多:这些代码该不该再继续测试了?怎么就能断定当前的版本算是通过验收标准了,继而可以被客户和用户认可?是不是就可以把这个版本交付使用了呢?相信这是很多开发和测试人员都曾经经历过的。

无论是开发人员、测试人员,还是项目经理、高层管理人员,都已经为版本的交付日以继夜的加班工作,可不能在交付的时刻功亏一篑。

打击心情不说,加班加点不说,而且,谁该来为可能的返工和无休无止的变更买单呢。

所以,软件版本在发布时需要有一个判定的标准——没有预先定义的判定标准,就无法去判断版本是否已经达到了客户的要求。

不进行判断,或者是错误的判断,都很有可能会造成该项目资源安排的不合理,甚至造成资源的浪费,那么不管是精神上还是体力上,甚至进度上、成本上,都会给项目团队带来不小的打击。

CMMI四级的一个要求是量化的管理项目(详见量化项目管理QPM中文版)。

映射到缺陷预测活动中,也就是量化的管理缺陷。

量化的退出标准就是将类似“这个版本是否能够通过”这样的问题,形象地转变为“已经测出的bug数是否已经足够多,遗留的bug是否已经少到不会影响软件的交付”等等这样的表述。

这样,无论是理解上还是判断上都更加容易,版本发布标准也就变得不难理解了。

在决定发布版本之前,需要去统计这样几件事:我们已经发现了多少个bug;用量化的方法进行管理时,我们还有多少个bug没有发现;我们统计到的未发现的 bug数是否能达到客户的要求;如果无法满足客户的要求,那我们至少还需要发现多少个bug。

当这一系列问题都解决了以后,开发、测试人员是终于可以“收”工拿项目奖,还是需要返工加班、继续努力,也就一目了然了。

基于Gompertz模型的公路交通量分析与预测

基于Gompertz模型的公路交通量分析与预测
计该 模 型 ,可求 出 :

Z] g r t

再取对 数 ,则有 :
1 时 间序 列 模型 的建 立
时 间序 列模 型预 测方 法是 以交 通量 作 为研 究对
象 ,即对交 通量 随 时间变 化 规律 的预 测 ,目前 主要
有 以下 几种 预测 模 型 :二 次 多项式 曲线 、指数 曲线 G o m p e r t z 线。
二 次多项 式 曲线 预测 方法 属 于趋势 外 推法 ,是
将预 测 对象 具有 变动 趋势 的历 史数 据 拟合 成一 条抛 物 线 曲线 ,通过 建立 抛物 线 曲线模 型进行 预测 的方 法 。适 合 于 中长 期 的数据 预测 ,其 模 型为 :
y = a + l f t T ,求解 系数 和 ,即可得 出系数口 和b 。
2 三 种 时间序 列模型 的对 比
二次 多项式 曲线 预测 模 型是研究 时 间序列 观察
f , = b o + b 1 t + b 2 t
( 1 )
值数 据 随 时 间变 动呈 现 一种 由高 到低 再 到 高 ( 或 由
低 到 高再 到低 ) 的趋 势 变 化 的 曲线外 推 预 测 方 法 。 由于 时 间序列观 察值 的散 点 图呈现 抛物线 形状 ,故
着交通 条件 的改 善 、国民经济水 平 的提高 、人 们 出 行需求 的增长 而呈 现 出增 长 的趋势 。若该 抛 物线 曲 线为 凸 型 曲线 ,则一 b 。 / 2 b : > 0 , 值 由低 到高 再 到低 ;
使 其取 最小 值 。即 :
∑ : n 6 。 + 6 ∑ + 6 : ∑ z
影 响 因素 多 和组 织 难 度 大 等 问 题 ,对 低 等 级 公 路 而 言 .特 别 是 县 乡公 路 ,若 采 用 上 述 方 法 既 费 时 又 费 力 ,经 济上 不 可 取 。交 通 量 预 测 工 作 应 适 当

渠道决策中产品生命周期Gompertz预测模型的运用改进

渠道决策中产品生命周期Gompertz预测模型的运用改进

由于修正指数曲线不 易转变 为线性 形式 , 所以不 能用最 小 平均方法估计参数 。 通常采取分组求和法 : 首先 , 将时间序列分成 3 个相等的部分 ,每部分包括 n 个数 据 , 即 N = 3n 。如若数据不能三等分 ,可将早期的部分 历史 数据 去掉 。 第二步 ,求出各个部分的和 ,得到 S1 ,S2 ,S3 :
型 , 根据修正指数曲 线 模型求 常 数的 方法 , 分 情况 讨论 求解 如 下: ( 1) 增长上限 k 已知时 , 可对 其线性 化 , 采用最 小二乘法 顾 及其余的两个参数 :
� a = - e Yb� t
b=e
n∑ ty - ∑ t∑ y 2 2 n∑ t - (∑ t)
( 2) 当 K 、 a、 b 三个参数均为 未知时 , 模型无 法线性 化 ,此 时 常用三段求和法进行 参数的 估算 。根据 修正指 数曲线 的性质 , 若时间序列中相邻两 个时期 的数 值的一 阶差 之比 (Δt / Δt ∃ 1 ) 接 近于一常数 ,则可对其拟合修正的指数曲线 。
n t =1 2n n +1 3n 2n + 1
根据 Gomper tz 预测模型的 分组求和 法 ,分 成三组 , 每组二 个数据 ,列表计算如下 :
年度
t yt l nyt 2002 0 120 . 16 4 . 79
n
S1 = ∑Yt ;S1 = ∑Yt ;S1 = ∑ Yt
2003 1 143 . 31 4 . 97
t =1
50 企业家天地
2n
下旬刊 / 2008 / 11
S2 ∑Yt = lny 2 + lny3 = 10. 32
n +1 3n
S3 ∑ Yt = lny4 + lny 5 = 10. 72

统计回归分析在产品质量控制中的应用

统计回归分析在产品质量控制中的应用

统计回归分析在产品质量控制中的应用在当今竞争激烈的市场环境中,产品质量是企业生存和发展的关键。

为了确保产品质量的稳定性和可靠性,企业需要采用有效的质量控制方法。

统计回归分析作为一种强大的数据分析工具,在产品质量控制中发挥着重要作用。

统计回归分析是一种用于研究变量之间关系的统计方法。

它通过建立数学模型,来描述自变量与因变量之间的定量关系。

在产品质量控制中,我们可以将影响产品质量的因素作为自变量,将产品质量的指标作为因变量,然后运用回归分析来揭示它们之间的内在联系。

例如,在一家汽车制造企业中,我们可能会关注汽车的油耗这一质量指标。

影响油耗的因素可能包括发动机排量、车辆重量、行驶速度、驾驶习惯等。

通过收集大量的相关数据,并进行回归分析,我们可以建立一个油耗与这些因素之间的数学模型。

这个模型可以帮助我们预测在不同的条件下汽车的油耗情况,从而为优化产品设计和改进生产工艺提供依据。

在产品质量控制中,统计回归分析主要有以下几个方面的应用:一、质量预测通过建立回归模型,我们可以根据已知的自变量值来预测产品质量指标的取值。

这对于企业提前了解产品质量状况、制定生产计划和质量控制策略非常有帮助。

例如,在电子产品生产中,我们可以根据零部件的质量参数、生产工艺参数等预测最终产品的合格率。

如果预测结果显示合格率可能较低,企业就可以及时采取措施,如加强原材料检验、调整生产工艺参数等,以提高产品质量。

二、因素分析回归分析可以帮助我们确定哪些因素对产品质量的影响最为显著。

这有助于企业在质量控制中抓住关键因素,有针对性地进行改进。

例如,在食品生产中,通过回归分析发现,原材料的新鲜度和加工温度对食品的口感和保质期影响最大。

那么企业就可以重点关注这两个因素,加强原材料采购管理和优化加工过程中的温度控制,从而提高产品质量。

三、质量改进基于回归分析的结果,企业可以制定质量改进措施。

当我们发现某个自变量对因变量的影响不符合预期时,可以通过调整该自变量的值来达到改进产品质量的目的。

时序数据分析方法综述

时序数据分析方法综述
Ft 1 Yt Yt k 1 Yt k 2 ... Yt 1 Yt k
简单移动平均法对每个观察值都给予先相同的权数,每次计算时间隔都为 确性不同。 加权移动平均法: 是对近期和远期的观察值赋予不同的权重值。 当序列波动较大时, 近期赋予较大的权重,较远时期观察值权重赋予较小值;当序列波动较小时,各期观察 值则相近。当权重值均为 1 时,即为简单移动平均法。但该方法的移动间隔和权数的选 择一般需要通过均方误差预测精度来调整。 (3) 指数平滑法 指数平滑法是加权移动平均法的一种特殊形式,是指观察值越远,权数随时间呈指 数下降。主要有一次指数平滑、二次指数平滑、三次指数平滑等。方法主要表示为:
一、时间序列数据的相关概念
1、 时间序列 { X t , t T } : 指被观察到的依时间为序排列的数据序列。 (A time series is a collection of observations made sequentially in time.) 2、时间序列的特点: (1)时间序列是指同一现象在不同时间上的相继观察值; (2)前后时刻的数据一般具有某种程度的相关性; (3)形式上由现象所属的时间和现象在不同时间上的观察值两部分组成; (4)排列的时间可以是年份、季度、月份或其他任何时间形式。 3、 时间序列的主要成分: 趋势性 (Trend) 、 季节性 (Seasonality) 、 周期性 (Cyclity) 、 随机型(Random) 4、时间序列的分类: (1)平稳序列(stationary series) :基本上不存在趋势的序列, 各观察值基本在某个固定的水平上波动,或虽有波动,但不存在某种规律,其波动可看 成随机。 (2) 非平稳序列 (non-stationary series) :一般包括有趋势的序列,或包括趋势、 季节、周期性的复合型序列。 5、时间序列分析的内涵:依据不同应用背景,时序分析有不同目的: (1)系统描 述:揭示支配时间序列的随机规律; (2)系统预测:通过此随机规律,理解所要考虑的 动态系统,预报未来的事件; (3)干预和决策:通过干预来控制未来事件。 6、时间序列分析的内容: (1)通过对样本的分析研究,找出动态过程的特性; (2) 找到最佳的数学模型; (3)估计模型参数; (4)利用数学模型进行统计预测 7、时间序列数据的特征:时间属性和数据属性 时间属性:时间隐含内在的周期性特征,例如季节的更迭。时间还具有确定型和不 确定性的特征。 数据属性:按照统计尺度分为定性和定量特征;按照参照标准可分为空间和非空间 特征;按变量个数分为单变量和多变量特征。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Gompertz model prediction in the software testing process applications
Chenminhua,Suzhangji,Laixiaojian
Zhejiang SUPCON Co.,Ltd.,Hangzhou,Zhejiang,310053 Abstract:In the CMMI model, establishing the model and baseline of performance can quantify the software testing process. In addition, a model of software reliability growth testing process also can predict the quality of the product. This article introduce the mothod of using Gompertz model to predict the software testing process inputs and product quality. KeyWords:Gompertz Model、Quantitatively Manage、Software test
基于 Gompertz 模型与回归分析模型控制测试质量的工程化 方法
陈敏华,苏张吉,赖晓健
浙江中控技术股份有限公司,浙江杭州,310053 摘 要:如何量化软件测试的过程,在 CMMI 模型中,除了建立过程性能模型和基线,还可以 引入可靠性增长的模型对软件测试过程产品的质量的进行预测,本文采用 Gompertz 模型实 现了对软件测试过程的投入进行预测,以及产品的质量进行预测的方法。 关键字:Gompertz 模型、量化管理、软件测试
图1
20.00
25.00
30.00
累积发现缺陷数预测值
对于表格中的字段说明: 1. K 为缺陷个数的上限,Ka 为测试启动时首次发现的缺陷个数的拟合值,b 表征了曲线 到达顶峰的速度 2. 顺推预测还需要的测试次数是用最后三次测试出的缺陷的平均数作为后续每次测试 发现的缺陷的个数作为分母,然后用剩余应发现的缺陷个数除以之 3. 逆推预测还需要的测试次数是用目标缺陷数作为 K,逆推出 t,然后减去已经做过的 测试次数来计算的 4. 预测还需要的投入工作量时用最后三次测试的工作量的平均数作为参考值 5. 遗留缺陷率目标:自行设置的目标 6. 缺陷快速上升的拐点 t 值:将 K,a,b 值带入Y = K������������ ,计算出 t 7. 缺陷快速上升的拐点 y 值:K/E 8. 应发现的缺陷数:K*(1-遗留缺陷率目标) 9. 应遗留的缺陷数:K*遗留缺陷率 10. 距离目标缺陷数差距:应发现的缺陷数-已发现的累积缺陷数 从表 2 中,可以得到各种需要的预测值。 4.2 应用二: 回归模型与 Gompertz 模型结合共同来预测产品质量好坏或测试过程质量好坏,示例: 某组织建立了通过千行测试投入预测缺陷密度的回归模型, 该回归模型具备如下两个特 点: 1) 回归模型可以预测在一定的测试投入下缺陷密度的预测区间 2) 曲线回归模型,可以通过找到测试充分的分水岭值,即 8 人天/千行 通过回归上述的两个特点,可以考虑在测试充分和不充分的应用 场景一:测试不充分情况下:
表1
686 751 870 969 1069 1141 1208 1280 1310 1343 1371 1412 1437 1470 1494 1554 1591 1650
688.3 783.9 878.3 970.3 1058.7 1142.7 1221.6 1288.1 1323.1 1356.7 1388.9 1419.7 1449.2 1477.3 1504.1 1529.6 1572.4 1607.2
N m
t
在式(1)左右均乘以 N 则有: N × R = N × abc (3) 令Y = N × R,K = N × a,式(3)可改写为: Y = Kbc
t t t

(4)
重新对(4)的字母取序号,改写为Y = Kab
其中 Y 则表示随时间 t 发现的软件缺陷总数,K 是当 t→∞时的可能发现的软件缺陷总数, 即软件中所含的缺陷总数。 Ka 是当 t→0 时发现的软件缺陷数, b 表示发现缺陷的增长速度, b 值越小,增长速度越快,b 值越大,增长的速度越慢。 2 回归分析方法的基本思想 回归分析是从一组样本数据出发, 定量地给出变量之间的变化规律, 它不仅能提供变量 相关关系的经验公式(回归方程) ,而且可以判明所建立的回归方程的有效性。描述 y 的平 均值或期望值如何依赖于 x 的方程称为回归方程, 或称回归模型。 在回归分析中, 变量 y 称 为因变量,处在被解释的地位,变量 x 称为自变量,用于预测因变量 y 的变化。如下述的 公式所示:
yi = a + b x i + ei i 1,2,, n
其中:
yi 是因变量 Y 的第 i 个观察值,
x i 是自变量 X 的第 i 个观察值
a 与 b 是回归系数,
n 是样本容量,
ei 为对应于 Y 的第 i 个观察值的随机误差,这是一个随机变量。
在上述线性模型中,自变量 X 是个非随机变量,对于 X 的第 i 个观察值
81.00 65.00 119.00 99.00 100.00 72.00 67.00 72.00 30.00 33.00 28.00 41.00 25.00 33.00 24.00 60.00 37.00 59.00
35.00 40.00 45.00 50.00 55.00 60.00 65.00 69.50 72.00 74.50 77.00 79.50 82.00 84.50 87.00 89.50 94.00 98.00
0 引言 质量、进度和成本是软件项目关注的三大要素,三者互相制约,互相依赖。确保软件产 品质量的主要方法是同行评审和测试, 而测试的工作量通常远远大于同行的评审投入, 是最 重要的质量成本投入。 产品究竟要测试到什么程度才可以交付, 还需要投入多少测试资源才 能达到质量目标, 如何根据目前的缺陷发现趋势预测产品质量的好坏, 是很多软件开发企业 关注的问题。笔者在实践的过程中,结合 CMMI 高成熟度的要求、回归分析技术、软件可靠 性增长模型进行了有益的尝试,总结了一套基于 Gompertz 模型与软件回归分析方法预测、 控制测试质量的方法,可以根据当前测试的已有数据,进行产品的质量、需要的测试资源和 交付日期的预测, 并通过建立的测试投入与缺陷密度的回归方程结合使用, 判断质量的好坏 或投入是否存在问题。 1 可靠性增长模型的基本思想 Virene(1968)首次使用 Gompertz 曲线来描述可靠性增长的规律。Gompertz 曲线的特
点是开始增长较慢, 然后逐渐加快, 到某点以后增长速度又减慢, 曲线会趋近一条渐近线 (K 值) ,但不会超过,曲线的变化是逐渐的、平滑的,而不是骤然的。在软件测试过程中,最 开始的时候,会呈现缺陷增长较快的趋势状态,随着测试的进行,软件测试的隐藏加深,测 试难度加大,需要执行较多的测试用例才能发现一个缺陷,虽然继续投入测试,仍然会持续 发现缺陷,但是明显缺陷的增长速度会减缓,同时软件中隐藏的缺陷是有限的,因而限制了 发现缺陷数的无限增长。 这种软件测试中发现缺陷的趋势符合可靠性增长的规律, 因而采用 Gompertz 应用于软件产品质量的预测领域。 Gompertz 模型的原始表达式如(1)所示 R = abc (1) 其中 R 是随时间 T 的可靠度,R 是百分数,0<R≤100%;a 是当 t→∞时的可靠度的上限。 ab 是当 t→0 时的起始可靠度。c 表示增长的速度。 在软件测试中,通常关注的是测试的缺陷个数,对上述 Gompertz 的公式做如下修正: 假设软件产品中,隐藏的软件缺陷总数是 N,通过测试发现的缺陷数为 m。当发现的缺陷数 越多,则表示软件的可靠度越高,即软件的可靠度就可以表示为(2)所示 R = (2)
//直接在下面填上要拟合的数据点(xi yi),如下面的例子: 将“累计测试的工作量”与“累计发现的缺陷数”两列拷贝到 1stopt 中,计算出 K,a,b 设计表格如表 2 所示:
表2
得到拟合曲线,如图 1 所示
Gompertz模型缺陷预测
2000.0 1500.0 1000.0 500.0 0.0 0.00 5.00 10.00 15.00
x i ,Y 的观察值
yi 是由两个部分所组成的:b x i 和 ei ,前者是一个常数,后者是一个随机变量,所以也是一
个随机变量。 回归模型中的参数 a 与 b 在一般情况下都是未知数, 必须根据样本数据(
x i ,yi )来估计。
确定参数 a 与 b 值的原则是要使得样本的回归直线同观察值的拟合状态最好,即要使得偏差 最小。为此,可以采用“最小二乘法”的办法来解决。 回归方程建立以后还需要检验变量之间是否确实存在线性相关关系, 对一元线性回归模 型的统计检验包括两个内容: 一是线性回归方程的显著性检验, 二是对回归系数进行统计推 断。 包含一个 x 的方程称为一元回归方程,包含多个 x 的方程称为多元回归方程。 3 基于 Gompertz 与回归分析的工程化方法 (1) 基于组织内部多个项目的历史数据,对测试过程进行回归分析建模; (2) 基于本项目的测试过程,对测试趋势进行 Gompertz 建模;通过目前的测试情况,预 测 K,a,b 的值,手工计算比较复杂,可以采用工具“1stOpt” ,编写简单的程序, 即可模拟出 K,a,b 的值 在该工具中写入的程序脚本为: Title“Gompertz 模型参数拟合” ; //Parameters; //-K 为植入的总缺陷数 Parameter K [0,10000]; Parameter a [0,1]; Parameter b [0,1]; //Variable; Variable x,y; //Function; Function y=K*a^(b^x) ; //Data ; (3) 基于回归分析模型进行预测缺陷值; (4) 基于 Gompertz 进行快速上升的拐点预测和剩余测试工作量或轮次的预测, 可以采用
相关文档
最新文档