1 软件可靠性技术
1.2 软件可靠性的定量描述
- 软件可靠性的度量方法和意义
- 主要度量指标(失效概率、可靠度、失效强度、平均失效前时间、平均恢复前时间、平均故障间隔时间)
1.3 可靠性目标
- 失效严重程度(按成本影响)的等级分类
1.4 可靠性测试的意义
- 软件可靠性测试的目的和意义
- 软件可靠性测试的发展
1.5 广义的可靠性测试与狭义的可靠性测试
- 广义的可靠性测试定义
- 狭义的可靠性测试定义
2 软件可靠性建模
2.1 影响软件可靠性的因素
- 影响软件可靠性的主要因素(技术层面):运行剖面、软件规模、软件内部结构、开发方法和开发环境、可靠性投入
2.2 软件可靠性的建模方法
- 软件可靠性模型的基本组成
- 假设的局限性
- 软件可靠性模型的重要特性
2.3 软件可靠性的模型分类
- 可靠性模型分类
- 十类常用模型的内涵
3 软件可靠性管理
- 软件可靠性管理的目标、计划、进度、任务和修正措施等
- 软件工程各个阶段需开展的可靠性活动
4 软件可靠性设计
4.1 容错设计技术
- 分类:信息容错、结构容错和信息容错
- 方法:日志和副本、指令复执和程序卷回、奇余、N版本(NVP)和恢复块(RB)
4.2 检错设计技术
- 检错设计技术的重点考虑要素:检测对象、检测延时、实现方式和处理方式
- 检错设计方法:简单原理、同型原理、对称原理、层次原理和安全原理等
4.3 降低复杂度设计
- 软件的复杂性与可靠性关系
- 故障树分析(FTA)、失效模式与效应分析(FMEA)方法的应用
4.4 系统配置技术
- 双机热备技术
- 服务器集群技术
5 软件可靠性测试
5.1 软件可靠性测试概述
- 软件可靠性测试的目标和意义
- 可靠性测试的一般要求
- 要求及目前存在的问题
- 软件可靠性测试的分类(可靠性增长测试、可靠性资格测试和可靠性摸底测试)
5.2 定义软件运行剖面
- 软件运行剖面的含义和划分
- 马尔可夫链建模方法
5.3 可靠性测试用例设计
- 典型测试用例的基本组成
- 用例设计重点关注的特殊问题
5.4 可靠性测试的实施
- 软件可靠性测试实施应注意的事项
- 可靠性数据(失效时间数据、失效间隔时间数据、分组时间内的失效数和分组时间的累积失效数)
6 软件可靠性评估
6.1 软件可靠性评价概述
- 软件可靠性评估的目的和意义
- 可靠性评估过程(选择可靠性模型、收集可靠性数据、可靠性评估和预测)
6.2 可靠性模型的选择
- 可靠性模型比较和选择应考虑的方面(模型假设的适用性、预测的能力与质量、满足可靠性评价需求和使用的简便性)
6.3 可靠性数据的收集
- 可靠性数据收集存在的问题
- 数据收集的办法
6.4 软件可靠性的评估和预测
- 以模型为依据的可靠性评价技术
- 软件可靠性估计的软件工具
- 软件可靠性定量方法的灵活使用