软件可靠性模型算法分析与评价_第1页
软件可靠性模型算法分析与评价_第2页
软件可靠性模型算法分析与评价_第3页
软件可靠性模型算法分析与评价_第4页
软件可靠性模型算法分析与评价_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、尹晶杰:软件可靠性模型的算法分析与评价 软件可靠性模型算法分析与评价尹晶杰摘要:本文首先对三个经典的软件可靠性模型(J-M、G-O、S-W)进行参数计算的数值算法设计,在此基础上通过可靠性数学关系得到失效间隔时间的密度函数、分布函数、可靠性函数以及失效率函数。其次,分别采用未确知模型、J-M模型、G-O模型、S-W模型针对具体实例的失效时间进行预测评估,并对各模型的可靠性评估曲线进行描绘。第三,利用Delphi开发软件设计并开发完成了一个简易的软件可靠性评估工具。该工具嵌入了包括未确知模型在内的四个软件可靠性模型(J-M模型、G-O模型、S-W模型),能够输出模型评估结果和评估曲线,并具有计算

2、各模型评价准则值(KS值、PL值、模型噪声)和绘制用于模型评价的PLR图、结构图、结构图的功能。关键词:软件可靠性;软件可靠性模型Abstract: Here originally in the paper, model in three software reliability model (J-M, G-O , S-W ) at first ask the parameter algorithm to be designed , draw the parameter of each model, receive invalid density function of spacing int

3、erval , distribute function , reliability function and software failure rate function through dependability mathematics relation on this basis.Secondly, on the basis of the above function, including software reliability based on unascertained theory model , J-M model , G-O model , S-W model predict

4、the assessment to the failure time of the concrete instance separately, design through Delphi one simple interface describe to every reliability assessment curve of model.Moreover , utilize Delphi to designed and development a simple software reliability estimation tool. This tool inlayed three trad

5、itional software reliability models: J-M model, G-O model, S-W model and the new model put forward in this paper. It is not only can exports the estimation results but also can provides assessment curve , including calculating every model appraise criterion value (KS value , PL value , model noise )

6、 and PLR chart that is used to model comparison, u-plot and the y- plot.Keywords: Software reliability Software reliability model1. 基本概念1.1 软件可靠性的定义 关于软件可靠性的确切含义,学术界有过长期的争论,经过长期的争论和研究,1983年美国IEEE计算机学会对 “软件可靠性”一次正式做出如下定义:(1) 在规定条件下,在规定的时间内,软件不引起系统失效的概率,该概率是系统输入和系统使用的函数,也是软件中存在的错误的函数;系统输入将确定是否会遇到已存在的错

7、误(如果错误存在的话);(2) 在规定的时间周期内,在所述条件下程序执行所要求的功能的能力。1.2 软件可靠性参数下面对几个主要的软件可靠性参数进行介绍:(1) 可靠度软件可靠度是指软件在规定的条件下、规定的时间段内完成预定的功能的概率。或者说是软件在规定时间内无失效发生的概率。用随机变数表示从软件运行开始到系统失效所经历的时间,用表示的分布函数,用表示任意给定的时刻,用表示软件在时刻的可靠度,则数学公式如下: (1-1)(2) 失效率失效率是指软件在时刻没有发生失效的条件下,在区间内,当很小时,单位时间内发生失效的概率。用随机变数表示从软件运行开始到系统失效所经历的时间,用表示任意给定的时刻

8、,用表示失效率,则失效率数学公式为: (1-2)(3) 平均失效间隔时间是指两次相邻失效时间间隔的均值。假设当两次相邻失效时间间隔为,具有累计概率密度函数,即可靠度函数则 (1-4)2. 系统设计2.1设计思想整个软件可靠性评估工具的设计采取模块化思想,一个模型设计为一个模块,都具有数据输入和评估结果(包括模型中的参数估计值、软件可靠性参数、模型的可靠性评估曲线等)输出。系统的数据流图如图2-1所示:图2-1 系统的数据流图用 户模型选择可靠性评估失效数据结果显示可靠性模型库用户命令用户命令可靠性模型可靠性模型评估结果2.2 数值算法设计2.2.1 Goel-Okumoto模型参数计算Goel

