基于故障树软件分析技术浅析.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于故障树软件分析技术浅析

基于故障树软件分析技术浅析   摘要:故障树分析法FTA(Fault Tree Analysis)是硬件可靠性、安全性分析的传统技术工具。20世纪80年代,软件的可靠性和安全性开始成为科技界关注的课题,为了适应软件可靠性和安全性分析的需要,故障树分析法被移植到软件这个新领域。故障树分析是很重要的软件分析方法。本文主要介绍了软件故障树分析(SFTA)的概念、分析步骤、用途和局限性,并结合软件实例加以说明。   关键词:软件;故障树分析      1引言      经过20年不断的应用和创新,现在软件故障树分析已经成为软件分析的重要手段并称为SFTA(Software Fault Tree Analysis)。软件故障树分析是要证明软件系统将不完成任何不希望的或意外的功能。软件故障树分析极具应用潜力,在软件开发的早期,可以用故障树分析来确定软件的安全要求,进入概要设计、详细设计设计和实现阶段,可以对故障树加以扩充,继续进行更深入的分析。      2 软件故障树分析的基本概念      软件故障树分析可以简单地被看作是这样一种分析方法,在这个分析方法中,先确定软件中一个不希望发生的事件,然后在一定的环境与工作条件下,对软件进行分析,找出不希望发生事件发生的确切方式,即找出不希望事件发生的各种原因。这个不希望发生的事件,我们称之为“顶事件”,也就是故障树的“树根”。接着,我们要继续找出不希望发生事件发生的各种下层的直接原因,并分析它们之间的逻辑关系,一直做到基层是不能再分析的事件,或者是被认为不需要再分析的事件时为止。   软件的故障树就是将风险事件通过各种逻辑关系(“与”或“或”门)顺序组合的图示模型。故障树主要有下列三种事件项目。   基本事件:不能再进一步展开的或无需再进一步展开的基本初始故障事件。   中间事件:一个逻辑门的一个或多个输入事件发生的故障事件。   顶事件:在一次故障树分析中,想要分析的最高层的不希望发生的事件。   故障树中事件之间的逻辑关系是由逻辑门表示的。故障树中常用的逻辑门是逻辑“与门”和逻辑“或门”。软件故障树分析的只是人们最为关心的特定故障模式的顶事件。所以故障树并不包含全部的故障,只包括分析者认为最可能发生的或风险最大的故障。      3 软件故障树分析的步骤      完成软件故障树分析需要以下几个步骤:   找出用户不能容忍的系统故障。软件系统中的故障如:信息的丢失、错报、错投、泄露等,指的是系统层次的主要故障。系统要完成的每个功能都有一些与该功能相关的潜在故障。   建造故障树。对确定的故障按系统层次逐级展开,找出可能导致故障发生的基本事件。在软件系统中,基本事件指可能产生不正确的结果或接受不正确的输入的软件模块,或者是不正确的参数初始化,或者内存溢出等。      故障树定性分析和定量分析。定性分析可以识别导致顶事件发生的所有故障模式集合;帮助分析人员找出非常可能导致系统故障的关键模块,发现薄弱环节;可以帮助确定在哪些基本事件或环节进行彻底测试或提供检测恢复模块。   故障树分析最好在软件设计期间、编码完成之前进行,这是为了使所设计的软件能避免或容忍已确定的故障。      4 软件故障树分析举例      该实例是某培训单位的学员选课信息修改系统。学员的个人选课信息都保存在“course”数据库。学员可以通过安全验证登录数据库,并修改个人的选课信息。当学员的个人选课资料被修改,系统会批准相应的修改,并更新数据库中的数据。系统流程图如图1所示。   确定顶事件为在学员执行所有需要的操作后,系统不能完成更新学员个人选课信息的任务。在这个事件中,系统不能更新学员信息的直接原因或者是由于数据库的修改程序破坏,或者是用户无法正常登录系统,或者是登录后无法输入信息。对于无法正常登录这一事件,其直接原因或者是登录页面无法正常显示,或者是系统验证程序失效。根据以上分析,故障树建造如图2所示。   软件故障树分析最重要的意义在于,根据分析的结果可以找出关键性的安全事故发生的原因,可以用于指导软件的安全性设计和测试、确定软件测试的重点和内容,使系统的安全得到更充分的保证。软件故障树分析中揭示的系统失效的条件,可以用来识别系统的不安全状态,决定在什么情况下应该必须采取失效-安全措施。   软件故障树分析可以用于软件寿命周期的各种阶段:在软件设计阶,软件故障树分析对安全性保障和发现、消除潜在的风险方面有很有益的影响。软件故障树分析用于开发测试用例,可以验证潜在的风险会不会发生。软件故障树分析用于设计和编码阶段,可以有意的进行特殊的设计和编码,以便将那些已经识别的风险相对于要保持故障容错的软件区域隔离起来。软件故障树分析用于测试阶段,可以有助于有针

文档评论(0)

fangsheke66 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档