0. 概述
- 适用:
- 软件开发过程:
- 估计软件当前可靠性,以确认是否可以终止测试并发布软件
- 预计软件要达到相应的可靠性水平所需要的时间和工作量
- 评价提交软件时的软件可靠性水平
- 最终软件系统
- 平价过程
1. 选择可靠性模型
- 对于不同的软件系统,的可靠性分析目的不同,选择的模型也不同。
2.1 模型假设
- 概述:
- 是可靠性模型的基础
- 应符合软件系统的现有状况
- 与假设冲突的因素在软件系统中应该是可忽略
- 对模型的假设应逐条细致分析
2.2 预测的能力与质量
- 概述:
- 预测的能力:模型根据已有的可靠性数据,预测将来的可靠性和失效概率的能力
- 预测的质量:其预测结果的准确程度
- 在满足其他条件的前提下,应尽量选用比较成熟、应用较广的模型作为分析模型
2.3 模型输出值
- 根据可靠性测试目的来确定哪些模型的输出值满足可靠性评价需求
- 需要精确估计的可靠性定量指标:
- 当前的可靠度
- 平均无失效时间
- 故障密度
- 期望达到规定可靠性目标的日期
- 达到规定的可靠性目标的成本要求
2.4 模型使用的简便性
- 模型需要的数据易于收集
- 模型应该简单易懂
- 模型应该便于使用
3. 可靠性数据的收集
3.2 数据的来源
- 贯穿于整个软件生命周期
- 主要在软件测试、实施阶段收集的
- 面向缺陷的可靠性测试产生的测试数据
- 软件工程的需求、设计和开发阶段的可靠性活动产生的可靠性数据
3.3 收据收集的难点
- 可靠性数据的规范不统一,对软件进行度量的定义混乱不清
- 数据收集工作的连续性不能保证
- 缺乏有效的数据收集手段
- 数据的完整性不能保证
- 数据质量和准确性不能保证
3.4 解决方案
- 及早确定所采用的可靠性模型
- 制订良好的可靠性数据收集计划
- 重视测试数据的
整理
和分析
- 利用
数据库
来完成可靠性数据的存储和统计分析
4. 软件可靠性的评估和预测
4.1 软件可靠性评估解答的问题
- 软件是是否达到了可靠性目标
- 软件是否达到了可使用的条件
- 是否可以终止测试
- 若没有达到可靠性目标,再投入多少人力、物理可以达到
- 运行指定时间后,是否还能达到交付的可靠性水平
4.2 未测出失效的处理
- 不能认为可靠度是1.0
- 处理方案1:简单地假设该测试是基于二项式分布的,这样就可以对可靠性进行保守估计
- 处理方案2:根据无故障运行的测试用例的数量,估计可靠性的等级
4.3 辅助方法
1)失效数据的图形分析法
- 概念:是一种通过运行图形处理软件,对失效数据进行直观分析的方法
- 指标:
- 累积失效个数图形
- 单位时间段内的失效数的图形
- 失效间隔时间图形
2)试探性数据分析技术
- 概念:
- Exploratory Data Analysis
- 对于失效数据图形进行一定的数字化分析,从而发现和揭示出数据中的异常
- 对可靠性分析有用的信息:
- 这种分析方法常可以发现因排错引入新的缺陷、数据收集的质量问题、时间域的错误定义等问题
04-18 08:38