版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、浅谈软件可靠性工程的应用随着科学技术的不断进步,计算机技术被越来越多地应用到武器系统中。计算机软件的复杂程度随着功能的增强,因而系统的可靠性也越来越与软件直接相关。例如fti/f-16飞机首航因软件问题推迟一年,事先设计的先进程序无法使用;海湾战争中f/?18飞机飞行操纵系统计算机500次故障中,软件故障次数超过硬件。软件可靠性成为我们关注的一个问题,本文仅就软件可靠性工程在软件开发过程中的应用谈谈自己的认识。、软件可靠性工程的基本概念及进展什么是软件可靠性工程软件可靠性工程简单地说就是对基于软件产品的可靠性进行预测、建模、估量、度量及治理,软件可靠性工程贯穿于软件开发的整个过程。软件可靠性工
2、程的进展历程软件可靠性问题获得重视是二十世纪60年代末期,那时软件危机被广泛讨论,软件不可靠是造成软件危机的重要原因之一。1972年正式提出jelinskimornd模型,标志着软件可靠性系统研究的开始。在70年代软件可靠性的理论研究获得很大进展,一方面提出了数十种软件可靠性模型,另一方面是软件容错的研究。在80年代,软件可靠性从研究阶段逐渐迈向工程化。进入90年代后,软件可靠性逐渐成为软件开发考虑的主要因素之一,软件可靠性工程在软件工程领域逐渐取得相对独立的地位,成为一个生机勃勃的分支。软件可靠性工程研究的基本问题软件可靠性工程的主要目标是保证和提高软件可靠性。为达到这一目标,首先要弄清软件
3、为什么会出现故障或失效。只有这样,才有可能在软件开发过程中减少导致软件故障或失效的隐患,且一旦出现软件故障或失效,有可能采取有效措施加以清除。但是软件是开发出来的,满足可靠性要求的软件也是开发出来的,因此,软件可靠性工程的核心问题是如何开发可靠的软件。而有了软件,又该如何检验其是否满足可靠性要求?这是软件可靠性工程的又一个问题。2、软件可靠性工程在软件开发中的应用项目开发计划及需求分析阶段在项目开发计划阶段需根据产品具体要求作出软件项目开发计划,明确项目的目的、条件、运行环境、软件产品要求、人员分工和职责及进度,并估量产品的可靠性。需求分析阶段要根据项目开发计划阶段确定软件开发的主要任务、次要
4、任务和其它任务,并设计软件程序的基本流程、软件结构、模块的定义和输入输出数据、接口和数据结构等同时应对项目开发计划阶段作出的可靠性估量进一步细化形成可靠性需求,建立具体的可靠性指标。这个阶段的可靠性工作一般应如下安排:确定功能概图所谓功能概图就是产品的各种功能及其在不同环境条件下使用的概率。为确立功能概图必须定义产品的功能,功能定义不但包括要完成的任务,还包括影响处理的环境因素。对失效进行定义和分类这里应从用户的角度来定义产品失效,将软件和硬件失效及操作程序上的失效区分开,并将其按严峻程度进行分类。确定用户的可靠性要求在这个阶段应由系统设计师、软件设计师、可靠性师、测试人员及用户方代表可靠性评
5、估小组共同根据用户提出的系统可靠性来确定软件的可靠性。进行平衡关系研究通常应考虑可靠性和功能之间的关系以及可靠性、开发费用和开发周期之间的关系。一般来说,增加功能会导致可靠性降低,可靠性提高的程度一般与测试加强程度相对应,这意味着时间和费用的增加。建立可靠性指标在这个阶段应对每种失效分别建立可靠性指标。通常,首先建立系统可靠性指标,然后在硬件和软件间分配。影响建立可靠性指标的因素主要有:合同或有关标准中明确规定的可靠性指标,相似产品的可靠性指标,产品的质量保证,使用已有模块的可靠性,技术能力和局限(如容错技术的使用)等。软件设计和功能实现阶段软件设计是对上一阶段定义的每一个功能模块逐步细化,确
6、立系统体系结构,形成若干可编程的模块。说明硬件和软件模块之间的接口及它们与外部环境的接口,详细描述各模块的输入、处理过程及输出。功能实现是根据设计方案进行软件编程。该阶段主要应做:在模块间分配可靠性指标定义系统体系结构时,应将系统分解成模块同时保证总体可靠性指标。进行系统分解是应考虑以下因素:系统的物理特性、以前收集的数据的特性及收集数据需要的工作量等。确定每个模块的可靠性要求时,首先进行可靠性分配,然后根据试分配值计算系统的可靠性。这样及时调整,使各模块开发周期、难度和风险大致相当,系统的开发费用也才能降至最低。按可靠性指标进行设计目前,可靠性设计有以下几种方法:设计恢复策略、使用冗余软件单
7、元、鉴别高风险区域。设计恢复策略是指软件只须重新启动即可消除失效的设计,设计恢复应能保存修复可能破坏的数据,应具备确定失效发生时间和阻止继续运行的机制,以减少程序数据的破坏。使用冗余软件单元时是采纳与原软件单元不同的冗余软件单元来提高可靠性。鉴别高风险区域采纳fme(失效类型与后果分析)和ft(错误树分析)的方法来进行可靠性分析。根据功能概图集中资源配置根据功能概图把人力、物力等资源用到用户认为最重要的地方。操纵错误的引入和传播错误是引起软件失效的根本原因,所以操纵每个开发步骤中引入的错误数目及未被察觉的而传入下一步的错误数目,对于操纵产品的可靠性是非常重要的。错误操纵受多种因素影响,其中主要
8、有: TOC o 1-5 h z .构造模块化系统;进行软件重用;进行单元和集成测试,阻止错误向下一开发步骤传播;进行检查和复核;操纵改动。度量现成软件的可靠性如果在产品中使用现成的未在本产品中开发或测试过的软件,必须对其进行可靠性证明,证明其可靠性指标在可以接受的范围内方可采纳。系统测试和现场试运行阶段系统测试和现场运行以确认产品的软件要求是否得到满足,用户是否可以实际应用。系统测试阶段是开发过程阶段的最后阶段,如果措施得当,可以在产品首次使用前进一步提高可靠性。现场试运行阶段在用户环境中验证产品的各种说明及系统测试所得的可靠性指标。这个阶段的工作有以下工作:一个操确定操作概图操作概图是指实
9、现系统功能的操作及其概率的集合,作可以是特定环境下执行的一条命令,或同时附有限定范围内的参数或输入变量集。确定操作概图是测试计划的一个重要部分,一般在系统测试阶段之前由测试计划人员,在系统设计师和软件设计人员的协助下完成。进行可靠性增强测试在系统测试阶段需进行可靠性增强测试。在可靠性增强测试中,系统测试员根据操作概图描述各种操作的现场发生概率,按比例的执行测试用例,通过模仿用户的应用方式可靠性增强测试,易于发现令用户最不中意的失效,能够反映出用户使用时的可靠性感受。根据测试进展并证明可靠性指标是否达到要求在可靠性增强测试中,要收集失效数据,利用已有或自行设计并经验证的可靠性工具跟踪测试进展及规
10、划必须的额外测试,根据进展情况在系统测试进行中可以对资源和进度安排随时做必要的调整。现场可靠性评估系统测试阶段完成后,转入现场试运行阶段。在试运行中,从现场收集失效数据,利用此数据和软件工具评估现场可靠性,然后与系统测试结束后测得的可靠性相比较,同时对可靠性差异的产生原因进行分析。维护阶段维护阶段是在产品用户使用过程中改正软件暴露出来的与失效有关的错误。在这个阶段监视产品现场运行的可靠性,并和预定指标及用户的中意程度进行对比比较,以便提高后继版本的可靠性,改进软件开发过程中的质量。此阶段主要做的工作是:用可靠性模型规划产品交付使用之后的人员需求,如:用户恢复失效操作的人员,承制方处理用户报告的
11、失效的人员,承制方处理与用户报告的失效有关的错误的软件开发人员。监视现场可靠性是否达到预期指标,根据其间的差距采取相应的措施。同时还应跟踪用户是否中意,根据不中意的情况,进行必要的现场支持服务及产品改动。当加入新的功能时,通过监视可靠性,消除由此带来的失效强度增加。分析软件交付使用后的失效产生原因,指导工程的改进,降低引入类似错误的可能性。3、软件可靠性工程成功应用的实例美国tt公司的国际definityr程控交换机部在系统软件开发过程中应用了软件可靠性工程,相对于以前发行的主要软件版本,产品的质量提高是惊人的: TOC o 1-5 h z 用户反映的问题下降了10倍;项目维护费用下降了10倍;系统测试件的间隔缩短了2倍;引入新产品的间隔缩短了30%。而且,在投入运行的前两年,从未发生严峻影响业务的机器中断,客户中意程度大为提高。具体分析原因,有以下两点:把可靠性作为确定是否发行的标准,可幸免用户在使用中反映过多问题和进行相应的维护工作。采纳“操作概图驱动”的测试方法,提高了测试效率;20%的操作覆盖了95%的应用,20%的错误导致了95%的实效;先测试20%的使用最频繁的操作可以加速可靠性的提高。4、结束语软件的可靠性中正越来越引起软件研发部门的重视,但因为这是一门新兴的学科,对于提高软件质量,国内外还未能从软件可靠性
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026江西农业大学继续教育学院劳动聘用制人员招聘2人笔试题库【考点精练】附答案详解
- 2026北京市大兴区高米店街道社区卫生服务中心招聘临时辅助用工人员3人模拟试卷【基础题】附答案详解
- 农业知识测试题及答案
- 新疆四年级语文试题卷及答案
- 道法中考试题归类及答案
- 2026陕西宝鸡高新区事业单位招聘高层次人才40人参考题库(考点梳理)附答案详解
- 人工智能应用场景创新研究
- 临床统计学考试题及答案
- 高端柔性材料创新
- 2026年福建厦门市发展和改革委员会招聘非在编辅助岗人员1人笔试题库附答案详解(黄金题型)
- 2026河北石家庄行唐县住房和城乡建设局公开招聘协管员95名考试参考题库及答案详解
- 万家寨水务控股集团所属企业招聘笔试真题2025
- 数学六年级上册重难点题型精讲精练(含解析)人教版
- 小学五年级上册数学计算题专项练习(30天每日一练 )
- 【社会主义核心价值观融入社会生活存在的问题及对策10000字】
- 领导带值班制度培训课件
- 成都银都紫藤2025小升初入学分班考试数学考试试题及答案
- 数据安全企业数据安全指导书
- 2025年汕头市社区工作者招聘考试真题及答案
- 做账实操-再生铜行业行业账务处理分录示例
- 2026年乡村振兴专员招聘考试试题(含答案)
评论
0/150
提交评论