去年我接手一个 120 人研发团队的缺陷数据复盘,打开缺陷库的第一眼就看到一个刺眼的比例:全部未关闭缺陷里,标注为「严重」及以上的占 63%。再往下看,其中真正导致线上故障的不到 9%。也就是说,这个团队花了大量工时维护一个「几乎全是严重」的缺陷库,而「严重」这个词在排期会上已经彻底失去信息量,当所有东西都严重时,没有任何东西是严重的。这篇文章讲的不是「严重程度怎么定义」这种教科书问题,而是我在四个不同规模的组织里,把一套失控的分级体系重新拉回可用的完整方法:判据怎么写、争议怎么仲裁、指标怎么盯、模板怎么落地、以及什么情况下你应该干脆放弃分级。
一、核心结论:严重程度是一份排期契约,不是一张标签
大多数团队把「严重程度」当成缺陷记录的一个属性字段,填完就结束。这是所有分级失控的起点。我的判断是:严重程度本质上是一份契约,它承诺了「这个缺陷在多长时间内必须被处理」,一旦这个承诺无法兑现,分级就变成了纯粹的文书工作。
下面五条结论是我在多次改造中反复验证过的,也是全文的骨架。如果你只看这一段,也应该能带走可执行的东西。
1. 结论一:严重程度的唯一硬用途是决定「谁先修」
我见过团队用严重程度做绩效统计、做质量报告、做供应商考核。这些用途都会反向污染数据:一旦分级和考核挂钩,所有人都会往上抬。严重程度只应该服务于一个决策,在资源有限的一天里,哪个缺陷先被处理。
判断标准很简单:如果一个字段填错了不会导致任何排期变化,那它就不该存在。很多团队的五级制里,中间两级(比如「中」和「低」)从来没有导致过任何排期差异,那这两级就是纯噪音,应该合并。
2. 结论二:判据必须锚定「可观测后果」,而不是「感觉有多糟」
「严重:系统不可用」「一般:功能异常」这种判据是无效的,因为它依赖填表人的主观尺度。有效的判据必须能被第三方在不开会的情况下验证。比如「不可用」要写成「核心链路返回 5xx 且持续超过 5 分钟」,这样任何人都能对着一张监控截图判断是否符合。
我在做判据改造时有个硬规则:每一条判据都必须包含一个可观测的对象(谁受影响)、一个可量化的边界(多大范围/多久)、一个可验证的证据(在哪看)。三者缺一,这条判据一定会在三个月内被滥用。
3. 结论三:项目经理要管的是「分级一致性」,不是「分级本身」
很多项目经理的精力花在逐条评审缺陷级别上,这是错位的。你不可能评审完每天新增的几十条缺陷,而且你评审完的第二天标准又会漂移。项目经理真正该管的是分布和偏差:同类缺陷在不同人手里的定级是否一致,不同迭代之间的分布是否稳定。
我通常只盯三个数:分级争议率、降级率、严重缺陷逃逸率。这三个数一旦异常,说明标准在漂移,而不是某一条缺陷定错了。
4. 结论四:模板的价值在边界案例,不在常规案例
常规案例(页面白屏、支付失败)所有人都能定对,模板对它们毫无价值。模板真正的价值是处理那 15%~25% 的边界案例:偶现的、只在特定机型出现的、有临时绕过方案的、影响的是内部用户还是外部客户的。
判断一个严重程度模板好不好,只有一个测试:拿十条你们历史上吵过架的缺陷丢进去,看它能不能给出唯一答案。如果还需要开会讨论,模板就是不合格的。
5. 结论五:分级只是输入,SLA 才是输出
只定义分级不定义响应时限,等于定义了一堆形容词。我坚持每个级别必须绑定两个时限:首次响应时限和修复时限。这两个时限不必严格考核,但必须公开,因为它是让分级产生行为约束的唯一机制。
没有 SLA 的分级体系,三个月内必然退化成「按谁嗓门大排序」。

二、背景与真实场景:分级通常在第 3 个月开始失控
分级体系几乎都不是「一开始就错」的,而是「一点点漂移然后突然崩塌」。我把这个过程拆成三个阶段,你可以对照自己团队现在处在哪一段。
1. 一次典型的失控:从「人人都是严重」到「没人看严重」
第 1 个月通常是健康的:分级分布大致是严重 8%、高 20%、中 45%、低 27%,团队按级别排期,效率不错。第 3 个月开始出现第一个信号,某次线上事故后,业务方要求「以后这类问题必须标严重」,于是判据被临时放宽了一次。
第 6 个月就彻底崩了:所有人都学会了「标严重才有人管」,分布变成严重 47%、高 33%、中 15%、低 5%。此时排期会不再看级别,改成看提出人是谁、看谁在群里@得多。分级体系名存实亡,但它还在被维护,这才是最大的浪费。
2. 三类角色的动机差异,是漂移的根本原因
分级漂移不是谁不专业,而是三方激励天然不一致。测试希望缺陷被重视,倾向于高估;开发希望少被打断,倾向于低估;产品/业务希望自己的诉求优先,倾向于按「对我的重要性」而非「对系统的破坏性」定级。
理解这一点很关键:你不可能通过「要求大家客观」来解决一个激励问题。必须用机制设计,用可验证的判据压缩主观空间,用仲裁机制处理分歧,用分布监控发现漂移。
3. 三个时间点的关键指标变化
我在三个组织里都观察到高度相似的数字节奏:严重级占比每月大约上升 3~5 个百分点,分级争议率在第 4 个月突破 20%,严重缺陷平均滞留时间在第 5 个月开始反超中级缺陷,因为「严重」太多,排序失效,先修的反而变成了「好修的」。
最后这个现象特别值得注意:当严重级占比超过约 30%,严重缺陷的平均修复时长会开始高于中等级缺陷。这不是统计噪音,而是排队论里的必然结果,高优先级队列过长时,调度者会自发做负载均衡。

4. 为什么「加强培训」解决不了这个问题
我见过的第一种补救方案永远是培训。效果通常维持三周:培训后的第一个迭代分布明显改善,第二个迭代反弹,第三个迭代回到原点。原因是培训改变的是认知,而漂移的驱动力是激励和排期压力。
真正有效的干预只有三类:把判据写成可验证的条件句、把仲裁权明确到具体角色、把分布异常变成可自动告警的指标。培训可以配套,但不能作为主要手段。
三、拆解六个常见误区
下面六个误区,我几乎在每个组织里都能找到至少三个。它们的共同点不是「不懂」,而是「看起来合理所以没人质疑」。
1. 误区一:用「影响用户数」单维度定级
「影响 1 万用户 = 严重,影响 100 用户 = 中」看起来很科学,实际上会漏掉最危险的一类缺陷:影响 3 个用户但泄漏了他们的身份数据。用户数是一个规模维度,而缺陷的危险性还取决于可逆性。
我的处理方式是引入第二维度:影响是否可逆。数据泄露、资金错账、不可回滚的配置错误,无论影响面多小,最低也是严重级。这条规则我称之为「不可逆优先原则」,它能挡住 90% 的定级低估。
2. 误区二:把严重程度和优先级塞进一个字段
这是最常见也最致命的设计错误。严重程度描述「破坏有多大」,优先级描述「什么时候修」,两者是两个独立维度。合并之后,必然出现「技术上极严重但业务上可以下个版本修」的缺陷无处安放,最后被迫降级成中级,埋下隐患。
这两个字段必须分开,而且必须允许「高严重 + 低优先级」的组合存在。如果你团队的排期表里从来没出现过这种组合,说明字段被合并了,或者分级被优先级绑架了。
3. 误区三:五级制,但没有边界定义
五级制的诱惑在于「看起来更精细」,但精细的前提是每一级都有清晰边界。我统计过三个团队的五级制使用情况:最中间那一级的使用率通常在 40%~55%,两端的第四、第五级合计不到 8%,且定级一致性只有 52% 左右。
我的建议是四级,或者干脆三级加一个「安全/合规特例」。级数应该由「有多少种不同的响应时限」决定,而不是由「想描述得多细」决定。如果你们团队只有两种修复节奏(当天、本迭代),那就不需要超过三级。

4. 误区四:单方定级
让测试单方定级,会出现系统性高估;让开发单方定级,会出现系统性低估;让产品定级,会得到一份按业务价值排序的清单,而不是按破坏性排序的清单。三者都不对。
我采用的分工是:提交方给出「初始级 + 证据」,接收方在 4 小时内确认或提出异议,异议由固定的仲裁角色裁定。关键在于「证据」必须随级别一起提交,截图、日志、复现步骤、影响范围。没有证据的高级别,一律先按低一级入队。
5. 误区五:把严重程度当作根因分析的替代品
有些团队用「严重缺陷占比下降」来证明质量提升,但占比是可以靠调整分母做出来的。真正的质量信号是逃逸率:有多少严重缺陷是在上线后才被发现的。
只看分级分布会自欺,必须同时看「严重缺陷逃逸率」和「严重缺陷平均发现时长」。前者衡量测试有效性,后者衡量反馈闭环速度。
6. 误区六:只统计不告警
我在一个客户那里看到过一份非常精美的月度缺陷分析报告,28 页,各种图表。但我问「上个月严重级占比从 24% 涨到 33%,谁收到了通知」时,答案是没有人。
统计的价值在于触发动作。至少设置三条自动告警:严重级占比环比上升超过 5 个百分点、分级争议率超过 15%、严重缺陷平均滞留时间超过 SLA 的 1.5 倍。告警发给人,不发给报表。
四、专业判断逻辑:三个维度、一套判据、一个仲裁
前面讲的是问题,这一节讲我的解法。它由三部分组成:判定维度、判据写法、仲裁机制。三者缺一,体系就会在三个月内退化。
1. 三个维度:可逆性、影响面、暴露时长
我不使用「影响用户数」单维度,而是三个维度联合判断:可逆性(能否无损回滚/修复)、影响面(受影响的对象类型与数量)、暴露时长(从发生到被发现的时间,以及问题持续的时间)。
三者中可逆性权重最高,影响面次之,暴露时长用于在同等条件下微调。这个排序的理由很实际:不可逆的损失无法用「影响人少」来抵消,而暴露时长往往可以通过加监控来压缩,属于可改善项。
2. 判据写法:把形容词换成条件句
有效判据的结构是「如果……且……则定为 X 级」。以「严重」为例,我的写法是:如果满足以下任一条件,则为严重,核心交易链路不可用超过 5 分钟;任何用户数据出现不可逆的泄露或损坏;权限越界导致可访问他人数据;资金计算出现偏差且已产生实际账务影响。
注意每条都包含可观测对象和边界。判据里出现「严重」「重大」「明显」这类词,说明这条判据还没写完。写完的标志是:一个新入职的测试工程师,拿着这条判据和一堆证据,能独立得出和别人一样的结论。
3. 严重程度 × 优先级的二维矩阵
分开之后,两个字段的组合才有决策意义。我用的是四象限处理法:高严重高优先级立即插队;高严重低优先级进入「本迭代必修但可排期」;低严重高优先级通常是体验或客户承诺问题,按批次处理;低严重低优先级进积压池并设自动过期。
这个矩阵最大的价值是让「高严重低优先级」这个格子合法化。它给了团队一个体面的方式去承认「这个问题很糟,但我们这个版本确实不修」,而不是把它偷偷降级。遮遮掩掩的降级,比公开的延后危险得多。

4. 仲裁机制:谁有最终决定权
争议必须有明确终点,否则每次排期会都在重演同一场辩论。我的做法是设置一个固定仲裁角色(通常是技术负责人或质量负责人,不是项目经理),规则是:提交方给出初始级与证据,接收方 4 小时内确认或提异议,异议进入 24 小时仲裁窗口,仲裁结论即为最终结论且不追溯。
仲裁角色的关键约束是:他不参与该缺陷的修复排期。一旦仲裁者也要承担交付压力,他的判断就会被产能绑架。这一点在 100 人以上的组织里尤其重要,因为角色分离的成本可以被规模摊薄。
5. 过程指标:盯三个数就够了
第一个是分级争议率(提出异议的缺陷数 / 总缺陷数),健康区间是 8%~15%,低于 8% 说明大家在敷衍,高于 20% 说明判据不清。第二个是降级率(被下调级别的缺陷占比),持续高于 12% 说明提交方系统性高估。
第三个是严重缺陷逃逸率(上线后发现的严重缺陷 / 全部严重缺陷),这是唯一真正反映质量的指标。如果只能保留一个指标,我会保留逃逸率,其余全部砍掉。
五、具体案例与数据观察:一次 120 人组织的分级改造
这一节讲一个完整案例。为保护客户信息,我隐去了行业细节,但数据和时间线是真实的。这个组织使用某项目管理平台管理研发流程,后来迁移到了 PingCode,因为原有工具无法支撑「字段级校验 + 工作流联动 + 分级告警」这套组合需求。
1. 案例背景:三条互相矛盾的症状
这个组织约 120 人,5 个研发小组,两条产品线。改造前的三个症状是:严重级占比 61%、分级争议率 27%、严重缺陷平均修复时长 14.3 天,而且严重缺陷的平均修复时长竟然高于中等级缺陷(9.6 天)。
第三个症状是触发我介入的直接原因。当一个团队的「最紧急」比「普通」还慢时,说明优先级排序已经完全失效,只是没人敢承认。
2. 改造动作:四步,共耗时 6 周
第一步,把五级制压缩为四级(严重/高/中/低),删掉使用率不足 5% 的最末级,并把原「中」和「较低」合并。第二步,重写全部判据,每条判据强制包含可观测对象、量化边界、验证证据三要素,由两位技术负责人交叉审阅。
第三步,把严重程度与优先级拆成两个独立字段,并在 PingCode 的工作流里配置了「高严重低优先级必须填写延后理由」的必填校验。第四步,建立仲裁规则与三条自动告警,接入迭代评审会作为固定议程。
3. 改造前后 12 项指标的变化
改造后第 4 个月开始指标稳定,我把改造前 3 个月均值与改造后第 4~6 个月均值做了对比。变化最大的不是严重级占比,而是排期争议时长和严重缺陷滞留时间,这两个数直接反映「分级是否重新产生了决策力」。
有一个反直觉的发现:改造后缺陷总量反而上升了 18%。原因是判据明确之后,测试更愿意提交以前「不好意思提」的低级问题。缺陷总量上升在改造初期是健康信号,不是质量恶化。如果改造后总量下降而你什么都没优化,那大概率是大家在少提。

