一、简介

1. 背景

如果公司bug管理混乱,bug未划分优先级,将会导致许多优先级高的bug未能及时解决,同时研发部门会花费大量的时间处理非紧急bug,将会严重影响研发中心、产品中心、运营中心、商务中心的工作效率。

2. 影响范围

研发中心、产品中心、运营中心、商务中心。

二、软件缺陷分类标准

1. 缺陷类型定义

表2-1 缺陷类型定义表

缺陷类型 描述
FC-功能问题 影响了重要的特性、用户界面、产品接口、硬件结构接口和全局数据结构,并且设计文档需要正式的变更。如:逻辑、指针、循环、递归、功能等缺陷
AL-程序错误问题 需要修改少量代码,如初始化或控制块。如声明、重复命名、范围、限定等缺陷。
IF-接口问题 与其它组件、模块或设备驱动程序、调用参数、控制块或参数列表相互影响的缺陷。
CK-用户操作提示信息问题 提示的错误信息,不适当的数据验证等缺陷。
BF-程序打包问题 由于配置库、变更管理或版本控制引起的错误。
DM-部署手册问题 影响发布和维护,包括注释。
UI-页面显示问题 人机交互特性:屏幕格式,确认用户输入,功能有效性,页面排版等方面的缺陷。
PF-性能问题 不满足系统可测量的属性值,如:执行时间、事务处理速率等。
UE-用户体验、易用性 用户使用操作不方便、操作过程有歧义。

2. 缺陷严重程度定义

Blocker:

阻碍了项目开发或者测试的继续进行

Critical:
  1. 方案错误:
    数据字典、数据库、程序结构、流程上存在错误致使程序质量难以改善,导致日后的开发、维护、升级和扩展难度加大或造成难以弥补的局面。
  2. 功能缺少或功能错误:
    存在需求分析的错误,即软件不能满足或不能实现用户实际需求的功能、或者与设计目标要求的功能不符,意味着项目的延期或需要投入更多的人力和资金进行重新开发。
  3. 死机错误:
    程序在运行过程中存在宕机或死机现象,如:导致Windows的致命错误的蓝屏,系统出现的异常操作导致系统非正常退出(系统失败,其关闭的决定已超出编程者或测试人员的职权范围),系统与计算机硬件不兼容导致系统无法运行,或出现异常的操作被编程工具拦截但没有被编程处理。
  4. 病毒错误:
    具有传染性,由于失灵,损坏其它系统(自身受损或不受损)。
  5. 实时性错误:
    对于实时系统,系统响应时间慢,不能满足用户要求和实际使用情况。
  6. 容量错误:
    用户数量不够(例如规定可以容纳用户为10个,但实际最多只能容纳5个等)。即未实现预期的设计容量目标
  7. 账目错误:
    帐务数据、统计数据不正确,导致账目混乱,无法处理。
Major:
  1. 系统不稳定:
    发生关键错误且致使系统无法操作,测试或使用无法继续进行。
  2. 数据存取错误:
    数据操作存储错误,数据库内数据与实际数据不符合,数据没有被保存、修改、更新。(如:输入的数据没有保存到规定的地方,或对数据进行修改后,但数据库或文件中该数据并没有得到更新等)。
  3. 系统恢复错误:
    恢复数据库或文件错误(用户在使用系统之前或使用中间系统出现异常的情况下,用户恢复系统过程中,对某些数据库或文件进行恢复, 但出现了不能进行恢复的现象)。
  4. 稳定性错误:
    长期的、不可恢复的数据库损坏并且损坏不易发现。
  5. 通讯错误:
    系统同外部通讯之间的错误(如:系统在网络正常情况下,不能跟其它机器进行网络数据传输通信或出现通信错误等)。
  6. 数据一致性错误:
    即程序各模块之间联系产生的错误。(如:在调用其它模块是出现错误,或模块之间的传输的数据错误,比如有两个模块X和Y使用同一个数据库,其中X模块对数据库中的某些数据做了处理之后,需要到Y模块对数据做进一步的处理,但数据库的数据没有得到及时更新,导致Y模块操作的数据还是X模块处理前的数据)等。
  7. 功能错误:
    拒绝处理合法的工作。
  8. 查询错误:
    进行查询时,查询条件丢失;且有时附加条件(处理了不应处理的条件)、重复、重叠条件(出现条件重复现象:如一个条件显示两次);有时还出现可怕的输出数据(输出了没有要求的不知道来源的数据)。
  9. 文档错误:
    文档与软件不符、文档严重不足、系统文档关键错误
  10. 计算错误:
    数值计算错误,或者处理数据算法错误;
  11. 性能错误:
    系统性能变差或响应时间变慢(不必要的重复操作占系统资源)。
  12. 其他测试人员认为不可接受严重的缺陷;