9、-Okumoto模型参数的最大似然估计:在应用G-O模型进行实际观测、分析软件故障数据时,首先要推定模型中的均值函数中的未定参数和。下面我们用最大似然估计法估计和的值。按假设(4),若时刻累积故障数为,则得到的概率密度为: (2-1)从式(2-1)可得出参数的似然函数为: (2-2)通过极大似然参数估计解的特性的分析实现了该计算方法的计算机编程,具体步骤如下:步骤1:令给定的误差允许值为。如果,则,故,转步骤2;如果,则参数估计无解,转步骤5。步骤2:计算,如果,则转步骤4。步骤3:,如果,则转步骤2;如果,则,转步骤2。步骤4:计算和。步骤5:停止计算。2.2.2 Jelinski-Mora

10、nda模型参数计算Jelinski-Moranda模型参数的最大似然估计:在模型公式中有两个未知参数和,如果在测试过程中测得的失效间隔时间为,则参数和的似然函数为: (2-5)通过极大似然参数估计解的特性的分析实现了该计算方法的计算机编程,具体步骤如下:设为针对自变量而给定的误差精度控制值,为针对自变量而给定的误差精度控制值。计算 , 步骤1:如果,则,转步骤2;如果,则终止计算。步骤2:如果,则和,重复步骤2;若,则,转步骤5;若,转步骤3。步骤3:如果,则,转步骤5;如果,则,转步骤4。步骤4:如果,则,转步骤3;如果,则转步骤5;如果,则,转步骤3。步骤5:,终止计算。2.2.3 Sch

11、neidewind模型参数计算 Schneidewind模型参数似然估计:设第i个缺陷的发现及纠正时刻为ti,i=1,2,k,则在间的软件故障率为常数,则得到似然函数:3. 系统实现与操作说明3.1 可靠性评估模块启动系统的主界面如图3-1所示, 图3-1 主界面下面以 “G-O模型”为例进行说明,其它模型类似,不再重复,选择“G-O模型”进入模型输入界面。G-O模型的测试用例输入界面如图3-2所示,图3-2 模型测试用例输入界面在测试用例界面中先选择一组测试用例,并输入用户要求的精度标准,然后单击“评估”按钮,进入模型可靠性预测评估曲线界面如图3-3所示。它清楚明了的输出了模型的一步预测失效

12、时间与实际失效时间曲线,以及该模型的具体参数、当前可靠度、当前失效率以及模型预测的下次失效时间。“模型判优”按钮可直接进入模型判优模块。图3-3 输出评估界面评估参数计算主要程序包括两部分。一部分是通过本文前面提到的数值算法设计步骤实现的,主要计算出模型中的主要参数a、b,并通过具体公式计算出当前失效率、各个失效时间的分布函数、密度函数、一步预测失效时间、累计预测失效时间,把这些数值存入相应的数据表中;第二部分是通过Delphi中的画布组件进行动态绘制一步预测失效时间图。其它模型也类似,只是模型参数稍有差异,通过前文介绍的参数估计算法一一实现即可。 3.3 模型判优评估模块3.3.1 模型判优

13、的常用评估指标下面介绍的是目前用于软件可靠性模型选择较为流行的5种模型评价准则,也是本程序中主要用于比较包括新模型在内的四种软件可靠性模型(J-M模型、G-O模型、S-W模型)的评估指标。(1) 模型拟合性模型拟合度是指模型估计出的失效数据与实际失效数据的吻合程度。对于失效间隔数据则通过计算Kolmogrov-Smirnov(KS)距离来度量可靠性模型对失效数据的拟合度。下面介绍KS距离拟合检验法具体方法。假设观测到的失效间隔数据为,其中,则KS距离定义如下: (3-1)其中表示函数的最小上限,是取样累加分布函数,是一致累加分布函数。计算的式子为: (3-2)在显著性水平下,样本大小为的Kol