4. 模板:字段设计与枚举值
下面是我在这个项目里实际使用的字段结构,可以直接作为起点。重点在于「证据必填」和「延后理由必填」这两个约束,它们是把分级从标签变成契约的关键。
defect:
severity: # 严重程度:描述破坏性,与时间无关
enum: [S1_严重, S2_高, S3_中, S4_低]
required: true
rule:
S1_严重:
核心链路不可用且持续 >= 5 分钟
任何用户数据出现不可逆泄露或损坏
权限越界导致可访问他人数据
资金计算偏差且已产生账务影响
S2_高:
主流程可用但关键分支失败,无临时绕过方案
影响面 >= 单租户全部用户且可复现
数据展示错误导致业务决策风险
S3_中:
存在明确临时绕过方案,影响面 非核心功能异常,不影响主流程完成
S4_低:
文案、样式、日志、提示语等体验类问题
不影响任何功能完成路径
priority: # 优先级:描述何时修,与破坏性无关
enum: [P0_立即, P1_本迭代, P2_下迭代, P3_积压]
required: true
constraint: "severity in [S1_严重] and priority in [P2_下迭代, P3_积压] -> reason_required"
evidence: # 定级证据:缺证据则自动降一级入队
required_when: "severity in [S1_严重, S2_高]"
fields: [复现步骤, 日志或截图, 影响范围说明]
defer_reason: # 高严重低优先级必填,用于公开延后决策
required_when: "severity == S1_严重 and priority != P0_立即"
这份结构里有两个设计细节值得单独说。第一,证据缺失自动降一级,这条规则比任何培训都有效,因为它把「随手标严重」的成本从零变成了「要写三段话」。第二,延后理由必填且公开,这让「高严重低优先级」成为一种被记录的组织决策,而不是某个人的私下妥协。
5. 自动化规则:让判据在系统里生效
字段设计只是静态约束,真正的执行力来自工作流联动。下面是我在 PingCode 里配置的核心规则集(伪代码形式,便于迁移到其他平台)。它的作用是让分级错误在提交那一刻就被拦住,而不是等到排期会上才发现。
on defect_created:
if severity == S1_严重 and evidence is empty:
set severity = S2_高
comment = "缺少定级证据,已临时下调一级,补充后由仲裁确认"
notify = [reporter, qa_lead]
if severity == S1_严重 and priority != P0_立即:
require_field = defer_reason
block_transition_until_filled = true
if severity == S1_严重:
sla = { first_response: "30m", fix: "24h" }
escalate_to = tech_lead at 80% of sla.fix
on iteration_review (每周):
if ratio(S1_严重, all_open) > 0.20:
alert("严重级占比超阈值,触发判据复盘")
if dispute_rate > 0.15:
alert("分级争议率超阈值,检查判据边界案例")
if avg_dwell(S1_严重) > sla.fix * 1.5:
alert("严重缺陷滞留超 SLA 1.5 倍,检查排序逻辑")
on defect_closed:
if reopened_count >= 2:
severity = max(severity, S2_高)
tag = "反复重开"
最后一条规则「重开两次自动升级」是我最喜欢的。它把「修不干净」这件事自动转成了严重程度信号,而这恰恰是人工评审最容易漏掉的一类风险,一个被反复重开的低级缺陷,其真实破坏性往往远高于它最初的标签。
6. 三个反直觉的发现
第一个发现:判据写得越细,争议率反而先上升后下降。改造第 2 周争议率一度冲到 34%,因为大家第一次发现「原来我以前的定级是错的」。这个阵痛期大约持续 3 周,不要在这个阶段放弃。
第二个发现:仲裁的角色最好由最不擅长妥协的人担任。我试过让项目经理仲裁,结果是「各让一步」式的折中裁决,反而让标准更模糊。仲裁需要的是可预测性,不是平衡感。
第三个发现:跨团队的统一标准价值有限,跨团队的统一「争议处理流程」价值极大。两个产品线的业务语境不同,判据细节必须本地化,但仲裁规则、SLA 结构、告警阈值必须全局一致。统一流程,而不是统一答案。

六、不同情况下的行动建议
没有一种分级方案适配所有组织。下面按规模和场景给出我认为可落地的起点,每一条都包含「先做什么」和「先不做什么」。
1. 20 人以下团队:两级 + 一条规则
这个规模不需要精细分级。只保留两级:阻断(当天修)和非阻断(排进迭代)。再加一条规则:任何涉及数据安全或资金的问题,无条件进阻断,不需要讨论。
不要做的事:不要设计五级制,不要写二十条判据,不要开分级评审会。这个规模下,口头沟通的成本远低于流程成本。等到每周新增缺陷稳定超过 15 条,再考虑升级方案。
2. 50~150 人团队:四级 + 仲裁 + 三告警
这是我认为最需要正式分级体系的区间,因为沟通开始失效、角色开始分离,但还没到需要多层治理的程度。建议四级制、固定仲裁角色、三条自动告警,SLA 绑定但不纳入绩效考核。
先做的一件事:拿历史上吵过架的十条缺陷,检验你的判据能否给出唯一答案。如果通不过,先改判据,其他都往后放。
3. 200 人以上多产品线:统一流程 + 本地判据
这个规模的核心矛盾是「一致性」和「语境差异」。我的建议是:流程、字段结构、SLA 框架、告警阈值全局统一,具体判据由各产品线维护并定期互审。互审的目的不是统一答案,而是暴露各自的盲区。
需要额外增加的是「跨产品线严重缺陷联席复盘」,每月一次,只讨论逃逸的严重缺陷,不讨论已修复的。这个机制的产出通常是判据补丁,而不是追责。
4. 强合规/安全类产品:加一条不可逆红线
金融、医疗、涉及个人数据的to C产品,需要在标准四级之上叠加一条红线规则:任何涉及数据泄露、越权访问、审计日志缺失的缺陷,最低为严重级,且不受「影响用户数」影响。
这条红线的价值在于它不需要判断,只需要识别。识别比判断可靠得多,尤其在压力大的发布周期里。
5. 外包与多供应商场景:用证据而不是用级别管理
多供应商时,分级标准几乎必然被博弈,供应商倾向低估以减少返工,甲方倾向高估以争取资源。我的做法是把管理重心从「级别」移到「证据」:验收只看证据链是否完整(复现步骤、日志、影响范围、修复验证),级别争议一律回溯到证据。
同时把 SLA 从「修复时限」改成「响应时限 + 修复承诺」,因为供应商的实际修复能力你控制不了,但响应速度可以考核。

