资料介绍
传统的软件可靠性模型大多假设排除错误的时间忽略不计,基于假设过于苛刻,影响了模型应用的范围和精度。因此在JM模型的基础上,提出了排错时间为负指数分布的软件可靠性模型及本模型的极大似然参数估计方法。通过用马尔可夫过程描述系统的状态,分析了模型的数值求解方法,并讨论了使用在本模型中的失效预测、剩余错误预测和等待排出的错误数预测公式。同时利用实际的工程数据对本模型的应用过程进行了验证。
关 键 词 软件可靠性模型; 软件可靠性; 排错时间; JM模型
在现有的软件可靠性模型中,绝大多数都假设排除错误的时间忽略不计,这些模型的可靠性预测都依赖于这条假设。显然,忽略排错时间的假设过于苛刻,尤其在软件工程的实践中,排错过程已经成为影响软件可靠性的重要环节。在得不到排错过程数据的情况下,忽略排错时间使得可靠性模型变得简单,同时也降低了模型精度和结果的可信度。随着软件开发过程管理水平的提高, 在有条件获得排错过程的有关数据条件下,则应将考虑排错过程对可靠性的影响,本文提出了考虑排错时间的可靠性模型。
1 JM模型
JM模型(Jelinski and Moranda Model,JM)由文献[1]提出,是最早的软件可靠性模型之一,该模型对软件可靠性定量分析技术的建立和发展做出了重要的贡献[2, 3]。
模型基本假设如下:1) 软件测试的方式与使用方式相同;2) 软件每个错误导致系统失效的可能性相同;3) 软件中的错误相互独立,各次失效的间隔时间也相互独立;4) 当失效发生后,导致失效的软件错误立刻被排除,排错时间忽略不计,且不引入新的错误;5) 在测试开始时,软件中有N0个错误。N0是一个未知常数;6)软件的失效率Z在每个失效间隔内是常数,其数值与软件中残留的错误数成正比,比例系数为Φ。假
设1)保证了使用测试数据对可靠性进行了模型评估的正确性。假设2)使得不同的失效率具有相同的分布特性。假设3)排除了错误之间的相互影响。假设4)则将测试阶段中的查错、排错两种活动简化为只有查错一种活动,忽略了排错过程和排错结果对可靠性的影响。假设1)~4)广泛应用在多种软件可靠性模型之中[2,3]。根据JM模型的假设5)、6)可以得知,在第i个测试区间内,失效率函数为:
Z(Δt | ti−1)=Φ(N0−i+1)
假设失效发生时刻的随机变量为ξ, 用F(t)表示ξ的分布函数.根据状态转移概率的定义可以得到: 000{|}{}()()(|)limlimlim{}(1())1()tttPttttPtttFttFtFtZttttPthFtξξξξΔ→Δ→Δ→′+Δ>>+Δ>+Δ−Δ====ΔΔ>−≥≥ (1)
求解这个一阶常系数微分方程,在初始条件F(0)=0的情况下,可得分布函数:
01() = 1exp{(|)} = 1exp{(+1)}iFtZtttNitΦ−−Δ−−− (2)
可见,系统在经历了i−1次失效后,第i次失效发生的时间服从参数Φ(N0−i+1)的负指数分布。其密度函数 f(t) = F′ (t) =Φ(N0−i+1)exp{−Φ(N0−i+1)t},可靠性函数R(t) = exp{−Φ(N0−i+1)t},第i次失效与第i−1次失效的间隔时间 =01(1iMTBFNiΦ=−+,则第k次失效发生的时间 。失效次数的均值公式为: 1kkitMTB==Σ
(3) 0()=[1exp()]mtNtΦ−−
剩余错误数的均值为:
0()=exp()etNt−Φ (4)
2 负指数分布排错时间的软件可靠性模型
2.1 基本假设
本模型的假设包括JM模型的假设1)~3)和假设5),对假设4)和假设6)进行如下修改。
2.1.1 对假设4)的修改:负指数时间的排错过程
假设4.1),每次的软件失效是由一个错误引起的;假设4.2),当失效发生后,排错活动立刻进行;假设4.3),每次排除一个错误,排错顺序按照失效的顺序进行,如果新的排错任务到达时上一个错误仍未被排除,则新的排错任务进入排队;假设4.4),排错是完美的,引起失效的错误一定能够排除,且不引入新的错误;假设4.5),错误的排除时间服从负指数分布。在上述排错过程假设的5个方面中,假设4.1)可以从原JM模型的假设2)和假设3)推导得到;假设4.2)和假设4.3)反映了大多数软件排错活动的特点;假设4.4)对实际的排错活动进行了简化,本模型暂不考虑不完美排错的情况。
负指数分布能够较好地描述许多人工活动的服务时间[4];文献[5]对178个排错时间样本进行了分析,认为排错时间服从负指数分布;在文献[4]中,通过Shuttle项目中包含85个数据项的排错时间样本分析,认为其排错时间也服从参数为平均排错时间的负指数分布。由于负指数分布的排错时间具有较为广泛的代表性,因此,本模型假设排错时间服从参数为μ0的负指数分布,其分布函数为:0()1exp()Fttμ=−−。
2.1.2 对假设6的修改:失效过程假设
假设6.1),软件的瞬时失效率Z在每个失效间隔内是常数,其数值与软件中残留的错误数成正比,比例系数为Φ,假设6.2)一旦错误被排除,立刻以新的软件版本为对象进行测试。本模型假设6.1)具有与原JM模型相同的实质,但瞬时失效率具有不同的表达式。假设当前已经发生了i次失效,且已修复了j个错误(j≤i),则称系统当前处于状态(i,j)。根据假设6),处于状态(i, j)的系统的瞬时失效率为( | )=Ztti0(NjΦ−。从上式可以看出,在初始错误一定的情况下,瞬时失效率只与已经排除的错误数有关,而与失效次数无关。这是本模型与JM模型失效过程的最大区别。假设6.2)符合一般的测试过程,该假设将影响到从失效时刻得到失效间隔时间的处理。
2.2 模型的马尔可夫过程
如果用二元组(i,j)表示系统的当前状态,其中i为失效次数,j为已经修复的错误数,N0为初始错误数,则系统状态的变化构成一个连续时间的马尔可夫过程,如图1所示,其中瞬时状态转移概率为:
- 动态可靠性约束的资源分配模型DRC-MSMOTRA 14次下载
- 产品性能可靠性评估的时序分析方法说明 16次下载
- 主动容错技术如何提高存储系统的可靠性详细算法模型资料说明 9次下载
- 基于软件可靠性增长模型研究 0次下载
- 基于GSPN的机载构件化软件可靠性评估 7次下载
- 软件可靠性多模型综合预测研究 10次下载
- 提高软件可靠性模型精度的新方法 0次下载
- 基于灰色神经网络对软件可靠性模型的研究 32次下载
- 考虑软件补丁的软件可靠性模型 0次下载
- 基于软件过程的软件可靠性预测运作模型 0次下载
- 软件可靠性数据预处理研究 28次下载
- 一种软件可靠性的随机测试模型研究 27次下载
- 软件可靠性建模研究 19次下载
- 修理延迟的n部件串联系统的可靠性分析 11次下载
- 两不同部件冷贮备系统的可靠性分析 7次下载
- 可靠性测试中,如何减少HCI和电迁移的测试时间? 321次阅读
- 嵌入式软件的可靠性设计 421次阅读
- 网络丢包时常用的排错思路 1093次阅读
- 医疗设备研制中的可靠性设计方法与分析 3456次阅读
- 如何实现电源的可靠性设计 3092次阅读
- 电子产品的可靠性评价靠的是模型、结构、材料、工作环境等信息定量 3206次阅读
- 接合部工艺可靠性设计 1947次阅读
- 透过MTBF,去发现其背后的故事! 5859次阅读
- 可靠性的历史!可靠性的相关定义和概念 8071次阅读
- 嵌入式软件可靠性设计三方面的考虑:防错,判错,容错的详细概述 5744次阅读
- 机器学习:泊松分布与指数分布 4207次阅读
- 基于软件的空间辐照下FPGA可靠性设计方法 2295次阅读
- 软件可靠性设计研究及应用 2024次阅读
- 单片机应用系统的可靠性设计 3338次阅读
- 不花钱的可靠性设计经验 761次阅读
下载排行
本周
- 1东芝BiCD集成电路硅单片TB67S109AFNAG数据手册
- 1.93 MB | 5次下载 | 免费
- 2SP3060A/30120A/30160A/30320A/30520A系列数字合成扫频仪使用说明书
- 4.16 MB | 3次下载 | 1 积分
- 3具有双通道 DC-DC转换器、由串行接口控制的9通道电机驱动器TPIC2010数据表
- 1.15MB | 2次下载 | 免费
- 4USB Type-C PD快充协议智能触发芯片FS312B数据手册
- 0.75 MB | 1次下载 | 免费
- 5USB Type_C PD快充协议智能触发芯片FS8025B数据手册
- 1.29 MB | 1次下载 | 免费
- 6触摸按键PCB 设计要点V01
- 1.42 MB | 1次下载 | 免费
- 7DC-DC电路(Buck)的设计与仿真
- 0.60 MB | 1次下载 | 2 积分
- 85V升压充电两串锂电池充电管理IC FS4058数据手册
- 2.98 MB | 次下载 | 免费
本月
- 1DCDC原理详解
- 0.98 MB | 65次下载 | 免费
- 2allegro快速入门教程
- 1.98 MB | 36次下载 | 免费
- 3FU-7(807)胆机原理图
- 11.93 MB | 25次下载 | 1 积分
- 4用于汽车应用的高压电源管理IC TPS65311-Q1数据表
- 1.05MB | 22次下载 | 免费
- 5电子元件基础知识介绍
- 8.76 MB | 15次下载 | 2 积分
- 6华为海思Ascend 310芯片的资料说明
- 0.12 MB | 10次下载 | 10 积分
- 7GD32F10x系列MCU用户手册
- 11.5MB | 9次下载 | 免费
- 86A 输出电流同步降压稳压器TPS65286数据表
- 2.05MB | 6次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935083次下载 | 免费
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420045次下载 | 免费
- 3Altium DXP2002下载入口
- 未知 | 233067次下载 | 免费
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191308次下载 | 免费
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183308次下载 | 免费
- 6labview8.5下载
- 未知 | 81567次下载 | 免费
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73785次下载 | 免费
- 8NI LabVIEW中实现3D视觉的工具和技术
- 未知 | 70088次下载 | 免费
评论
查看更多