14、mogrov-Smirnov(即KS值)检验的临界值为。若,则说明此模型的拟合效果比较理想。对给定的失效数据,模型计算出来的值越小,该模型的拟合效果就越好。(2) 模型预计有效性模型的拟合性是从历史角度来反映模型评估的有效性,模型的预计有效性则是从预测的角度来反映模型评估的有效性。用序列似然度检验来比较模型在预计有效性方面的优劣。序列似然度PL (Prequential Likelihood)是表示模型累计精确性的度量。以失效间隔数据为例,令为的真实但未知的累积分布函数;令为用特定的可靠性模型获得的累积分布函数的估计。设的真实概率密度函数为,而的估计为。序列似然度PL定义为,即在实际观察的值上

15、的估计的预测密度。在进行次预测之后,进一步定义PL为: (3-3)对于同一失效数据来说,模型PL值越大说明预计有效性越好,预测越精确。另外人们常用值作比较,值越小说明预计有效性越好,预测越精确。(3) 模型偏差传统意义上的偏差(bias)定义为结构图中完全预测曲线和实际预测曲线在竖直方向上的最大距离即KS距离。结构图的目的是用来判定预测是否平均地接近于实际分布。判断序列是否偏离一致性的一种方法是构造结构图。具体方法为: 根据观测到的实现值和可靠性模型的假设,可得到序列,其中,且,将序列由小到大排序得到序列; 在坐标系的横轴区间上依次取,; 由左至右画出单步增长函数,对于横轴上每个值每步的增长高

16、度为,如图3-4所示。0单位斜率线图3-4 -结构图判定偏离严重与否的一种方法是求KS距离(具体计算方法前面模型拟合性中已给出),它是结构图与单位斜率直线的最大垂直距离,KS距离越大表明偏差越大。总之,结构图远离单位斜率直线表明预计存在着某种偏差。(4) 模型偏差趋势与模型偏差类似,模型的偏差趋势也可用模型结构图的KS距离表示。结构图可以用于探测结构图难以发现的预测与现实数据之间的偏差,例如,在结构图中某一阶段预测趋势乐观,而另一阶段则趋势悲观,对于结构图来讲可能得到的KS值较小,使用结构图则可以发现这种偏差。结构图是通过序列进行变换后绘制的。是(0,1)区间上同分布的均匀随机变量。对作一转换

17、得到另一序列,序列可看作独立的同分布单位指数型随机变量的实现。检测泊松过程中的趋势,首先将整个序列归一化到(0,1)。即对于一个预计序列从步骤到步骤,定义: (3-5)然后,由序列绘制结构图。结构图类似结构图,绘制方法也一样。在区间从左边开始画出步长为的单步增长函数的值。结构图能够检测出结构图是否掩盖了一致偏差。评价结构图“好”与“不好”的标准仍然是KS距离,KS距离越小,结构图越好,模型偏差趋势越小。(5) 模型噪声模型噪声指出模型本身给模型预测引入噪声的程度。模型噪声定义为: (3-6)很显然,在使用不同软件可靠性模型时,人们总是期望在预测过程中引入的噪声越小越好。综上所述,可以得到如下结

18、论:表征模型拟合性、模型预计有效性(用表示)、模型偏差、偏差趋势以及模型噪声的指标值越小,模型的适应性越好。3.3.2 模型判优评估曲线的实现在得到相关数据的基础上,比如:各个模型的密度函数、分布函数、预测失效时间等,可以单击系统输入界面上的“模型判优比较”按钮,进入模型判优界面,如图2-6所示,它主要输出了几种模型的判优参数指标及曲线,比如:KS值、模型噪声、PL值、-图、y-图、PLR图等。图2-6 模型评价指标及曲线以上,是包括新模型在内的四种软件可靠性模型(J-M模型、G-O模型、S-W模型)的评估指标的部分程序代码,主要是以未确知模型为范例进行说明的。参考文献1 Michael R.LYU主编,刘喜成,钟婉懿译.软件可靠性工程手册M.电子工业出版社,1997,1114,79992 何国伟.王纬.软件可靠性M.国防工业出版社,1998:1811833 黄锡滋.软件可靠性、安全性与质量保证M.电子工业出版社,2002.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论