欢迎来到天天文库
浏览记录
ID:53577143
大小:10.26 MB
页数:44页
时间:2020-04-20
《软件缺陷及缺陷管理和Mantis.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、软件缺陷与缺陷管理主讲:TivonLiang课程目标•了解软件缺陷的分类、定义、相关属性•了解软件缺陷管理的目的、人员职责、过•掌握软件缺陷的生命周期及处理过程•了解缺陷跟踪工具-mantis软件及软件缺陷•软件=程序+数据+用户文档用户文档软件–软件是人编写的,是人就会犯错误。–即使标准的商业软件程序数据里也存在软件缺陷,只是严重程度不同而已。•软件测试的最终目的是什么?–最终的底线就是令用户满意。缺陷是什么?•Bug(臭虫、虫子)–来源于1945,格蕾丝·赫柏(GraceMurrayHopper)。美国海军电脑专家,最早将人类语言融入到电脑程序的人之一。–用来表示“一个在电脑程序
2、里的错误”,并沿用至今。错误的种类•关于错误你知道多少?–故障(fault)、失效(failure)、错误(error)、缺陷(defect)、问题(issue)隐错(bug)、过失(mistakes)–软件错误是人为错误。所有的人类活动,尤其是复杂的活动都难免犯错,必须接受这个现实,将测试的重点集中在查找错误上,并采取最有效的方式。错误的种类•软件测试中常用的术语包括:–软件错误(softwareerror)–软件缺陷(softwaredefect)–软件故障(softwarefault)–软件失效(softwarefailure)•区分这些术语很重要,关系到对软件失效现象和机理的
3、理解。但总的来说,软件的失效机理可描述为:–软件错误→软件缺陷→软件故障→软件失效错误的种类•软件错误:软件错误是指在软件生存期内的不希望或不可接受的人为错误,其结果是导致软件缺陷的产生;相对于软件本身,是一种外部行为。•软件缺陷:软件缺陷是存在于软件(文档,数据,程序)之中的那些不希望或不可接受的偏差。其结果是软件运行于某一特定条件时出现软件故障,这时称软件被激活•软件故障:软件故障是指软件运行过程中出现的一种不希望或不可接受的内部状态。比如:软件处于执行一个多余循还过程时,软件可能出现故障。若出现故障时,没有当的措施(容错)加以处理,便产生软件失效。软件故障是一种动态行为。•软件
4、失效:软件失效是指软件运行时产生的一种不希望或不可接受的外部行为结果。错误的种类•综上所述:软件错误是一种人为错误。一个软件错误必定产生一个软件故障。当一个软件缺陷被激活时,便产生一个软件故障,同一个软件缺陷在不同条件下被激活,可能产生不同的软件故障。软件故障如果没有及时容错措施加以处理,便不可避免的导致软件失效。关于IEEE/ANSI的解释(std610.12-1999)•过失(mistake):人为产生的不正确的结果。•故障(fault):在程序中的一个不正确的步骤、过程,或数据定义,是过失发展的结果(可能导致失效)。•失效(failure):一个不正确的结果,故障(例如崩溃)引
5、起的结果(表现)。•错误(error):导致不正确结果的全部。软件缺陷:正式定义•(美)RonPatton《软件测试》中的定义:–1.软件未达到产品说明书标明的功能。–2.软件出现了产品说明书指明不会出现的错误。–3.软件功能超出产品说明书指明范围。–4.软件未达到产品说明书虽未指出但应达到的目标。–5.软件测试员认为软件难以理解、不易使用、运行速度缓慢,或者最总用户认为不好。–只有符合以上5个规则才能叫软件缺陷。•国标定义:–存在于软件(文档、数据、程序)之中的那些不希望,或不可接受的偏差,而导致软件产生的质量问题。产生缺陷的原因10%7%需求设计代码56%27%其它缺陷分布图。数
6、据摘自Dickbender(1993)的“writingtestablerequirement”,图中的“需求”一词包含了功能设计(1993,1994SoftwareDevelopmenttechnologies)缺陷修复的代价•软件在从需求、设计、编码、测试一直到交付用户公开使用后的过程中,都有可能产生和发现缺陷。随着整个开发过程的时间推移,更正缺陷或修复问题的费用呈几何级数增长。100806040200编制说明书设计阶段编写代码测试发布软件缺陷在不同阶段发现时修复的费用示意图缺陷管理-目的•缺陷管理目的是对各阶段测试发现的缺陷进行跟踪管理,以保证各级缺陷的修复率达到标准。主要实现
7、以下目标:–及时了解并跟踪每个被发现的缺陷;–确保每个被发现的缺陷都能被处理;–收集缺陷数据并根据缺陷趋势曲线识别测试过程阶段;–收集缺陷数据并在其上进行数据分析,作为组织过程的财富。缺陷管理-人员职责•项目经理(PM)–负责指派缺陷给相关责任人。•项目测试负责人(TM)–决定缺陷管理方式和工具,拟定决策评审计划;–管理所有缺陷关闭情况;–审核测试人员提交的缺陷;–对测试人员的工作质量进行跟踪与评价。•测试人员(TE)–负责报告系统缺陷记录,且协助项目人员
此文档下载收益归作者所有