缺陷积压清单怎么统计老化程度和清理进展

缺陷积压清单能回答两个不同问题:积压中的缺陷已经等了多久,以及团队在多长时间内消化了多少。前者看老化程度,后者看清理进展。两者都需要先固定清单快照口径,再按同一时间窗计算,否则条目数变化无法解释。下面给出一套可复算的指标定义、字段规则和算例。




要点总览(TL;DR)


  • 老化程度与清理进展是两个独立问题:前者用平均老化天数、中位数、P90和超阈值占比刻画停留时间,后者用关闭量、净减少量、关闭率、净清理率和周转天数刻画消化速度。
  • 统计前先固定清单快照口径:状态集合、是否含待验证、严重等级范围、统计时点和时间窗,并明确老化起算点用创建时间还是进入积压状态时间。
  • 核心公式:老化天数=统计时点−老化起算点;关闭率=时间窗关闭数÷期初积压数;净清理率=(关闭数−新增积压数)÷期初积压数;周转天数=期初积压数÷日均关闭数。
  • 条目数量只反映规模,判断积压风险需结合老化分布、净清理率和周转天数;净清理率为正但P90上升,说明旧缺陷在清、新增流入更快。
  • 不设通用达标线,阈值按团队历史基线和版本周期确定;口径变更后需重算基线,避免跨期不可比。


评估目标:老化程度与清理进展各回答什么问题


老化程度回答的是“积压里的缺陷停留了多久、是否越积越旧”。它把清单中每条缺陷的等待时长汇总成分布,用来判断哪些缺陷已经超出合理等待范围,从而支持优先级调整:先处理老化最严重的条目,还是先处理严重等级最高的条目。老化指标也用于观察积压结构是否恶化,例如中位数变化不大但P90持续上升,说明尾部存在长期未处理的缺陷。


清理进展回答的是“单位时间内消化了多少、积压是净增还是净减”。它把时间窗内的关闭量与新增积压量放在一起比较,用来评估清理节奏是否跟得上流入速度。清理指标服务于节奏决策:当前迭代的修复投入是否足够、是否需要安排专项清理、下一版本前积压是否会继续扩大。


两类指标不能合并成一个数字。条目数量只说明规模,同样的100条积压,可能大部分是本周新增,也可能有三十条已停留超过两个月,风险完全不同。老化程度和清理进展分别刻画停留时间和流动速度,需要配对解读。



指标与范围:清单纳入哪些缺陷、统计哪些量


统计前先写清楚清单纳入范围,包括状态集合、严重等级和时间边界。范围一旦确定,后续每期计算都沿用同一口径,才能跨期比较。


口径项 建议定义 说明
状态集合 处于待处理、处理中、待验证等未关闭状态的缺陷 已关闭缺陷不计入积压清单,但计入时间窗关闭量
待验证缺陷 明确是否纳入积压 纳入则老化持续计算到验证关闭;不纳入则需单独说明,避免与修复中缺陷混算
严重等级 明确统计全部等级还是仅统计某几级 只统计高等级时,指标名称需标注范围,不能与全量指标混用
统计时点 固定为每周某日或每个迭代结束日 所有指标以同一时点的快照为基准
时间窗 与统计时点配套,如最近7天或本迭代 关闭量、新增量、净减少量均取该窗口内的数据

指标集合分为两组。老化指标包括平均老化天数、中位数老化天数、P90老化天数和超阈值占比。清理指标包括时间窗关闭量、净减少量、关闭率、净清理率和周转天数。每个指标都要写明单位:天数类指标单位为天,比率类指标为百分比,数量类指标为条。



数据口径与证据:字段、时间戳与缺失值怎么处理


取数至少需要以下字段:缺陷ID、创建时间、进入积压状态时间、关闭时间、当前状态、严重等级。若缺陷经历过多次状态变化,还需要状态流转记录,用于识别重开和回退。


