文档介绍:软件可靠性模型
第一页,课件共19页
模型
介绍使用失效数据进行失效强度估算和预测的理论基础.
通过对影响软件可靠性的一些主要因素进行建模,我们可以使用这样的模型来指导我们的测试过程。主要因素包括:
错误引入的问题:和产品以及开发过程相关
错误消除:依赖于时间,测试用的操作剖面,以及消除错误的方法。
使用方法:由操作剖面决定。
第二页,课件共19页
模型的确定
一个软件可靠性模型指定了失效过程依赖于影响因素的通用的方式。
通过确立模型相应的参数,你可以得到特定于当前的产品的方式。确立的方法包括:
估算:将统计推论过程作用于系统的失效数据。
预测:根据产品和开发过程,在程序执行之前就可以得到这些参数的值。
第三页,课件共19页
模型的用途
你确定了特定于当前的产品的依赖方式后,可以分析失效过程的很多特性。包括:
任何一个时间点出现的平均失效数目。
在一个时间段内出现的平均失效数目。
在任意一个时间点上的失效强度。
失效区间的概率分布。
第四页,课件共19页
模型的标准
一个好的软件可靠性模型有几个重要的特性:
能够给出系统的失效行为的很好的预测。
可以计算有用的量。
简单。
应用范围广
基于合理的假设。
第五页,课件共19页
模型的一般特性
软件可靠性模型通常假设失效之间是相互独立的。
失效的产生需要两个条件:错误引入/错误被输入状态激活。这两个条件都是随机的。
根据对实际项目的调查,失效之间没有发现很强的关联性。
第六页,课件共19页
随机过程(1)
因为将错误引入代码和在任何时刻该执行那个代码的过程依赖于大量的随时间变化的变量的值,因此,我们可以考虑使用随机过程来描述这样的情况。
失效的时间的随机性。
一个给定时段内的失效个数的随机性。
第七页,课件共19页
随机过程(2)
Ti:发生第I个失效的时间的随机变量。其实例用ti表示
T’i: 在第I-1个失效和第I个失效之间的时间的随机变量。其实例用ti’表示。
M(t)表示到达时间t时所经历的失效的个数的随机过程,其实例为m(t)。
u(t) = E(M(t))表示在时刻t中预期发生的失效数目。
λ(t)=du(t) / dt表示失效强度。
第八页,课件共19页
有/无错误清除(1)
软件可靠性模型必须描述两种不同的情况:
无错误清除的过程:主要发生在确认测试和现场操作中。测试人员标记出错误,没有调试人员,或者调试人员要等到下一个版本中才改正错误。
带有错误清除的过程:主要发生才可靠性增长测试中,测试人员标记出错误之后,调试人员将很快改正错误。
第九页,课件共19页
有/无错误清除(2)
无错误清除的过程中,软件的失效密度是常量。我们可以使用泊松随机过程来建模。
对于带错误清除过程的模型,常见的模型都假设:
错误清除是瞬间完成的。
错误清除过程是完美的,不会引入新的错误。
第十页,课件共19页