




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第十三章件可靠性工程概论 13 1引言13 2软件可靠性的定义13 3软件可靠性的基本概念13 4定义必要的可靠性13 5开发操作剖面13 6软件测试的类型13 7软件可靠性增长试验模型 13 1引言 在计算机问世的初期 由于硬件可靠计性不高 根本无睱顾及软件的可靠性 因此软件可靠性的问题并没有引起人们的注意 随着社会信息化的进展 处在其核心地位的计算机系统的可靠性变得越来越重要 微电子科学和技术的进展出现了大量轻 薄 小且节能的硬件产品 使得计算机结构愈来愈灵活和精巧 其应用范围也由此更广泛 由于软件规模与应用领域的日益扩大 软件的故障越来越严重 出现了 软件危机 软件在现场中出现的突出问题 a 透明度差 由于采用 手工作坊 的开发方式 未能加强软件开发过程的管理 使得软件出现故障后只能由原开发者处理 其他人很难介入 与硬件产品相比 透明度很差 b 自检不能保证软件的质量 尚未建立像硬件的 三检 体制 自检 互检 专检 c 尚未建立严格的技术状态管理 即配置管理 未做到软件的规范化设计及管理 目前由于技术状态管理不严及未能进行规范化的设计与管理而引入的软件错误很多 软件危机的出路 解决软件危机的出路在于软件生产的工业化及软件开发的工程化 规范化 使软件成为工业品而不是工艺品 目前 软件生产已逐渐走上工业化 社会化 商品化的途径 软件知识的传播 软件制作方式和软件技术发展 都需要一系列关于软件性能的评价指标 用以衡量一个软件好坏 软件的可靠性就是其中很重要的一个评价指标 软件寿命周期包括了提出要求 规格说明 设计 实现 检验和维护等五阶段 软件与硬件可靠性的差别 软件的可靠性与硬件的可靠性有许多相似之处 更有许多差别 这种差异是由于软 硬件故障机理的差异造成的 因而使软件可靠性在术语内涵 指标选择 设计分析手段以及提高软件可靠性的方法与途径等方面具有其自身的特点 13 2软件可靠性的定义 软件可靠性的定义 Musa IanninoandOkumoto 1987 是在一段特定的自然单元或时间间隔内 无失效运行的概率 软件的质量包括可靠性 开发时间与开发费用三要素软件可靠性的要求1 确保产品的可靠性达到用户要求 2 加快产品上市的速度 3 降低产品的成本 4 提高用户满意度 降低用户不满意的风险 5 提高生产率 图13 1软件可靠性工程过程框图 13 3软件可靠性的基本概念 软件故障及其特性对于软件的不正常 常用的三个术语来描述 a 缺陷 fault 指的是软件的内在缺陷 b 错误 error 缺陷在一定环境条件下暴露 导致系统运行中出现可感知的不正常 不正确和不按规范执行的状态 c 故障 failure 由于对错误未作任何纠正而导致系统的不可预定的要求 软件故障的特性 缺陷可以导致错误并造成系统的故障 因此 缺陷是一切错误的根源 故存在下面的传递关系 缺陷 错误 故障软件发生故障 标志着软件一次使用寿命的结束 发生过故障的软件通常仍然是可用的 只有当软件频繁故障 或公认已经 陈旧 时 软件才被废弃 意味着这一版本软件寿命的终结 这一点需要特别加以说明 软件缺陷一般性质 a 软件缺陷的固有性b 缺陷对环境的敏感性c 软件错误的传染性 软件缺陷的固有性 软件一旦有缺陷 它将潜伏在软件中 直到它被发现和改正 反之 在一定的环境下 软件一旦运行是正确的 它将继续保持这种正确性 除非使用环境发生了变化 此外 它不像硬件 随时间的推移会因使用而不断 耗损 因此软件缺陷是 牢靠的 无耗损 的潜伏于软件之中 缺陷对环境的敏感性 对于一个软件来说 它的各部分之间有着密切的联系 软件的运行过程实际上是各部分之间交换一个逻辑组合过程 不同的逻辑组合就可得到不同的程序路径 而每一次软件运行或完成某一功能都是选择了某一条程序路径 选什么样的程序路径是由软件自身确定输入环境决定的 对于不同的输入环境 软件的运行路径可能有不同 如果软件在某些程序路径上含有缺陷 那么在执行这些程序路径时就有可能发生错误 这就是软件错误与输入环境的关系 对在一定输入环境下工作出错的软件 当退出该环境后 对于其他环境 此软件又可能正常工作 但当再次进入该环境时 软件又会出错 这缺陷对环境是十分敏感的 软件错误的传染性 任一软件缺陷 只要未被排除 始终存在该软件中 一旦暴露 处理过程就将产生错误 而这种错误往往是变化的 例如 由于某一处错误处理 使某个处理变量C的值与要求不合 当变量C继续参加运行时会引起处理过程中的其他错误 故这类错误是具有 传染性 的 如果错误不被纠正 也许这种错误就一直存在以至继续 传染 直到引起软件故障 13 4定义必要的可靠性 13 4 1失效与错误13 4 2失效强度13 4 3失效严重程度分类 13 4 1失效与错误 失效是系统运行行为对用户要求的偏离 是一种面向用户的概念 错误是在系统运行时 引起或可能潜在地引起失效的缺陷 是一种面向开发的概念 Musa 1989a 例如 当用户单击某个具体菜单项时 本来应该在屏幕上出现特定的对话框 但是却没有出现 这种行为就是一个失效 造成这种失效的错误可能是遗漏代码 请注意 失效意味着系统的运行只有在执行程序过程中才会出现软件失效 程序员发现的潜在失效 可以是设计审查 代码阅读和其他方法所产生的结果 软件错误是代码中的缺陷 是由错误引起的 是一个人或多个人的不正确或遗漏行为造成的 例如 系统工程师在定义需求时可能会犯错误 从而导致代码中的错误 而代码错误又导致在一定条件下执行系统时出现失效 13 4 2失效强度 失效强度最初是指单位时间出现的失效次数在可靠性工程中失效强度定义为失效率软件的失效强度目标 有三种主要策略 错误预防 错误清除和容错 测试是错误清除的一部分 表13 2软件失效强度目标与推荐策略 13 4 3失效严重程度分类 13 5开发操作剖面 为了开发操作剖面 对每个被测系统必须包括 确定操作模式 确定操作人员与设备 选择表格或图形 创建操作表 确定操作与故障的出现率及出现概率 三个主要术语是操作 操作剖面和操作模式 操作是一个主要的系统逻辑任务 操作应该与功能需求或产品特征 经常是列举出来的 相关 而不是设计中的子任务 当一个操作将控制权还给系统后 它释放相关的资源以便开始一个新操作 13 6软件测试的类型 软件可靠性工程测试包括两种类型 可靠性增长测试和确认测试 可靠性增长测试的目标是找到并清除错误 确认测试 如果用户将要进行验收测试 剩余错误数量与软件可靠性有关系 剩余错误不能度量而只能是推测 可靠性结合了与程序执行相关联的所有属性 例如 它包括正确性 安全性的操作方面 以及对用户的友好性 软件失效的根源在于设计错误 而硬件失效的主要根源通常在于物理变质 13 7软件可靠性增长试验模型 可靠性增长是通过逐步改正产品设计和制造中的缺陷 不断提高产品可靠性的过程 GJB451的2 6 6 可靠性增长试验 RGT 或试验 分析 改进 TAAF 是一项常用的且非常有效的提高产品可靠性的技术 其目的是 把产品置于类似其工作环境条件下进行试验 使其暴露缺陷 进而分析缺陷 改进设计 并验证改进措施的有效性 以提高产品的固有可靠性 R M简明实用卡 13 不少软件可靠性模型对具体软件的可靠性估计值与后来实际统计值相差较大 其原因主要有下述三个方面 a 建模所作假设不恰当 特别是其假设的工程意义不符合工程实际 b 收集到的软件可靠性数据本身的可信度不高 c 数学模
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年复合无机抗菌剂行业研究报告及未来行业发展趋势预测
- 2025年东北大米行业研究报告及未来行业发展趋势预测
- 2025年房车行业研究报告及未来行业发展趋势预测
- 2025年家用抽排油烟机行业研究报告及未来行业发展趋势预测
- 吡嗪酰胺共晶制备工艺与溶解性优化研究
- 2025年车门行业研究报告及未来行业发展趋势预测
- 后张有粘结预应力结构:施工工艺、监测技术与仿真分析的深度探索
- 汽车文化考试题及答案ab卷
- 养老护理员试题和及答案
- 医学可视化考试题及答案
- 集团公司石油工程专业化整合重组总体方案
- 现代设计理论与方法(上)
- EP 中文的课件资料
- 碳纤维材料工程检验批质量验收记录表优质资料
- GB/T 95-2002平垫圈C级
- 现代化工绿色化工课件
- 单孔腹腔镜课程讲义课件
- 人工血管动静脉内瘘术后护理课件
- 普通逻辑ppt课件(完整版)
- 《小学语文课程与教学论》复习题
- DB32∕T 4065-2021 建筑幕墙工程技术标准
评论
0/150
提交评论