Normal:
  1. 操作中间结果出错但不影响程序运行的最终结果。 正确地实现了功能,但与其他功能存在功能重叠交互现象。
  2. 规定的资源空间不够(规定的系统运行环境和需求资源不能满足条件,例如主存不够,磁盘空间不够)。
  3. 操作界面、报表数据出现的个别错误、溢出、出现非预期结果。
  4. 数据在系统各部分连接表达不一致;
  5. 对输入的数据没有进行有效性/合法性检查,并给出错误的结果或导致死机。
  6. 在规定参数上下边界的情况下,出现超过边界的数值也能进行操作的情况(如:规定输入0到5之间的数后进行操作,但是输入6或-1也能进行操作的情况
  7. 界面出现了一些不必要的功能模块(使系统出错几率增大)。
  8. 系统处理未优化导致操作繁琐、不必要的环节控制等
  9. 程序非正常终止但可通过其它输入来避免。
  10. 其他测试人员认为一般的缺陷。
Minor:
  1. 拼写错误的输出、错误提示;
  2. 扭曲的打印、报表中文字字体、格式排列不整齐。
  3. 界面布局、界面风格错误、风格不一致(如:对话框设计不符合标准)
  4. 信息含糊或用户使用不方便,如:输出提示存在异议用户被引入歧途且多余。
  5. 在线说明帮助不准确、不完整;
  6. 查询结果格式错误、系统查询操作不方便。
Trivial:
  1. 测试人员认为对功能进行修改,会增加功能的易用性和用户友好性。
  2. 测试人员认为对系统业务逻辑进行修改,会完善、改进系统的业务逻辑。
  3. 测试人员认为对功能错误处理方式进行修改,会增加功能的可维护性。
Enhancement:
  1. 系统发布后用户反馈的改进建议和意见

3. 缺陷解决优先级别定义

表2-2缺陷解决优先级定义表

缺陷解决优先级 描述
P0-紧急 缺陷必须被立即解决。
P1-高 缺陷需要安排在排队第一位等待修复。
P2-中 缺陷需要正常排队等待修复或列入软件发布清单。
P3-低 缺陷可以在方便时被纠正。

4. 缺陷状态定义

表2-4缺陷状态定义表

缺陷状态 描述
UNCONFIRMED(未确认) 未确认的的问题
Resolved+Wontfix(不解决) 开发接收到问题后,确认不解决的问题标记问题为不解决
Resolved+Invalid(无效) 开发接收到问题后,确认无效的问题标记问题为无效
Resolved+Duplicate(重复的) 开发接收到问题后,确认重复的问题标记问题为重复的
Resolved+Fixed(已解决) 开发接收到问题后,进行解决,解决后标记问题为已解决状态
Verified+Wontfix(确认不解决) 测试人员接收到开发的反馈后,和产品经理确认是否解决,确认不解决的问题标记为确认不解决
Verified+Fixed(确认已解决) 测试人员接收到开发的反馈后,在新版本中进行验证,验证通过标记问题为确认已经解决
Verified+Invalid(确认无效) 测试人员接收到开发的反馈后,和产品经理或测试组长确认是否无效问题,确认无效的问题标记为确认无效
Verified+Duplicate(确认重复的) 测试人员接收到开发的反馈后,确认是否重复问题,确认重复的问题标记为确认重复的
Verified+Reopen(确认重新打开) 1. 测试人员接收到开发的反馈后,在新版本中进行验证,验证不通过标记问题为确认重新打开
2. 测试人员接收到开发的反馈后,和产品经理确认是否解决,确认需要解决的问题标记为确认重新打开
3. 测试人员接收到开发的反馈后,和产品经理或测试组长确认是否无效问题,确认不是无效的问题标记为确认重新打开

三、软件缺陷处理流程

软件缺陷通常可称为BUG,BUG的处理流程图如下所示.
在这里插入图片描述
• Bug正常解决处理流程说明:

操作步骤 Bug状态 责任人 负责工作项 注意事项
第1步 未确认 测试人员 创建问题,并把问题指给相应的开发负责人 精简语句,准确描述
第2步 已解决 开发人员 解决问题 更新bug状态为:已解决,并标识解决的版本号备注说明解决方案
第3步 确认已解决 测试人员 验证开发是否解决bug 备注说明确认bug解决的版本和时间

• Bug不解决处理流程说明:
操作步骤 Bug状态 责任人 负责工作项 注意事项
第1步 未确认 测试人员 创建问题,并把问题指给相应的开发负责人 精简语句,准确描述
第2步 不解决 开发人员 由于各种原因,开发不解决 更新bug状态为:不解决,备注说明不解决原因
第3步 确认不解决 测试人员 与产品或测试负责人确认是否同意不解决 同意不解决bug,bug状态为:确认不解决,备注说明产品同意不解决原因
• 无效Bug处理流程说明:

操作步骤 Bug状态 责任人 负责工作项 注意事项
第1步 未解决 测试人员 创建问题,并把问题指给相应的开发负责人 精简语句,准确描述
第2步 无效 开发人员 认为不是bug 更新bug状态为:无效,并备注说明为什么是无效bug
第3步 确认无效 测试人员 与产品或测试负责人确认是否无效bug 确认bug是无效bug,bug状态为:确认无效

• 重复Bug处理流程说明:

操作步骤 Bug状态 责任人 负责工作项 注意事项
第1步 未解决 测试人员 创建问题 精简语句,准确描述
第2步 重复的 开发人员 认为是重复bug 更新bug状态为:重复
第3步 确认重复的 测试人员 查看是否重复 确认bug是重复bug,bug状态为:确认重复的

• Bug重新打开处理流程说明:

操作步骤 Bug状态 责任人 负责工作项 注意事项
第1步 未解决 测试人员 创建问题 精简语句,准确定位
第2步 已解决 开发人员 解决问题 更新bug状态为:已解决,并标识解决的版本号备注说明解决方案
不解决 开发人员 由于各种原因,开发不解决 更新bug状态为:不解决,备注说明不解决原因
无效 开发人员 认为不是bug 更新bug状态为:无效,并备注说明为什么是无效bug
第3步 确认重新打开 测试人员 1. 确认开发已解决的bug未解决,更新bug状态为:确认重新打开
2. 和产品及测试负责人确认是否同意开发不解决的bug,不同意更新bug状态为:确认重新打开
3. 和产品及测试负责人确认开发标识为无效的bug是否是真的无效,不是无效的bug,更新bug状态为:确认重新打开
4. 测试回归测试过程中发现之前已经确认解决的bug再次出现,更新bug状态为:确认重新打开
版权声明:本文为匿名原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: