软件可靠性工程培训讲义
时间:2025-04-08
时间:2025-04-08
软件可靠性工程孙 志 安
051885981064lxjsza716@http://www.77cn.com.cn
要 点1、软件可靠性工程:重要性与必要性 2、软件可靠性工程:框架与过程模型 3、软件可靠性工程:概念与基础 4、软件可靠性工程:模型建立 5、软件可靠性工程:可靠性度量 6、软件可靠性工程:可靠性要求制定与分配
7、软件可靠性工程:可靠性设计8、软件可靠性工程:可靠性分析 9、软件可靠性工程:可靠性测试 10、软件可靠性工程:可靠性工程管理
一、软件可靠性工程:重要性与必要性因为软件可靠性问题造成的产品故障甚至事故或灾难屡见 不鲜,俯拾皆是,触目惊心!重视软件可靠性工程的研究并付 诸于实践,是改进软件过程,提高软件可靠性的根本出路!加 强软件可靠性工程的研究和实践,势在必行,势在必然! 1.1 实例分析 1.2 软件现状 1.3 软件可靠性工程进展 1.4 软件可靠性对装备可靠性的影响
1.5 软件可靠性工程的基本问题1.6 总结
1.1 实例分析:ARAIA-5发射失败1996年6 月4日,欧洲航天局历时 10年,耗资50亿美元的ARIAN-5 火箭 在发射升空40秒后,由于攻角大于20 度,引起了极高的气动载荷,导致火 箭的助推级与芯级分离,不得不启动 自毁装臵引爆火箭。导致此灾难性后 果的主要原因是:主惯性参考系统在 将64位浮点数转换成16位有符号整数 时,数字转换超出了范围,同时没有 将正确的姿态数据传送给运载火箭的 箭载计算机所致。另一重要的原因是 这一错误在ARIAN—4 上就已经同样 存在,但在重用此软件时将错误一并 重用而未进行完备测试。
实例一:ARIAN-5发射失败
1.1 实例分析:VIKING着陆爆炸1963年,美国航天局火 星探测器 Viking 在接近火星 表面时发生爆炸,导致项目 失败,造成高达数亿美元的 损失。造成该问题的原因之 一是:弹道计算的量纲不统 一,公制英制单位混淆。地 面控制系统使用磅,卫星使 用牛顿;造成该问题的原因 之二是该探测器软件中的一 个“,”被误写为“.”。
实例二:NASA火星项目失败
1.1 实例分析:TMA1溅落偏差2003年5月4日,俄罗斯的 TMA1 号宇宙飞船从国际空间 站返回地面时,由于软件错误 导致导航系统故障,自动驾驶 仪只能以弹道方式降落,在降 落过程中,计算机又突然开始 搜索国际空间站,并试图与国 际空间站对接,使得飞行控制 中心在飞船返回过程中与飞船 失去联系长达11分钟,最终导 致飞船与原定溅落点偏差达到 460多公里。
实例三:TMA1飞船溅落偏差
1.1 实例分析:爱国者拦截失败
海湾战争期间,在一次 拦截任务中,爱国者防空系 统未能成功拦截来袭的飞毛 腿导弹,造成28名英军官兵 被炸身亡。其
原因就是跟踪 软件在运行 100 小时后出现 了一个0.36 秒的舍入误差。实例四:爱国者拦截失败
1.1 实例分析:CG48动力系统故障
案例五:美国CG48号巡洋舰动力系统故障
美海军约克城(CG- 48)号巡洋舰发生动力系统失 效事故,导致全舰各系统功能几乎瘫痪,使该舰在海上 漂流了2 小时45分钟。导致该问题的主要原因是软件出 现被零除的错误,造成数据溢出,并波及到整个网络系 统,导致动力系统失效。
1.1 实例分析:IBM360 OS开发失败IBM360系列计算机操作系统的 开发花费了大约 5 000人/年的人力 投入,最多时,1000多人同时投入 开发工作,写出了近 100 万行的源 程序。尽管投入了如此多的人力物 力,其结果却是进度一拖再拖,最 终只得放弃。据统计,这个操作系 统每次发放的新版本都是从前一版 本中找出1000个以上的错误而修正 的结果。
案例六:IBM360操作系统失败
1.2 软件现状:软件质量
软件质量问题越来越突出:令人担忧!
1.2 软件现状:软件可靠性
100 80 60 40 20 0 软件 人为 软件 硬件 人为 工艺
软件可靠性问题占装备可靠性问题的比例越来越高!
1.2 软件现状:软件可靠性90.00% 80.00% 70.00% 60.00% 50.00% 40.00% 30.00% 20.00% 10.00% 0.00% 1986 1990 1993 1997 2001 2002 硬件问题 软件问题
软件可靠性问题呈逐年上升趋势!
1.2 软件现状:软件工程意识
为我开发 一个软件
OK
顾客
程序员
软件工程意识有待进一步加强!
1.2 软件现状:软件可靠性工程意识软件测试:成也萧 何,败也萧何!!
软件可靠性工程意识亟待提高!
1.3 软件可靠性工程进展:发展历程1、由于计算机技术的飞速发展与广泛应用,软件可靠性问 题于上个世纪 50 年代在美国航空航天界得到关注和研究,相应 的概念得以产生。 2、上个世纪70年代中后期以来,以软件工程的大力发展为 契机, 假传统可靠性工程技术和方法, 软件可靠性工程得以产 生和发展。 3、软件可靠性工程的发展得益于软件可靠性模型的研究与 应用。20 世纪80 年代之前,软件可靠性工作主要侧重于模型的 研究和建立。 迄今为止,发表了 100 多种软件可靠性模型,且 新的模型还在不断推出,导致了所谓 “模型战”。 最早的软件 可靠性模型是由H.K.Weiss于 1956年提出的一系列公式,但由于 太复杂, 对后来的软件可靠性模型的研究和建立几乎没有产生 什么影响。到目前为止已经建立起了比较完备的、 适应不同软 件或不同软件阶段的软件可靠性模型。
1.3 软件可靠性工程进展:发 …… 此处隐藏:572字,全部文档内容请下载后查看。喜欢就下载吧 ……