老化起算点有两种选择。以创建时间起算,反映缺陷从提报到当前的完整等待;以进入积压状态时间起算,反映缺陷进入未关闭状态后的等待。前者适合评估提报到关闭的全周期,后者适合评估积压本身的停留时长。两种口径结果不同,选定一种后应在指标名称或说明中标注,不能混用。


状态回退和重开需要单独约定。常见做法是:缺陷关闭后重开,老化时长从重开时间重新起算,或保留首次进入积压的时间并累计。两种规则都可用,关键是全期一致。若采用重新起算,历史老化数据会因重开而下降,解读时需说明。


缺失值和异常记录按以下方式处理:缺少进入积压状态时间的条目,可回退用创建时间替代并标记;缺少关闭时间的未关闭条目,老化天数按统计时点减起算点计算;重复条目按缺陷ID去重,保留最新状态;跨清单迁移的条目以当前清单为准,迁移前的停留时间是否计入需在口径中写明。


分母为零时不要输出0%或无穷大。期初积压为零时,关闭率和净清理率标记为“不适用”,并注明期初无积压;日均关闭数为零时,周转天数同样标记为“不适用”。这样可避免把无数据误读为清理极快或极慢。


这些字段和流转记录需要稳定留存,才能按周复算。在ONES中,缺陷以工作项形式记录状态与流转时间,清单可按状态和严重等级筛选,历史快照和状态变更记录为老化起算和关闭量统计提供数据来源;统计规则确定后,可按固定时点导出清单并保留各期结果,便于对比。



计算步骤:从清单快照到老化与清理指标


第一步,按统计时点生成清单快照。筛选出该时点处于积压状态的缺陷,按缺陷ID去重,记录条目数作为期初积压数。


第二步,逐条计算老化天数:老化天数 = 统计时点 − 老化起算点,单位为天,不足一天按小数或向下取整需统一。起算点按上一节选定的口径执行。


第三步,计算老化分布指标。将全部条目的老化天数排序,平均值 = 老化天数总和 ÷ 清单条数;中位数取排序后中间位置的值;P90取第90百分位对应的老化天数;超阈值占比 = 老化天数超过阈值的条数 ÷ 清单条数。阈值按团队历史基线或版本周期设定,不使用通用标准。


第四步,计算清理指标,均以同一时间窗为准:


指标 公式 单位
关闭率 时间窗内关闭数 ÷ 期初积压数 %
净减少量 时间窗内关闭数 − 时间窗内新增积压数 条
净清理率 (关闭数 − 新增积压数)÷ 期初积压数 %
周转天数 期初积压数 ÷ 日均关闭数 天

其中日均关闭数 = 时间窗内关闭数 ÷ 时间窗天数。周转天数表示按当前关闭速度清空期初积压所需的天数,是估算值,前提是关闭速度保持稳定。


第五步,按周或按迭代滚动更新,每次保留快照和计算结果。历史快照用于观察趋势,也用于口径调整后重算基线。



例子:一份积压清单的老化与清理测算


假设某次统计时点期初积压100条,最近7天关闭30条,同期新增积压25条。以下为演示数据,用于说明计算过程。


老化分布方面,假设100条缺陷的老化天数平均为18天,中位数为12天,P90为45天。设定超阈值标准为30天,超过30天的有20条,则超阈值占比 = 20 ÷ 100 = 20%。这组数据说明多数缺陷等待时间不算长,但尾部有五分之一的条目已超过30天。


清理指标方面,关闭率 = 30 ÷ 100 = 30%;净减少量 = 30 − 25 = 5条;净清理率 = 5 ÷ 100 = 5%;日均关闭数 = 30 ÷ 7 ≈ 4.3条;周转天数 = 100 ÷ 4.3 ≈ 23.3天。按当前速度,清空期初积压约需23天,且这期间还会有新增流入。