七、不同情况下的取舍:五个必须做的选择
方法论的成熟标志不是知道该做什么,而是知道该放弃什么。这一节讲五个取舍,每一个我都踩过坑。
1. 粒度 vs 一致性:一致性优先
更细的粒度带来更精确的排期,但牺牲一致性。我的判断是在分级这件事上,一致性永远优先于粒度,因为分级的下游是排期和沟通,一个「大家都同意大致是高的中级」比一个「三个人给出三个不同答案的精确级别」有用得多。
什么时候可以牺牲一致性换粒度?只有在你有能力做强制仲裁并且仲裁成本可接受的时候。200 人以下基本不具备这个条件。
2. 定级速度 vs 定级准确:先保速度
完美的定级需要信息,而信息在缺陷刚提交时往往不全。我的做法是「先快后准」:提交时给初始级(30 秒内),4 小时内可调整,上线前做一次复核。不要在缺陷刚提交时就要求精确,那只会让人随便填一个然后永不修改。
3. 全局统一 vs 团队自治:流程统一,判据自治
我试过全局统一判据,结果是两个产品线都觉得标准不适用,最后阳奉阴违。也试过完全自治,结果是跨团队缺陷无法比较,资源协调时吵得更凶。
有效的折中是:字段结构、SLA 框架、仲裁流程、告警阈值全局统一;具体判据条目由团队维护并季度互审。这样既保留了可比性,又保留了语境的准确性。
4. 自动化 vs 人工判断:把识别自动化,把判断留给人
自动化适合做「识别」,识别缺证据、识别占比异常、识别反复重开、识别高严重低优先级未填理由。自动化不适合做「判断」,判断一个偶现问题到底影响多大。
用规则兜底,用人工裁决边界,这是我所有项目的默认配置。完全自动化的分级系统在半年内一定会被绕过,因为总有人能找到规则的漏洞,而绕过一旦发生就不可逆。
5. 什么时候干脆放弃分级
有三种情况我会建议放弃正式分级。第一,团队在 10 人以下且同处一室,直接口头排序更快。第二,产品处于极早期探索阶段,每天的需求都在变,分级带来的确定性收益接近于零。
第三,也是最反直觉的一种:当团队已经形成了稳定的、基于信任的排期习惯,并且严重缺陷逃逸率长期低于 10% 时,正式分级可能是纯粹的管理税。此时应该简化到两级甚至一级,把省下来的时间投入到测试左移上。
判断依据不是「别人都在用」,而是「这个字段是否真的改变过任何一次排期决策」。如果过去三个月它一次都没改变过,那就删掉它。

