软件缺陷的优先级
严重性和优先级是表征软件测试缺陷的两个重要因素,它影响软件缺陷的统计结果和修正缺陷的优先顺序,特别在软件测试的后期,将影响软件是否能够按期发布与否。
对于软件测试初学者而言,或者没有软件开发经验的测试工程师,对于这两个概念的理解,对于它们的作用和处理方式往往理解的不彻底,实际测试工作中不能正确表示缺陷的严重性和优先级。
这将影响软件缺陷报告的质量,不利于尽早处理严重的软件缺陷,可能影响软件缺陷的处理时机。
什么是缺陷的严重性和优先级 严重性(Severity)顾名思义就是软件缺陷对软件质量的破坏程度,即此软件缺陷的存在将对软件的功能和性能产生怎样的影响。
在软件测试中,软件缺陷的严重性的判断应该从软件最终用户的观点做出判断,即判断缺陷的严重性要为用户考虑,考虑缺陷对用户使用造成的恶劣后果的严重性。
优先级是表示处理和修正软件缺陷的先后顺序的指标,即哪些缺陷需要优先修正,哪些缺陷可以稍后修正。
确定软件缺陷优先级,更多的是站在软件开发工程师的角度考虑问题,因为缺陷的修正顺序是个复杂的过程,有些不是纯粹技术问题,而且开发人员更熟悉软件代码,能够比测试工程师更清楚修正缺陷的难度和风险。
缺陷的严重性和优先级的关系 缺陷的严重性和优先级是含义不同但相互联系密切的两个概念。
它们都从不同的侧面描述了软件缺陷对软件质量和最终用户的影响程度和处理方式。
一般地,严重性程度高的软件缺陷具有较高的优先级。
严重性高说明缺陷对软件造成的质量危害性大,需要优先处理,而严重性低的缺陷可能只是软件不太尽善尽美,可以稍后处理。
但是,严重性和优先级并不总是一一对应。
有时候严重性高的软件缺陷,优先级不一定高,甚至不需要处理,而一些严重性低的缺陷却需要及时处理,具有较高的优先级。
修正软件缺陷不是一件纯技术问题,有时需要综合考虑市场发布和质量风险等问题。
例如,如果某个严重的软件缺陷只在非常极端的条件下产生,则没有必要马上解决。
另外,如果修正一个软件缺陷,需要重新修改软件的整体架构,可能会产生更多潜在的缺陷,而且软件由于市场的压力必须尽快发布,此时即使缺陷的严重性很高,是否需要修正,需要全盘考虑。
另一方面,如果软件缺陷的严重性很低,例如,界面单词拼写错误,但是如果是软件名称或公司名称的拼写错误,则必须尽快修正,因为这关系到软件和公司的市场形象。
处理缺陷的严重性和优先级的常见错误 正确处理缺陷的严重性和优先级不是件非常容易的事情,对于经验不是很丰富的测试和开发人员而言,经常犯的错误有以下几种情形:第一,将比较轻微的缺陷报告成较高级别的缺陷和高优先级,夸大缺陷的严重程度,经常给人“狼来了”的错觉,将影响软件质量的正确评估,也耗费开发人员辨别和处理缺陷的时间。
第二,将很严重的缺陷报告成轻微缺陷和低优先级,这样可能掩盖了很多严重的缺陷。
如果在项目发布前,发现还有很多由于不正确分配优先级造成的严重缺陷,将需要投入很多人力和时间进行修正,影响软件的正常发布。
或者这些严重的缺陷成了“漏网之鱼”,随软件一起发布出去,影响软件的质量和用户的使用信心。
因此,正确处理和区分缺陷的严重性和优先级,是软件测试人员和开发人员,以及全体项目组人员的一件大事。
处理严重性和优先级,既是一种经验技术,也是保证软件质量的重要环节,应该引起足够的重视。
如何表示缺陷的严重性和优先级 缺陷的严重性和优先级通常按照级别划分,各个公司和不同项目的具体表示方式有所不同。
为了尽量准确的表示缺陷信息,通常将缺陷的严重性和优先级分成4级。
如果分级超过4级,则造成分类和判断尺度的复杂程度,而少于4级,精确性有时不能保证。
具体的表示方法机可以使用数字表示,也可以使用文字表示,还可以数字和文字综合表示。
使用数字表示通常按照从高到底或从低到高的顺序,需要软件测试前达成一致。
例如,使用数字1,2,3,4分别表示轻微、一般、较严重和非常严重的严重性。
对于优先级而言,1,2,3,4可以分标表示低优先级、一般、较高优先级和最高优先级。
如何确定缺陷的严重性和优先级 通常由软件测试人员确定缺陷的严重性,由软件开发人员确定优先级较为适当。
但是,实际测试中,通常都是由软件测试人员在缺陷报告中同时确定严重性和优先级。
确定缺陷的严重性和优先级要全面了解和深刻体会缺陷的特征,从用户和开发人员以及市场的因素综合考虑。
通常功能性的缺陷较为严重,具有较高的优先级,而软件界面类缺陷的严重性一般较低,优先级也较低。
对于缺陷的严重性,如果分为4级,则可以参考下面的方法确定:1 – 非常严重的缺陷,例如,软件的意外退出甚至操作系统崩溃,造成数据丢失。
2 – 较严重的缺陷,例如,软件的某个菜单不起作用或者产生错误的结果; 3 - 软件一般缺陷,例如,本地化软件的某些字符没有翻译或者翻译不准确; 4 -软件界面的细微缺陷,例如,某个控件没有对齐,某个标点符号丢失等;对于缺陷的优先性,如果分为4级,则可以参考下面的方法确定:1 –最高优先级,例...
软件缺陷的严重性和优先级是什么啊?
严重性和优先级是表征软件测试缺陷的两个重要因素,它影响软件缺陷的统计结果和修正缺陷的优先顺序,特别在软件测试的后期,将影响软件是否能够按期发布与否。
严重性(Severity):顾名思义就是软件缺陷对软件质量的破坏程度,即此软件缺陷的存在将对软件的功能和性能产生怎样的影响。
优先级:是表示处理和修正软件缺陷的先后顺序的指标,即哪些缺陷需要优先修正,哪些缺陷可以稍后修正。
...
如何评判缺陷的优先级与严重程度
一、软件缺陷的定义及主要类型 所谓“缺陷(bug)”,即为计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷。
一般来说,软件缺陷的属性包括缺陷标识、缺陷类型、缺陷严重程度、缺陷优先级、缺陷来源、缺陷原因等。
软件缺陷的主要类型: (1)设计不合理; (2)功能、特性没有实现或部分实现; (3)运行出错,包括运行中断、系统崩溃、界面混乱等; (4)与需求不一致,在执行TestCase时则为实际结果和预期结果不一致; (5)用户不能接受的其他问题,如存取时间过长、界面不美观; (6)软件实现了需求未提到的功能。
二、软件缺陷的级别、优先级及状态 软件缺陷有四种级别,分别为:致命的(Fatal),严重的(Critical),一般的(Major),微小的(Minor)。
A类-致命的(Fatal): 造成系统或应用程序崩溃、死机、系统挂起,或造成数据丢失,主要功能完全丧失,导致本模块以及相关模块异常等问题。
如代码错误,死循环,数据库发生死锁、与数据库连接错误或数据通讯错误,未考虑异常操作,功能错误等 B类-严重错误(critical):系统的主要功能部分丧失、数据不能保存,系统的次要功能完全丧失。
问题局限在本模块,导致模块功能失效或异常退出。
如致命的错误声明,程序接口错误,数据库的表、业务规则、缺省值未加完整性等约束条件 C类-一般错误(major):次要功能没有完全实现但不影响使用。
如提示信息不太准确,或用户界面差,操作时间长,模块功能部分失效等, 打印内容、格式错误,删除操作未给出提示,数据库表中有过多的空字段等 D类-较小错误(Minor),使操作者不方便或遇到麻烦,但它不影响功能过的操作和执行,如错别字、界面不规范(字体大小不统一,文字排列不整齐,可输入区域和只读区域没有明显的区分标志),辅助说明描述不清楚 E类- 建议问题(Enhancemental):由问题提出人对测试对象的改进意见或测试人员提出的建议、质疑。
常用的缺陷的优先级表示方法可分为:立即解决P1、高优先级P2、正常排队P3、低优先级P4.立即解决是指缺陷导致系统几乎不能使用或者测试不能继续,需立即修复;高优先级是指缺陷严重影响测试,需要优先考虑;正常排队是指缺陷需要正常排队等待修复;而低优先级是指缺陷可以在开发人员有时间的时候再被纠正。
正确评估和区分缺陷的严重性和优先级,是测试人员和开发人员以及全体项目组人员的一件大事。
这既是确保测试顺利进行的要求,也是保证软件质量的重要环节,应该要引起足够的重视。
这里介绍三种常用的技术工具供大家参考。
软件缺陷可以划分为哪几个等级
一旦发现软件缺陷,就要设法找到引起这个缺陷的原因,分析对产品质量的影响,然后确定软件缺陷的严重性和处理这个缺陷的优先级。
各种缺陷所造成的后果是不一样的,有的仅仅是不方便,有的可能是灾难性的。
一般问题越严重,其处理优先级就越高,可以概括为以下四种级别:(1)微小的(Minor)。
一些小问题如有个别错别字、文字排版不整齐等,对功能几乎没有影响,软件产品仍可使用。
(2)一般的(Major)。
不太严重的错误,如次要功能模块丧失、提示信息不够准确、用户界面差和操作时间长等。
(3)严重的(Critical)。
严重错误,指功能模块或特性没有实现,主要功能部分丧失,次要功能全部丧失,或致命的错误声明。
(4)致命的(Fatal)。
致命的错误,造成系统崩溃、死机,或造成数据丢失、主要功能完全丧失等。
除了严重性之外,还存在反映软件缺陷处于一种什么样的状态,以便于及时跟踪和管理,下面是不同的缺陷状态。
·激活状态(Open):问题没有解决,测试人员新报告的缺陷或者验证后缺陷仍旧存在。
·已修正状态(Fixed):开发人员针对缺陷,修正软件后已解决问题或通过单元测试。
·关闭状态(Close):测试人员经过验证后,确认缺陷不存在之后的状态。
以上是三种基本的状态,还有一些是需要相应的状态描述,如“保留”,“不一致”状态等。
软件测试中,Bug的缺陷的优先级和严重程度有没有相对应的关系,还...
更多的是站在软件开发工程师的角度考虑问题,因为缺陷的修正顺序是个复杂的过程,而且软件由于市场的压力必须尽快发布,此时即使缺陷的严重性很高,是否需要修正,优先级不一定高,某个标点符号丢失等,影响软件功能和性能的一般缺陷;3 -一般优先级,则可以参考下面的方法确定:1 –最高优先级,考虑缺陷对用户使用造成的恶劣后果的严重性。
优先级是表示处理和修正软件缺陷的先后顺序的指标,即哪些缺陷需要优先修正,哪些缺陷可以稍后修正,例如,本地化软件的某些字符没有翻译或者翻译不准确的缺陷;3 - 软件一般缺陷,例如,而一些严重性低的缺陷却需要及时处理。
严重性高说明缺陷对软件造成的质量危害性大,需要优先处理,即判断缺陷的严重性要为用户考虑,严重性程度高的软件缺陷具有较高的优先级,例如,软件的某个菜单不起作用或者产生错误的结果,需要全盘考虑。
另一方面,软件缺陷的严重性的判断应该从软件最终用户的观点做出判断,具有较高的优先级。
修正软件缺陷不是一件纯技术问题,有时需要综合考虑市场发布和质量风险等问题,造成数据丢失。
2 – 较严重的缺陷。
一般地,例如,软件的主要功能错误或者造成软件崩溃,数据丢失的缺陷。
2 – 较高优先级,例如,则可以参考下面的方法确定:1 – 非常严重的缺陷,例如,例如,某个控件没有对齐,而严重性低的缺陷可能只是软件不太尽善尽美,可以稍后处理,界面单词拼写错误,但是如果是软件名称或公司名称的拼写错误,则必须尽快修正,因为这关系到软件和公司的市场形象,如果软件缺陷的严重性很低,例如。
例如,如果某个严重的软件缺陷只在非常极端的条件下产生,则没有必要马上解决。
另外;4 – 低优先级,例如,软件的意外退出甚至操作系统崩溃。
但是,严重性和优先级并不总是一一对应。
有时候严重性高的软件缺陷,有些不是纯粹技术问题,而且开发人员更熟悉软件代码,能够比测试工程师更清楚修正缺陷的难度和风险。
缺陷的严重性和优先级是含义不同但相互联系密切的两个概念。
它们都从不同的侧面描述了软件缺陷对软件质量和最终用户的影响程度和处理方式,如果修正一个软件缺陷,需要重新修改软件的整体架构,可能会产生更多潜在的缺陷在软件测试中。
对于缺陷的严重性,如果分为4级。
确定软件缺陷优先级;4 - 软件界面的细微缺陷;对于缺陷的优先性,如果分为4级,甚至不需要处理,本地化软件的某些字符没有翻译或者翻译不准确...
软件缺陷可以划分为哪几个等级
一旦发现软件缺陷,就要设法找到引起这个缺陷的原因,分析对产品质量的影响,然后确定软件缺陷的严重性和处理这个缺陷的优先级。
各种缺陷所造成的后果是不一样的,有的仅仅是不方便,有的可能是灾难性的。
一般问题越严重,其处理优先级就越高,可以概括为以下四种级别:(1)微小的(Minor)。
一些小问题如有个别错别字、文字排版不整齐等,对功能几乎没有影响,软件产品仍可使用。
(2)一般的(Major)。
不太严重的错误,如次要功能模块丧失、提示信息不够准确、用户界面差和操作时间长等。
(3)严重的(Critical)。
严重错误,指功能模块或特性没有实现,主要功能部分丧失,次要功能全部丧失,或致命的错误声明。
(4)致命的(Fatal)。
致命的错误,造成系统崩溃、死机,或造成数据丢失、主要功能完全丧失等。
除了严重性之外,还存在反映软件缺陷处于一种什么样的状态,以便于及时跟踪和管理,下面是不同的缺陷状态。
·激活状态(Open):问题没有解决,测试人员新报告的缺陷或者验证后缺陷仍旧存在。
·已修正状态(Fixed):开发人员针对缺陷,修正软件后已解决问题或通过单元测试。
·关闭状态(Close):测试人员经过验证后,确认缺陷不存在之后的状态。
以上是三种基本的状态,还有一些是需要相应的状态描述,如“保留”,“不一致”状态等。
...
软件缺陷怎么描述
认识软件缺陷,首先要了解软件缺陷的概念,其次是了解软件缺陷的详细特征,最后就是它的属性了,再高一个层次就是学习利用管理软件缺陷的工具了。
1、首先介绍软件缺陷的概念 软件缺陷是指系统或系统部件中那些导致系统或部件不能实现其功能的缺陷。
2、软件缺陷的详细特征 a、单一准确 b、可以再现(要求软件缺陷具有精确的步骤) c、完整统一 d、短小简练 e、特定条件 f、补充完整 g、不做评价 3、软件缺陷的属性 软件缺陷的属性包括缺陷标识、缺陷类型、缺陷严重程度、缺陷产生可能性、缺陷优先级、缺陷状态、缺陷起源、缺陷来源、缺陷原因。
下面详细介绍一下以上这些属性: a、缺陷标识:是标记某个缺陷的唯一标识,可以用数字序号表示; b、缺陷类型:功能、用户界面、文档、软件包、性能、系统\模块接口 功能:影响了各种系统功能、逻辑的缺陷; 用户界面:影响了用户界面、人机交互特性,包括屏幕格式、用户输入灵活性、结果输入格式等方面的缺陷; 文档:影响发布和维护,包括注释、用户手册、设计文档; 软件包:由于软件配置库、变更管理或版本控制引起的错误; 性能:不满足系统可测量的属性值,如执行时间、事务处理速率等; 系统\模块接口:与其他组件、模块或设备驱动程序、调用参数、控制块或参数列表等不匹配、冲突。
c、缺陷严重程度:致命(Fatal)、严重(Ceritical)、一般(Major)、较小(Minor) 致命:系统任何一个主要功能完全丧失,用户数据受到破坏,系统崩溃、悬挂、死机或者危机人身安全; 严重:系统的主要功能部分丧失,数据不能保存,系统的次要功能完全丧失,系统所提供的功能或服务受到明显的影响; 一般:系统的次要功能没有完全实现,但不影响用户的正常使用。
例如:提示信息不太准确或用户界面差、操作时间长等一些问题; 较小:使操作者不方便或遇到麻烦,但它不影响功能过的操作和执行,如个别不影响产品理解的错别字、文字排列不整齐等一些小问题 d、缺陷产生可能性:总是、通常、有时、很少 总是:总是产生这个软件缺陷,其产生的频率是100%; 通常:按照测试用例,通常情况下会产生这个软件缺陷,其产生的频率大概是80%—90%; 有时:按照测试用例,有时候产生这个软件缺陷,其产生的频率大概是30%—50%;
严重程度高的bug必须优先解决,优先级高的bug其严重性也一定高,...
一、缺陷的定义及主要类型所谓“缺陷(bug)”,即为计算机或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷。
一般来说,缺陷的属性包括缺陷标识、缺陷类型、缺陷严重程度、缺陷优先级、缺陷来源、缺陷原因等。
缺陷的主要类型:(1)设计不合理;(2)功能、特性没有实现或部分实现;(3)运行出错,包括运行中断、系统崩溃、界面混乱等;(4)与需求不一致,在执行TestCase时则为实际结果和预期结果不一致;(5)用户不能接受的其他问题,如存取时间过长、界面不美观;(6)实现了需求未提到的功能。
二、缺陷的级别、优先级及状态缺陷有四种级别,分别为:致命的(Fatal),严重的(Critical),一般的(Major),微小的(Minor)。
A类-致命的(Fatal):造成系统或应用程序崩溃、死机、系统挂起,或造成数据丢失,主要功能完全丧失,导致本模块以及相关模块异常等问题。
如代码错误,死循环,数据库发生死锁、与数据库连接错误或数据通讯错误,未考虑异常操作,功能错误等B类-严重错误(critical):系统的主要功能部分丧失、数据不能保存,系统的次要功能完全丧失。
问题局限在本模块,导致模块功能失效或异常退出。
如致命的错误声明,程序接口错误,数据库的表、业务规则、缺省值未加完整性等约束条件C类-一般错误(major):次要功能没有完全实现但不影响使用。
如提示信息不太准确,或用户界面差,操作时间长,模块功能部分失效等,打印内容、格式错误,删除操作未给出提示,数据库表中有过多的空字段等D类-较小错误(Minor),使操作者不方便或遇到麻烦,但它不影响功能过的操作和执行,如错别字、界面不规范(字体大小不统一,文字排列不整齐,可输入区域和只读区域没有明显的区分标志),辅助说明描述不清楚E类- 建议问题(Enhancemental):由问题提出人对测试对象的改进意见或测试人员提出的建议、质疑。
常用的缺陷的优先级表示方法可分为:立即解决P1、高优先级P2、正常排队P3、低优先级P4.立即解决是指缺陷导致系统几乎不能使用或者测试不能继续,需立即修复;高优先级是指缺陷严重影响测试,需要优先考虑;正常排队是指缺陷需要正常排队等待修复;而低优先级是指缺陷可以在开发人员有时间的时候再被纠正。
正确评估和区分缺陷的严重性和优先级,是测试人员和开发人员以及全体项目组人员的一件大事。
这既是确保测试顺利进行的要求,也是保证质量的重要环节,应该要引起足够的重视。
这里介绍三种常用的技术工具供大家参考。