再看两组条目数相同但风险不同的情形。A组100条,平均老化10天,P90为20天,超阈值占比5%;B组同样100条,平均老化25天,P90为60天,超阈值占比35%。两组规模相同,但B组尾部积压严重,清理优先级应更高。若B组同时净清理率为正,说明团队在关闭旧缺陷的同时新增流入也较快,需要结合新增量判断积压是否真正缓解。



解读与限制:条目数量与积压风险的关系


条目数量只反映规模,不能单独作为风险结论。判断积压风险要同时看三点:老化分布是否向尾部集中、净清理率是否为正、周转天数是否在可接受范围内。规模大但老化短、净清理率为正,属于可控的高流动状态;规模不大但P90持续上升、超阈值占比增加,说明存在长期未处理的缺陷,风险更高。


净清理率为正但老化上升,通常意味着团队在清理旧积压的同时新增流入更快,或者新增缺陷集中在少数长期未处理条目上。此时应分别看关闭量和新增量,确认积压结构变化,而不是只看总数下降。


这些指标不能直接归因于团队效率。缺陷定义宽严、提报习惯、版本节奏、验证资源都会影响清单条目和关闭速度。同样的关闭率,在版本发布前和发布后含义不同。因此不设通用达标线,阈值应结合团队历史基线和版本周期确定,例如以过去若干期的中位水平作为参考区间。


清单口径变化时需要重算基线。状态集合调整、待验证缺陷纳入或排除、老化起算点改变,都会使新旧数据不可比。口径变更后应保留旧口径结果并标注变更时点,避免跨期直接比较。



常见问题


老化起算点用创建时间还是进入积压状态时间,结果会差多少?


两种口径回答的问题不同。以创建时间起算,反映缺陷从提报到当前的完整等待,适合评估全周期;以进入积压状态时间起算,只计算缺陷处于未关闭状态后的停留,适合评估积压本身。若缺陷提报后很快进入处理流程,两者差异较小;若存在长时间待分派、待确认的环节,创建时间口径的老化天数会明显更长。选定一种后应在指标名称或说明中标注,全期保持一致,不能在不同期之间切换口径。


缺陷关闭后被重开,老化天数应该重新计算还是累计?


两种规则都可用,关键是全期一致并在口径中写明。重新起算指从重开时间开始计算老化,历史老化数据会因重开而下降;累计指保留首次进入积压的时间并持续累加,能反映缺陷的真实总等待。若团队关注长期反复重开的缺陷,累计口径更能暴露问题;若关注当前这轮修复的等待时长,重新起算更直接。规则变更时需标注变更时点,避免新旧数据直接比较。


期初积压为零或某段时间没有关闭记录时,比率指标怎么表达?


分母为零时不要输出0%或无穷大。期初积压为零时,关闭率和净清理率标记为“不适用”,并注明期初无积压;日均关闭数为零时,周转天数同样标记为“不适用”。这样可避免把无数据误读为清理极快或极慢。若只是个别周期关闭量为零,可保留原始数量指标,比率类指标按不适用处理,并在趋势图中断开该点而非画成零。


净清理率为正,但P90老化天数在上升,说明什么?


这通常说明团队在关闭一部分旧缺陷的同时,新增流入更快,或者新增缺陷集中在少数长期未处理的条目上。此时应分别看关闭量和新增积压量,确认积压结构变化:总数可能下降,但尾部停留时间在拉长。处理方式上,可先按老化天数排序处理超阈值条目,再评估新增流入的来源,而不是只看总数是否减少。


清单纳入范围调整后,历史数据还能直接比较吗?


不能直接比较。状态集合调整、待验证缺陷纳入或排除、严重等级范围变化、老化起算点改变,都会使新旧数据口径不同。口径变更后应保留旧口径结果并标注变更时点,按新口径重算一段历史基线,再与新数据对比。若需要跨期看趋势,可在变更时点前后分别呈现,并说明两段数据的口径差异。

animation hi
animation dot left
animation dot right
animation dot right bottom
avatar circle
WeChat QR Code
长按将二维码保存为图片

售前电话

400-188-1518

文章配图预览