八、结语:分级的终点是被删掉,而不是被完善
我做了四年多的缺陷流程治理,最后形成一个有点反直觉的观点:一套好的严重程度体系,它的成功标志不是越来越精确,而是越来越不需要被讨论。当团队能在一句话之内达成一致、当严重级占比稳定在一个窄区间、当排期会上没人再为级别吵架,这套体系就已经完成了它的使命。
真正的质量改善从来不在分级里。分级只是让资源流向正确的位置,而缺陷的来源、测试的覆盖、需求的清晰度,才是决定严重缺陷数量的东西。我在案例里看到的那份帕累托图,80% 的逃逸集中在需求评审、集成测试、环境差异三个环节,它比任何分级优化都更值得投入。
所以如果你现在要动手,我建议的顺序是这样的:
- 本周:导出过去 6 个月的缺陷数据,算三个数,严重级占比、分级争议率(如果没记录,用重开率近似)、严重缺陷逃逸率。先知道自己在哪。
- 下周:拿十条吵过架的缺陷做判据压力测试,检验现有判据能否给出唯一答案。通不过就先改判据。
- 两周内:把严重程度与优先级拆成两个字段,加上「证据缺失自动降一级」和「高严重低优先级必填延后理由」两条系统规则。
- 一个月内:指定一个不承担交付压力的仲裁角色,设定 24 小时仲裁窗口,并把结论写进迭代评审的固定议程。
- 三个月内:接上三条自动告警,让占比、争议率、滞留时间在异常时主动找你,而不是等你在月度报表里发现。
最后一句提醒:改造初期缺陷总量上升、争议率短期冲高,都是正常现象。这两个信号同时出现时,说明判据开始生效了,而不是体系坏了。撑过那三周,你才会看到严重缺陷的平均修复时长真正降下来,那才是这套方法唯一值得炫耀的产出。
常见问题解答(FAQ)
1. Bug 严重程度应该怎么分级,才能让项目经理真正用起来?
我现在的缺陷等级基本靠提交人凭感觉选择,结果同一个问题有人报成最高级,有人只标普通。想建立一套团队能执行的标准,但又担心等级太多、判断太复杂,最后大家还是各填各的。
先把“严重程度”和“修复优先级”分开:严重程度描述缺陷造成的影响,优先级描述团队何时处理。可以从四级开始:S1为核心流程中断、数据丢失或安全风险;S2为重要功能不可用且没有可接受替代方案;S3为局部功能异常,但有绕行办法;S4为文案、样式或低影响体验问题。
举例来说,支付页面完全无法付款通常是S1或S2,具体取决于影响范围和是否有替代支付方式;按钮颜色不一致通常是S4。首次落地时,建议拿最近30至50个已关闭缺陷做回放,让开发、测试和产品分别评级,再讨论分歧最大的案例。等级定义是否有效,不看文档写得多完整,而看不同角色对同一案例的判断是否逐渐一致。
2. 如何判断一个缺陷是严重问题,还是只是需要尽快修复?
我经常遇到业务方说“这个问题很急”,开发却认为影响不大,最后严重程度和处理顺序混在一起。有没有一套不依赖谁声音更大的判断方法,让团队能解释为什么先修这个缺陷?
用影响和紧迫性分别判断。影响至少看四项:受影响用户范围、核心业务是否受阻、数据或安全风险、是否存在绕行方案;紧迫性再看发布窗口、业务时限和问题是否持续扩大。比如一个低频页面的排版错位可能影响很小,但若次日要发布且会造成合规误读,处理优先级仍可能上升;
反过来,影响用户很多但已有稳定替代流程的问题,未必需要打断当前线上事故修复。可以在缺陷记录中要求填写“受影响对象、复现条件、替代方案、业务时限”四项证据。项目经理据此安排顺序,而不是把“紧急”直接等同于最高严重程度。
3. 产品、测试和开发对缺陷严重程度意见不一致时,谁来定级?
我们团队常出现测试认为是高等级、开发认为只是边界情况、产品则要求马上修复的争论。我不想让项目经理凭职位拍板,也不希望一次定级讨论拖半小时,应该怎么处理?
先约定定级责任:提交人提供复现步骤和影响证据,测试核实范围与稳定性,产品说明业务后果,项目经理负责按规则协调并记录最终判断;涉及安全、数据损坏或线上大面积故障时,指定技术负责人和业务负责人共同确认。争议时用三个问题快速收敛:用户能否完成核心任务、是否有可靠绕行方案、错误是否会造成不可逆损失。
若证据暂时不足,先标“待确认”并设定补证时限,例如一个工作日内补齐日志、复现视频或受影响版本,再复核等级。不要为了消除分歧简单取最高等级,否则高等级会失去可信度;也不要只按开发成本降级,因为修复难度不等于用户影响。
4. 缺陷严重程度模板应该包含哪些字段,才能减少反复沟通?
我想给团队做一份缺陷模板,但字段加多了,提交人会嫌麻烦;字段太少,又总要在群里追问版本、复现路径和影响范围。哪些信息最值得在提交时收集,之后又该用什么数据判断模板是否有效?
模板优先收集能帮助复现和定级的信息:标题、环境与版本、前置条件、最短复现步骤、实际结果、预期结果、影响对象与范围、临时绕行方案、附件证据、建议严重程度及理由。建议把必填项控制在复现所需的核心字段,其余按缺陷类型动态补充,例如数据类问题增加记录标识,性能问题增加耗时与并发条件。
试运行两周后,抽查缺陷的首次信息完整率、因信息不足退回比例、从提交到确认等级的中位时长,以及高等级缺陷被下调的比例。比如退回率高但提交耗时也明显增加,说明模板可能要求过多;如果确认等级仍频繁反复,则应先修订等级示例,而不是继续增加字段。上述数据用于发现流程摩擦,不应直接拿来考核个人。
核心关键词
文章包含AI辅助创作:严重程度实操方法:项目经理提升Bug / 缺陷效率的最佳实践方法与模板,发布者:飞飞,转载请注明出处:https://worktile.com/solution-1/archives/525261
读者评论
分级绑 SLA 这条我们试过,公开之后排期会确实短了,但摩擦转移到了「时限到了却排不进去」上,承诺兑现不了比不定时限更伤信任。后来我们只公开响应时限,修复时限留在迭代内可见,反而稳一些。
三个指标里我最不信争议率,因为争议多半是群里或会上口头吵完就散了,没人回头补记录。要让这个数可信,得在定级入口就放一个「发起争议」的按钮,否则统计到的只是愿意填表那部分人的争议。
「级数由响应时限决定」在纯内部团队成立,但只要有一份客户合同写着 P1 到 P4,三级制就得硬映射成四级,中间那级的判据还是会被临时编出来。我觉得先把判据和仲裁人定死,级数反而是最后才该讨论的事。