软件测试的风险识别研究及应用_第1页
软件测试的风险识别研究及应用_第2页
软件测试的风险识别研究及应用_第3页
软件测试的风险识别研究及应用_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、    软件测试的风险识别研究及应用    张燕+刘善田+张佳佳+宋士涛+郑希源摘 要:软件测试工作中的风险是不可避免的,如何有效的识别软件测试中的风险非常重要。本文论述了一种新的故障树风险识别方法,能够进行定性分析和定量分析,能更有效的识别软件测试中存在的风险。关键词:软件测试;风险识别;故障树分析法doi:10.16640/ki.37-1222/t.2017.22.0971 前言软件测试是提高软件产品质量最直接、最有效的手段。在软件测试过程中,即使是规模很小的软件系统,我们也不可能对系统进行覆盖率为100%的测试,即存在用户发现软件缺陷的可能性,这就

2、是测试风险。软件测试风险管理包括行风险管理规划、风险识别、定性和定量风险分析、风险应对规划和风险监控六个主要环节。其中风险识别是指在风险事故发生之前,人们运用各种方法系统的、连续的认识所面临的各种风险以及分析风险事故发生的潜在原因。2 风险管理的研究现状风险来自于未来的不确定性,风险是指人们在生产建设和日常生活中遭遇能导致人身伤亡、财产受损及其他经济损失的自然灾害、意外事故和不可测事件的可能性。我国对于风险问题的研究是从风险决策开始的,起步较晚,“风险”一词是在1980年首次由周士康提出来的。在20世纪80年代,我国对项目风险管理的研究主要是对项目风险管理的定性描述,到了80年代末期,我国对于

3、项目的风险管理才逐步发展起来,但是针对软件测试的风险管理的论著少之又少。我国研究的风险管理大部分是针对软件开发项目,而不是软件测试项目。3 软件测试中风险识别的重要性软件测试的风险管理的目的是在测试前对可能存在的缺陷或工作中导致测试无法有效执行的可能性进行分析,来合理安排测试资源活动,尽量将测试风险将到最低。测试的不成功导致导致软件交付潜藏着问题,一旦在运行时爆发,就会带来很大的商业风险。测试风险的管理的第一步就是要识别出对测试项目产生重大影响的测试风险,这就是测试风险识别活动。事实上,有很多实施了风险管理活动的测试项目,仍然会出现较大的意外而导致测试项目失败,其根源就是测试项目没有真正识别出

4、那些会对测试项目产生危机的风险。4 目前常用的风险识别技术常用的风险识别技术,主要是头脑风暴法、访谈法和风险检查表法等。头脑风暴法是指刺激并鼓励一群知识渊博的人员畅所欲言,以发现潜在的失效模式及相关为先、风险、决策标准及/或处理办法。头脑风暴法让项目相关的人员都参与,有助于全面沟通,有助于发现新的风险,速度较快并易于开展,适合在在风险识别阶段进行定性分析。但是头脑风暴法相对松散,较难保证过程的全面性;可能会出现特殊的小组情况,某些有重要观点的人不愿意提出意见等。访谈法就是与不同的项目相关人员进行有关风险的访谈,其结果将有助于发现那些在常规计划中未被识别的风险。该方法是利用被访谈人员的资深背景和

5、工作经验来识别风险,局限性是识别的风险不够全面。风险检查表法是把测试项目可能遇到的风险列成表,风险识别人员对照表的每一项进行判断,逐个检查,该方法的优点是简单、快速、容易理解、结果稳定,缺点是专业人员不可能编制一个全面的检查表,无法预防可能遇到的新风险。5 故障树风险识别技术在研究过程中,我们发现安全系统工程中最重要的分析方法故障树分析法,能够应用到软件测试的风险识别管理中。故障树分析(fault tree analysis,fta)技术是美国贝尔电报公司的电话实验室于1962年开发的,它采用逻辑的方法,形象地进行风险的分析工作,特点是直观、明了,思路清晰,逻辑性强,体现了以系统工程方法研究安

6、全问题的系统性、准确性和预测性。我们先使用风险检查表法分析出所有的直接風险或间接风险,然后按照故障树分析法把软件测试风险视为顶事件,自上而下逐级一直分析到最底层的风险,再把所有的风险按逻辑关系(与、或等)表达出来,最后按照故障树分析法进行定性分析和定量分析,计算出软件测试风险发生的概率,或者某个风险发生的概率。我们称这种先使用风险检查表法识别出软件测试的风险,然后使用故障树分析法对风险进行分析的识别方法称为故障树风险识别技术。6 故障树风险识别技术的应用我们以某个测试项目为例,先使用风险表检查法识别出来的风险情况如下:6.1 定性分析我们用故障树风险识别技术的结构法进行定性分析计算最小割集:a

7、=a1+a2+a3=x1a4+(a5+a6)+(x5+ a4)=x1(x2+ x3)+(x4+x5)+(x6+ x5+ x7)+(x2+ x3)=x1x2+x1x3+ x2+ x3+a4+2x5+x6+ x7=x2(x1+1)+x3(x1+1)+a4+x5+x6+ x7= x2+ x3+a4+x5+x6+ x7这样我们求出了最小割集是x2、x3、a4、x5、x6、x7,这些事件是对测试风险有影响的所有事件,排除了事件x1对最终测试风险的影响。6.2 定量分析定量分析是在各个底事件相互独立和已知其发生概率的条件下,求出故障树顶事件发生的概率,根据计算结果与预定的目标值比较,可以确定如何处理该风险

8、。顶事件发生概率的计算公式为:其中,p(ai)是事件ai发生的概率。通过以上分析可以看出,采用故障树风险识别技术进行定性分析,能够排除很多无关的测试风险,有效的减少后期风险分析的工作量,能够有效改善传统识别技术逻辑性不强、识别的不够全面,存在冗余的风险等缺点。另外,故障树风险识别技术能够进行定量分析,这是传统的风险识别方法做不到的。定量分析能够提供软件测试风险或者主要测试风险发生的概率,从而更有利的指导后期的风险分析工作。7 小结通过实际运用和具体分析可以看出,故障树风险识别技术既能做定性分析又能做定量分析,能够更有效的识别软件测试中的风险,对以后软件风险的分析和解决提供更有力的依据。参考文献:1鲁英.软件测试风险分析及其对策研究d.上海:上海财经大学,2008.2谷珊.风险管理在软件测试项目中的应用d.北京:北京邮电大学,2009.3王杉杉.软件测试项目的风险管理d.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论