本文最后更新于142 天前,其中的信息可能已经过时
缺陷就是软件的bug
任何与需求有偏差的地方都可以认为是缺陷,如弹窗文本错别字等
具体而言,缺陷的判定标准如下
软件未实现需求(规格)说明书中明确要求的功能——少功能
软件出现了需求(规格)说明书中指明不应该出现的错误——功能错误
软件实现的功能超出需求(规格)说明指明的范围——多功能
软件未实现需求(规格)说明书中虽未明确指明但应该实现的需求——隐性功能错误
软件难以理解,不易使用,运行缓慢,用户体验不好——不易使用
缺陷产生的原因
- 需求描述不易理解,有歧义、错误等
- 设计文档存在错误或缺陷
- 代码出现错误
- 软硬件系统本身故障
缺陷生命周期和软件生命周期
缺陷描述和提交要素
一般视管理工具或内部规定而不同
以笔者所在公司规范为例,大致分为
标题、前置条件、复现步骤、异常现象/期望结果(二选一)、后端缺陷(补充入参和接口地址),附件
缺陷编号、严重程度、优先级、类型、状态
严重程度划分
(不同工具分类名称不同,一般来说按严重程度从高到低排序,共有四种)
以笔者公司所用的管理工具为例
致命:主要功能
严重:次要功能
一般:易用性/界面
建议:建议性问题
优先级划分
(按照不同项目的紧急程度划分标准有差异)
一般而言
高:24小时内修复
中:发布前修复
低:可以在下个版本中修复
缺陷类型也视具体情况分类
一般分为功能(后端)、界面(前端)、兼容性、安全性、性能、建议、其他。具体按照使用场景自行判断
缺陷管理流程
总的来说,缺陷管理视具体情况有不同的管理标准,相比书面说明更需要实际上手体验,因此不过多赘述
后续如果有精力,笔者可以做一个简单体验缺陷管理流程的系统放在这里(挖坑)