软件缺陷的研究

来源 :无线互联科技 | 被引量 : 0次 | 上传用户:caozhi7963
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:严重性和优先级是软件缺陷的两个重要属性,在软件测试过程中如果对两者的概念、划分方法和关联性理解的不夠准确,不但对缺陷的统计结果、缺陷报告的质量造成影响,而且还会延误软件的正常发布期限。本文就如何正确区分和处理缺陷的严重性和优先级展开讨论,旨在提高软件质量、降低研发风险。
  关键词:软件测试;缺陷;严重性
  缺陷的严重性是指缺陷对被测试系统造成的破坏程度的大小,这种破坏既包括缺陷对被测系统的影响程度,也包括缺陷妨碍系统使用的程度。在软件测试中,判断缺陷的严重性应该从软件最终用户的角度出发,评估缺陷给用户造成的恶劣后果和产生的损失。
  缺陷的优先级是指处理和修正软件缺陷先后顺序的指标,即哪些缺陷需要优先修正,哪些缺陷可以稍后修正。确定软件缺陷优先级,更多的是站在软件开发工程师的角度考虑问题,因为缺陷的修正顺序是个复杂的过程,不纯粹是技术问题,而且开发人员更熟悉软件代码,能够比测试工程师更清楚修正缺陷的难度和风险。
  1 四种错误和轻重缓急
  1.1 判断缺陷的4种错误
  正确处理和区分缺陷的严重性和优先级,是包括软件测试人员和开发人员在内的全体项目组成员的一件大事,对于经验不很丰富的项目组成员来说,经常会犯下述4种错误:①把低严重性的缺陷当作高严重性来处理。②把高严重性的缺陷当作低严重性来处理。③把低优先级的缺陷当作高优先级来处理。④把高优先级的缺陷当作低优先级来处理。在此,可以将这4种错误归结为2类,在测试工作中,犯了前2种错误说明在缺陷的判断上“不分轻重”,出现后2种错误则表示在缺陷的判断上“不分缓急”。如果要在测试工作中准确判断缺陷的严重性与优先级,应该合理区分轻重缓急,这既是保证软件质量的重要环节,也是项目组成员能力与经验的最好体现。
  1.2 何为缺陷的轻重缓急
  测试工作也正是如此,要避免在缺陷的严重性和优先级上判断失误,必须分清缺陷的轻重缓急。“轻”,指的是相对重要但不紧急的缺陷;“重”,是指最重要也是最紧急的缺陷;“缓”,指的是不重要也不紧急的缺陷;“急”,则是指不是最重要但却最为紧急的缺陷。理清这种关系之后,就算同时测试许多不同类型的缺陷,也会很快弄清楚哪些缺陷是必须马上完成的,哪些缺陷可以暂时缓一缓,这样也就不会被堆积如山的Bug所压垮,缺陷修复和回归测试的效率自然也会得到很大的提高。当然,要做到这一点必须明白严重性与优先级的等级划分和其间的关联性,并借助相关的评估技术工具才能实现。
  2 如何划分严重性和优先级的等级
  将缺陷的严重性和优先级作等级分类,对于IT企业来说是一项非常重要的任务,因为有了等级分类才能协调企业各部门处理事务的排程。销售、客服和项目经理都需要知道缺陷发生时对交货期的影响,QA也需要知道软件目前的品质状况。
  确定严重性和优先级的等级必须全面了解和深刻的体会缺陷的特征,要从用户和开发人员以及市场等因素综合考虑。从项目组分工来看,应由软件测试人员确定缺陷的严重性,由软件开发人员确定缺陷的优先级。往往在实际测试中,通常都是由软件测试人员在缺陷报告中同时确定严重性和优先级。
  3 严重性与优先级的关联性
  缺陷的严重性和优先级是含义不同但相互联系密切的两个概念。它们都从不同的侧面描述了软件缺陷对软件质量和最终用户的影响程度和处理方式。一般情况下,缺陷的严重性和优先级之间是存在密切关联的,即严重性越高,处理优先级别越高。然而,严重性和优先级并不总是一一对应的。
  3.1 高严重性,低优先级
  当某个Bug的发生概率非常低(如执行测试用例出现该缺陷的几率低于5%),或仅在极端条件下才引发该缺陷时,可能将其优先级定得很低。这里其实包含了一个风险评估的思想,当缺陷具有高严重性时,缺陷对系统造成的破坏力是很强的,但因为发生概率很低,开发方会认为该缺陷被用户发现的概率非常低,在产品遇到发布压力的时候,开发方会选择将缺陷留在下一个发布版本之前再进行修复。例如,“当上传附件超过50G时,传输过程中出现网站崩溃现象”。从在传输过程中出现网站崩溃的现象上看,这是一个严重级别最高的Bug,但触发它的条件是用户上传了一个超过50G的附件。通常,在实际应用中很少有用户会去刻意上传一个超过50G的文件,这种极端特殊事件发生概率是相当低的。当一个软件版本即将发布,而又来不及修改时,可把这个Bug设成低优先级,留到下一次版本发布前修改掉。
  为了保证报告缺陷的严重性和优先级的一致性,QA需要经常检查测试和开发人员对于这两个指标的分配和处理情况,及时发现问题,及时反馈给项目负责人,尽早解决问题。当然,比较规范的软件测试,还需要使用软件缺陷管理工具(如Bugzilla、Quality Center等)进行缺陷报告和处理,开始使用前应对全体测试人员和开发人员进行培训,对缺陷严重性和优先级的表示和划分方法统一规定和遵守。在测试项目进行过程中,充分利用评估技术法则统计缺陷的严重性,确定软件模块的开发质量,评估软件项目实施进度;统计优先级的分布情况,控制开发进度,尽快处理缺陷,使开发按照项目进度有效进行,从而达到提高软件的质量、降低风险与成本的目的。
  [参考文献]
  [1]肖利琼.软件测试之魂:核心测试设计精解(第2版)[M].电子工业出版社,2013.
  [2]郁莲.软件测试方法与实践[M].清华大学出版社,2008.
  [3]王青,伍书剑,李明树.软件缺陷预测技术[J].软件学报.2008(07).
其他文献
患者,男,60岁,退休工人。主诉:右前胸隐痛1月余伴低热。无明显诱因下,右前胸隐痛,偶尔呈针刺样;继而出现低热,无明显规律性;病程中无咳嗽、咳痰,无痰中带血。在当地诊所给予抗炎对症治
基于服务质量(QoS)的服务评价和服务链优化,是空间信息服务的核心技术之一。然而,由于QoS数据的量测、发布和获取缺乏相关标准及软件工具的支持,在实践中难以形成一个完善的Q
天然气与老百姓的生活息息相关,但是,燃气作为一种危险化学物质,又具有易燃易爆属性,泄漏后易产生重大事故。故,燃气稽查管理工作的重要性不言而喻。燃气稽查管理包括打击黑
随着社会经济的发展以及工业水平的提高,天然气因为其环保、体积轻便等特点得到了大力普及,然而,在天然气提高人们生活水平、减少有害气体排放方面取得巨大进步的同时,天然气
一些虚拟化解决方案往往比别的方案需要更高的成本。但是有些方案,比如红帽的企业虚拟化(REEV)有其固定的可预见成本,这就消除了预算中的不确定因素。通常,虚拟化的首要目标是利用
近年来,上海市结合当地实际,认真开展创建和谐劳动关系各项工作,积极维护劳动者的合法权益,促进全市劳动关系和谐稳定,为世博会成功举办,为促进上海社会和谐做出不懈努力。
目的评价短小棒状杆菌和顺铂治疗恶性胸腔积液的疗效及安全性。方法可评价疗效的恶性胸腔积液患者随机分为治疗组与对照组。治疗组20例,采用单J管持续胸腔引流后注人短小棒状
导语 亚信安全在京召开“亚信安全1周年暨2017战略媒体沟通会”。本次会议指明了不断演化的全球网络威胁及国家网络安全战略驱动下的产业发展源动力.回顾总结了亚信安全在2016
随着现代化经济的发展,高速公路的普及,汽车的速度越来越快,安全成为一个必不可少的话题。本文就安全气囊的安全问题,由分析当前安全气囊存在的弊端入手,展开深入讨论,提出安
<正> 在秦皇岛硅酸盐学会和天津硅酸盐学会,洛阳耐火材料研究所的联合组织领导下,于1986年9月3日至6日在秦皇岛召开了“玻璃窑用耐火材料基础理论第二次讨论会”。出席会议的