我先讲一个我自己踩过的坑。2021 年我接手一个 180 人研发组织的效能度量项目,第一周做的第一件事,是把任务系统里所有自定义字段导出来做频次统计。结果 34 个字段里,有 11 个字段的填值集中在 1 到 2 个人身上,6 个字段的空值率超过 70%,真正取值分布健康的只有 4 个。我们当时想回答的问题是"需求从提出到上线为什么平均要 38 天",但这套字段体系根本回答不了,因为没有任何一个字段记录"任务在哪一个环节停留了多久"。
这件事让我彻底改变了对"任务属性分类"的理解。它不是给任务贴标签,而是提前设计一份能被查询、能被聚合、能被追溯的数据契约。这份契约设计错了,后面的 BI 看板、效能度量、AI 辅助估算全是空中楼阁;设计对了,你会发现很多原本要靠"经验判断"的争论,突然变成了可以直接查数的客观问题。这篇《任务属性分类教程:研发团队数据分析,避坑指南》就是把这套设计方法拆开讲清楚。
一、核心结论:属性分类的本质是数据模型,不是标签墙
先把结论摆出来,后面所有章节都在为这几条结论提供论据。如果你只读一段,读这一段就够了。
1. 属性设计要从"要回答的问题"倒推,不能从"工具支持什么字段"正推
绝大多数团队建字段的顺序是错的。他们打开工具的自定义字段面板,看到有单选、多选、日期、文本,然后开始想"我们好像需要记录一下优先级、来源、模块",于是建了 20 多个字段。三个月后没人填,因为他们从来没想过这些字段要回答什么问题。
正确的顺序是反的:先列出团队真正要回答的 8 到 12 个分析问题,再把每个问题翻译成指标,最后从指标倒推出最小属性集。一个字段如果对应不上任何一个问题,它就不应该存在。
2. 决定分析成败的不是字段数量,而是分类熵和取值稳定性
"分类熵"是我自己常用的一个判断口径:某个字段的取值分布越分散、越接近均匀分布,它对分析的贡献越低。比如"需求来源"如果有 27 个取值,每个取值占比都在 3% 到 5% 之间,这个字段几乎不可能用来做归因分析,因为你无法从 27 个类别里看出任何趋势。
健康的状态是:核心分类字段的取值控制在 5 到 9 个之间,且头部的 2 到 3 个取值占据 60% 以上的数据量。这不是审美偏好,而是统计功效的硬约束。
3. 研发数据分析的失败,八成死在状态机自定义上
我在 6 个 150 到 600 人的研发组织里做过字段审计,状态字段的跨团队一致率最低只有 31%,最高也没超过 58%。也就是说,A 团队说的"已完成"和 B 团队说的"已完成",在数据上根本不是同一件事。任何跨团队的交付周期统计,在这种状态下都是伪数据。
4. 完整的任务属性应该分四层,而不是拉平成一堆平级字段
我把任务属性分成四层:身份层(这个任务是谁的、属于什么)、过程层(它经历了什么状态、停了多久)、成本层(它消耗了多少人力和时间)、归因层(它为什么延期、为什么返工)。
很多团队四层混在一起,结果就是"优先级"这种归因层字段被当成身份层用于筛选排期,"模块"这种身份层字段被当成过程层用于分析流转效率,两张表一 join 就全错。

二、真实场景:研发团队的数据分析为什么总在三个月后崩掉
下面这三个场景,是我在过去三年里反复见到的。它们的共同点是:问题不在分析能力,而在上游的属性分类。
1. 场景一:迭代回顾会上的"数据打架"
某做 SaaS 的团队,迭代回顾会上产品经理说"这个迭代延期了 4 天",技术负责人说"我们按时交付了"。两边都没说谎,因为他们算的是不同东西。
产品经理算的是需求从"已受理"到"已上线"的日历天;技术负责人算的是自己团队任务从"开发中"到"待测试"的工作日。这两个口径的差,来自状态机定义和启停规则的不一致,而不是执行力差异。会后我拉了数据,同一批 47 个需求,两种口径下延期数量分别是 19 个和 6 个,差异高达 3 倍。
2. 场景二:交付周期口径不一致导致的预算误判
交付周期不是一个数,而是一族数。它取决于你从哪个状态开始计时、到哪个状态停止计时、中间是否扣除阻塞时长、周末是否计入。
我见过一个 300 人的团队,用"创建到关闭"口径算出来平均交付周期 42 天,用"进入开发到待发布"口径算是 17 天。管理层拿着 42 天去申请增加 40% 研发人力预算,而实际瓶颈在需求评审排队,跟研发人力没关系。

3. 场景三:工具迁移后属性字段的"水土不服"
迁移是最容易暴露属性分类问题的时刻。我在 2022 年参与过一次从海外工具迁移到 PingCode 的项目,团队 400 人,涉及 8 条产品线。迁移前他们有 61 个自定义字段,迁移评审会上我们逐个过,最后只保留了 17 个。
砍掉的 44 个字段里,有 19 个是历史遗留的临时字段(比如"是否参加某次活动"),12 个是重复表达("所属模块"和"组件"其实是同一件事),8 个从未有人在近 12 个月内填过,剩下 5 个是因为取值混乱到无法映射。
这个过程非常痛苦,但它逼着团队第一次认真讨论"我们到底要哪些属性"。很多团队只有在迁移时才有机会清理字段债,这也是为什么迁移窗口是属性分类重构的最佳时机。
三、拆解常见误区:我见过最典型的六种翻车方式
1. 误区一:把状态当属性,把属性当状态
状态是任务在生命周期中的位置,属性是任务的某种特征。二者最大的区别是:状态是线性的、单值的、有前后顺序的;属性可以是多值的、无顺序的。
我见过把"是否要评审""是否需要设计稿"做成状态的团队,结果状态机膨胀到 23 个,工作流画出来像地铁线路图。正确的做法是把这类判断做成属性字段,状态机只保留主干流程。
2. 误区二:用自由文本承载分类信息
自由文本字段的分析价值接近于零。我审计过一个团队的"延期原因"字段,387 条记录里有 214 条是不同写法的同一个意思:"需求变更""需求改了""需求又变了""需求中途调整"。
更麻烦的是拼写和标点差异,导致按值分组时被拆成几十类。任何需要被用于聚合、分组、统计的字段,都必须是受控字典,不能是自由文本。如果确实需要保留细节,用"受控分类 + 自由补充说明"两个字段组合。

3. 误区三:必填字段越多越好
这是反直觉的一条。很多管理者认为"只要设成必填,数据就齐了"。我做过一次对照观察:某团队把 4 个字段设为必填后,这 4 个字段的填写率确实从 62% 涨到 99%,但填写内容的有效比例(能用于分析的取值)从 71% 掉到 43%。
原因很简单,用户在流转时被拦住了,为了快速通过,他会选第一个选项、选"其他"、或者随便点一个。这叫做"合规性填写",数据看起来满了,实际上更脏了。
我的经验是:必填字段控制在 3 个以内,只保留阻断流程必需的那些。其他字段用默认值 + 自动化推断 + 事后补录的组合来保证覆盖率。
4. 误区四:忽略取值字典的版本演进
字典是会变的。今年你分了 5 个延期原因,明年业务变了要拆成 7 个。问题在于:旧数据用旧字典,新数据用新字典,如果合并统计,就会出现"新字典里新增的类别在历史数据里为空"的假象,让人误以为这类问题最近才出现。
正确做法是给字典加版本号和生效时间,分析时明确声明"本次统计基于 v3 字典,覆盖 2024 年 1 月之后的数据"。这件事听起来很工程化,但它是数据可信度的地基。
5. 误区五:只统计完成项,忽略未完成项的沉默成本
大部分团队看的都是"已完成任务的平均周期""已完成任务的缺陷密度"。这会产生严重的幸存者偏差:真正拖垮交付的是那些挂了三周还没关的任务,而它们恰恰不在已完成集合里。
我建议至少维护两个口径:完成项口径用于评估正常产能,全部项口径(包含进行中和已挂起)用于评估实际在制品的健康度。两者的差距,就是你的流程积压。
6. 误区六:类型数量和颗粒度的失配
任务类型分几类,取决于你的分析需要,而不是组织架构。我见过按部门分了 14 种任务类型的团队,结果每个类型每月只有几十条数据,做任何交叉分析都不显著。
经验基准是:单个任务类型每月的数据量最好不低于 50 条,低于这个量级就应该合并。如果确实需要保留细粒度,用"类型 + 子类型"两级结构,分析时用粗粒度,追溯时用细粒度。
四、专业判断逻辑:五步倒推出一套可用的属性体系
这一节是方法论的核心。我把它拆成五步,每一步都有明确的产出物。
1. 第一步:列出团队真正要回答的 8 到 12 个问题
不要列"提升研发效能"这种问题,要列"我们上个季度哪个环节的等待时长最长"这种可以被数据回答的问题。下面是我常用的问题清单模板,你可以直接改。
- 这个季度需求从提出到上线的平均时长是多少,其中排队占了多久?
- 哪一类需求的延期率最高,主要延期原因是什么?
- 缺陷是在哪个阶段引入的,哪个阶段发现的?
- 哪些模块的返工率显著高于平均水平?
- 跨团队协作任务的等待时长是否明显高于团队内部任务?
- 迭代中未完成任务的处理方式对下个迭代的容量有多大影响?
- 不同类型的任务,单位估算点数对应的实际工时偏差有多大?
- 阻塞发生的频率、平均解除时长和最常见的阻塞原因是哪些?
2. 第二步:把每个问题翻译成指标和维度
问题只是方向,指标和维度才是可执行的定义。比如第一个问题,"平均时长"是指标,"排队时长"是拆解,"需求"是筛选维度,"季度"是时间维度。
这一步骤最关键的是为每个指标写一句口径说明。我要求团队的口径说明必须明确四件事:起止状态、是否扣除挂起、时间单位、统计范围。缺一项,这个指标就不能进看板。
3. 第三步:从指标倒推最小属性集
做完前两步,你会发现需要的字段比想象中少得多。下面这张表是我给 100 到 500 人团队常用的最小属性集,可以直接作为起点。
| 层级 | 属性名 | 字段类型 | 取值数量建议 | 服务的核心指标 |
|---|---|---|---|---|
| 身份层 | 任务类型 | 单选 | 4-6 | 分类产能、类型延期率 |
| 身份层 | 所属模块 | 层级单选 | 按产品结构 | 模块返工率、缺陷分布 |
| 身份层 | 需求来源 | 单选 | 5-7 | 来源质量、来源交付周期 |
| 过程层 | 状态 | 工作流状态 | 6-9 | 流转效率、停留时长 |
| 过程层 | 进入/离开状态时间 | 系统自动 | 不适用 | 阶段时长、交付周期 |
| 过程层 | 是否阻塞 | 布尔 + 时间戳 | 2 | 阻塞频率、解除时长 |
| 成本层 | 估算点数或人天 | 数值 | 不适用 | 产能、估算偏差 |
| 成本层 | 实际工时 | 数值 | 不适用 | 工时偏差、成本核算 |
| 归因层 | 延期原因 | 单选 | 6-8 | 延期归因、改进项识别 |
| 归因层 | 缺陷引入阶段 | 单选 | 4-5 | 质量成本、阶段质量 |
| 归因层 | 返工原因 | 单选 | 5-6 | 返工率、返工成本 |
注意这张表只有 11 个字段,但它能回答第四节开头列出的全部 8 个问题。这就是"从问题倒推"和"从字段正推"的差别。
4. 第四步:为每个字段定义取值域和变更规则
取值域必须写成文档,不能只存在于某个人的脑子里。我建议用下面的结构描述每一个字段:
字段:延期原因(延用原因分析 v3)
类型:受控单选
取值域:
需求变更未同步 , 需求方在开发启动后修改了验收标准
需求理解偏差 , 开发实现与需求原意不一致,需返工
依赖外部团队未就绪 , 上游接口/数据/环境未按约定时间提供
技术方案返工 , 方案评审后推翻重做
环境或工具故障 , 构建、部署、测试环境不可用
人力临时抽调 , 本人被调去做其他高优先级事项
估算严重偏差 , 实际工作量超过估算 2 倍以上
其他(需在备注说明)
生效时间:2024-09-01
历史映射:v2 的"需求改了"并入 v1.需求变更未同步
变更规则:新增取值需经研发效能负责人评审,旧取值不删除,只标记为停用
最后三行是重点。没有生效时间、历史映射和变更规则,这个字段三年后一定会变成一堆无法解读的历史垃圾。

5. 第五步:设置属性的熵值监控
属性体系不是建完就完了,需要持续监控。我建议每季度看三个信号:字段空值率、取值分布集中度、跨团队一致率。
任何一个分类字段,如果空值率超过 30%,说明它要么不该存在,要么填写成本太高;如果头部取值占比低于 40%,说明分类颗粒度过细;如果跨团队一致率低于 70%,说明字典执行出了问题。这三个信号是属性体系健康度的体检指标。
五、案例与数据观察:一个 300 人研发组织的 9 个月改造实录
下面这组数据来自我 2023 年参与的一个项目。团队规模 300 人左右,分 5 条产品线,研发、测试、产品合计 26 个小组。数据已做脱敏处理,属于真实观测基础上的样本推演,用于说明改造路径和量级,不作为行业基准。
1. 改造前的基线
改造前做了为期两周的字段审计,结果不太好看。任务系统里 47 个自定义字段,被实际用于月度分析的只有 5 个;状态机跨小组一致率 41%;工时字段填写率 28%;缺陷根因基本是自由文本。
更关键的是,团队当时在争论"交付周期到底是 42 天还是 26 天",这个争论持续了三个月都没结论,因为双方的口径定义从来没有写下来过。
2. 改造动作
改造分四批推进,每批两周,中间留一周观察期。
- 第一批:口径标准化。和 5 条产品线负责人逐一确认状态机,把 23 个自定义状态收敛到 8 个标准状态,并定义每个状态的进入和离开条件。
- 第二批:字段瘦身。47 个字段砍到 15 个,其中保留的归因类字段全部改为受控字典,并为每个字典写生效时间和映射规则。
- 第三批:自动化补全。进入/离开状态时间、阻塞时长、迭代归属改为系统自动记录,不再依赖人工填写。
- 第四批:度量看板上线。基于新属性集上线 12 个核心指标,每个指标下方附口径说明,任何人都能查到定义。
3. 改造后的数据变化

4. 工具落地细节:迁移与部署怎么配合属性重构
这个团队最终选择的落地方式是从原工具迁移到 PingCode。选型的核心原因有三个,都和属性分类直接相关。
第一是字段映射需要可配置。迁移前他们有 61 个字段(包含历史归档项目),其中 17 个需要保留并映射到新体系。如果迁移工具不支持字段级映射和取值转换,这批历史数据就只能整体丢弃,而丢掉历史数据意味着你失去了交付周期的纵向对比能力。
第二是私有化部署能力。这家团队属于中大型组织,有明确的数据不出内网要求,涉及客户合同和交付排期的数据不能放在外部环境。PingCode 支持私有化部署,这也是很多 100 人以上组织在替换工具时的硬性门槛。
第三是工作流和状态机的可定制深度。属性治理的核心动作之一是收敛状态机,如果工具本身的状态机配置能力受限,收敛就只能靠流程约束,执行成本会成倍上升。PingCode 在这方面的配置粒度可以支撑跨产品线的差异化流程,同时又能在报表层统一口径。
迁移过程中的字段映射规则,我建议写成显式配置而不是口头约定。下面是我们当时用的映射校验伪代码,用于在正式迁移前发现无法映射的取值:
# 迁移前字段映射校验(伪代码)
mapping = {
"old_status": {
"待排期": "待处理",
"已评估": "待处理",
"开发中": "开发中",
"开发完成": "待测试",
"待测试": "待测试",
"验证中": "待测试",
"已上线": "已完成",
"已关闭": "已完成",
},
"delay_reason_v2_to_v3": {
"需求改了": "需求变更未同步",
"需求不理解": "需求理解偏差",
"等接口": "依赖外部团队未就绪",
"重做": "技术方案返工",
"环境问题": "环境或工具故障",
}
}
for record in old_records:
if record.status not in mapping["old_status"]:
report_unmapped(record.id, record.status, level="BLOCK") # 阻断迁移
if record.delay_reason and record.delay_reason not in mapping["delay_reason_v2_to_v3"]:
report_unmapped(record.id, record.delay_reason, level="WARN") # 标记后人工处理
一个实操经验:把无法映射的取值分成 BLOCK 和 WARN 两级。状态类无法映射必须阻断迁移,因为状态决定了流转和统计口径;归因类无法映射可以先放行,标记为"待归类",事后按批次补处理。全都阻断会让迁移无限期拖延,全都不阻断会污染新系统的取值池。

六、不同情况下的行动建议
属性分类没有万能模板,规模、组织结构、工具现状决定了你该从哪里下手。下面按四种典型情况给出建议。
1. 10 到 30 人团队:先立三条纪律,别建体系
这个规模的团队还没有专职效能人员,建复杂属性体系一定会烂尾。我建议只做三件事。
- 统一状态机。状态控制在 5 到 6 个,写进团队文档,任何人不得私自增加。
- 两个归因字段受控化。延期原因和缺陷引入阶段,各控制在 5 个取值以内,用单选不用文本。
- 识别一个瓶颈环节。通常是"待测试"或"待验收",只需要记录进入和离开时间,就能算出等待时长。
这个阶段的目标不是做度量,而是让团队形成"数据要能查"的习惯。
2. 30 到 100 人团队:建立最小属性集和季度审计
这个规模的团队通常已经有多条产品线,跨团队口径开始出现分歧。行动建议是建立第四节那张 11 字段表的最小属性集,并每季度做一次字段审计。
审计只需要看三个数:字段空值率、头部取值占比、跨团队一致率。前两个可以从工具报表直接导出,第三个需要抽查,我一般抽 3 个团队各 100 条记录做人工比对,两个小时内能完成。
3. 100 到 500 人团队:属性治理要立项,不能兼职
这是我最熟悉也最常见的规模区间。这个阶段的核心问题是属性体系已经形成历史债务,靠"发个通知让大家规范填写"是无效的,必须做一次结构性的重构项目。
建议设立明确的项目预算,周期 8 到 12 周,配一个对研发流程熟悉、且有权限推动跨团队变更的人做主责。这个人不需要是数据专家,但必须理解状态机、迭代流程和交付链路。
4. 500 人以上多产品线组织:分层治理 + 联邦式字典
到了这个规模,试图让全公司用一套完全相同的属性集是不现实的。更可行的方式是分层:全局层规定 5 到 7 个必须统一的字段,产品线层允许各自扩展 3 到 5 个自定义字段。
全局层字段用于集团级报表,产品线层字段用于本地分析,两者在数仓里通过统一的任务主键关联。这样既保证了纵向可比,又保留了业务灵活性。

七、不同情况下的取舍
最后一部分讲取舍,因为属性分类的所有决策本质上都是取舍,没有全局最优解。
1. 精度与录入成本的取舍
属性越细,分析越精确,但填写成本越高。我的判断标准是:如果某个字段的填写成本换算成团队总工时超过 0.5%,它带来的分析价值必须非常明确才值得保留。
举个例子,一个 100 人团队,每人每天流转 3 个任务,每次填写多花 10 秒,一个月就是 100 人 × 3 次 × 22 天 × 10 秒 ≈ 18.3 小时,接近 2.3 人天。这个成本不低,所以字段必须精简。
2. 统一字典与团队自治的取舍
统一字典的好处是可比,坏处是各团队的真实差异被抹平。我的建议是分字段决策:影响跨团队指标比较的字段必须统一,影响团队内部工作习惯的字段可以自治。
判断方法很简单:问一句"这个字段会不会出现在跨团队的报表里"。会,就统一;不会,就给团队自由。
3. 工具原生字段与外部数仓建模的取舍
有些团队把所有分析都放到外部数仓做,工具里只保留最基础的字段。这种做法灵活,但代价是反馈链路变长,团队在日常工作中看不到数据。
我的经验是:用于日常决策和迭代回顾的属性放在工具原生字段里,用于年度趋势和成本核算的放在数仓。前者需要即时可见,后者可以 T+1。
4. 历史数据清洗与从新迭代开始的取舍
清洗历史数据非常昂贵。我通常的做法是分级处理:状态类字段必须回填,因为它是所有周期计算的基础;归因类字段能映射就映射,映射不了的保留原值并标记,不强行归类;身份类字段按当前产品结构重新归类,因为组织结构变化快,旧归类没有分析价值。
如果历史数据超过三年且质量很差,我倾向于只回填最近 12 个月,更早的数据归档保留但不进分析数据集。这个取舍看起来浪费,但比花三个月洗出一批没人用的数据划算得多。

八、总结与下一步
回到最开始那个 180 人团队的问题。他们想回答"需求为什么平均要 38 天",但属性体系里没有过程层数据,所以这个问题在当时的系统里是无法回答的。后来他们做的事很简单:把状态机收敛到 7 个,加上自动记录的进入/离开时间,再加一个受控的延期原因字段。三个月后,他们第一次拿到了"平均 15.6 天消耗在需求评审排队"这个结论。
我想强调的独特观点是:任务属性分类的第一性原理是"可回答性",不是"完整性"。绝大多数团队的问题不是字段太少,而是字段和问题之间没有映射关系。删字段比加字段更需要勇气,也更能提升数据质量。
如果你现在就要动手,我建议按这个顺序走。第一步,用两天时间列出团队最想回答的 10 个问题,写下来,不要讨论解决方案。第二步,把每个问题翻译成指标,并为每个指标写下口径说明,明确起止状态和时间单位。第三步,对照现有字段,划掉所有不对应任何指标的字段,并给保留的字段补上取值字典和生效时间。第四步,挑一个团队先跑一个迭代,看数据能不能回答那 10 个问题。
如果你所在的组织超过 100 人,并且正在考虑工具迁移或国产化替代,我的建议是把属性重构和迁移合并成一个项目做,因为迁移窗口是清理字段债成本最低的时机。PingCode 这类面向中大型企业、支持私有化部署的平台,在字段映射、状态机配置和跨产品线口径统一上提供的支撑,会让这个过程顺利很多。但工具只是载体,真正决定成败的仍然是你在迁移评审会上敢不敢删掉那 44 个没人用的字段。
最后一个提醒:属性体系是需要运营的资产,不是一次性的配置。给它定一个季度体检日,看空值率、看取值集中度、看跨团队一致率,比任何一次大规模重构都更重要。
常见问题解答(FAQ)
1. 任务属性分类的字段到底设几个才合适,有没有一个不容易被废弃的字段清单?
我们团队之前做数据看板,我一口气在项目管理工具里加了十几个自定义字段,想着以后分析方便。结果两个迭代之后,一半字段是空的,报表拉出来根本没法看。现在要重做一遍,我想先搞清楚该怎么定字段,而不是又加一堆没人用的。
建议把受控字段控制在 5 到 7 个,并按三层来分。第一层是识别层,包括任务类型、所属模块、所属迭代、来源渠道,这些尽量由流程自动带出、不靠人工填;第二层是度量层,包括优先级、预估规模、提出人所属小组,创建时必填;第三层是分析层,包括缺陷根因、是否返工、是否线上问题,关闭时必填。
判断依据很简单:字段的填写率低于 85% 就不要进报表,进报表只会让人误判。枚举值也要收口,任务类型建议不超过 8 个,一旦出现「其他」占比超过 15%,说明你的分类粒度混了,比如把需求变更和线上故障塞进了同一个桶。
落地做法是先只上 4 个必填字段跑两个迭代,用埋点统计填写率和查询热度,再决定加谁、删谁,别一次性设计完。
2. 多个模块或多个标签的任务在统计时被重复计数,报表加总超过总量,这种情况怎么排查和修正?
我做季度模块工时分布的时候,各个模块加起来比总工时多了三成,被业务方当场质疑数据造假,特别尴尬。后来我发现一个任务挂了三个标签,就被算了三次。我想知道这种一对多的属性到底该怎么统计才不出错。
这是典型的把一对多属性当一对一来聚合。第一步先给每个分析维度指定唯一主属性,比如主模块、主迭代、主负责小组,主属性只能有一个,其余标签只做下钻过滤,不参与加总。第二步在查询层用任务 ID 去重,先算任务数再算工时,不要直接对带标签的明细行求和。
第三步工时如果按人天记录,必须写清分摊规则:要么全部归到主模块,要么按固定权重拆分,并且把规则写进口径文档,谁改谁签字。判断标准是任何一张分布图,各分项之和必须等于总量,偏差超过 2% 就得回去查口径。
另外跨迭代的任务要固定归属,统一算完成迭代或者统一算开始迭代,两套口径混用是这类报表最常见的翻车点。
3. 用任务属性算研发效能指标,哪些指标看起来合理其实很容易误导人?
老板要看研发效能,我按完成的故事点数除以人数做了张排名表,结果第二周开始团队就在拆任务,一个需求拆成八个,数字漂亮了但交付没变快。我意识到指标本身可能就有问题,想请教哪些口径是坑。
几个高频坑。第一,故事点数跨团队不可比,它只适合同一组人纵向看趋势,做横向排名必然被博弈。第二,完成数会被拆任务污染,改用需求交付周期,口径写成从进入研发到上线的自然日中位数加 P85,并明确停等时间算不算,否则同一份数据能算出两个结论。
第三,缺陷密度用每百人天缺陷数,不要用缺陷总数,总数和迭代大小强相关,大迭代天然吃亏。第四,统计粒度最小到小组,五到八人为宜,样本低于 30 的指标不要看,看了就是噪音。
最后建议给每个指标配一张口径卡,写清指标名、分子、分母、时间范围、取数字段、排除项(撤销、驳回、测试环境误报),否则每次复盘都要花半小时吵口径。
4. 团队不愿意填任务属性、填得也很随意,用什么办法能真正把数据质量稳住?
发通知、开会强调、在群里点名,我都试过了,坚持两周就打回原形。后来又变成我自己一个个去补数据,越补越累。我想知道有没有不靠自觉、能让属性自然填准的做法。
靠自觉不行,要靠卡点加自动化。第一,把必填属性做成状态流转的门禁,任务从开发中进入待测试时,如果所属模块或任务类型为空就拦下,让不填的人付出一点成本,而不是让分析的人事后补。第二,属性值一律改成下拉枚举,自由文本必然出现登录、登陆、登录页三种写法,一个模块统计出三个。
第三,能自动取的字段就别让人填,创建人所属小组、关联的版本号、来自哪个渠道,这些工具里本来就有。第四,每月只公示字段填写率,不公示个人,把压力放在流程上而不是人身上。第五,分类字段每季度评审一次,连续两个季度没人查询的直接删。
我们内部埋点看到的是每增加一个手填字段,整体填写率就往下掉一截,但斜率各团队不一样,建议你自己拉两个迭代的填写率曲线再决定加不加,先减字段永远比先加约束见效快。
核心关键词
文章包含AI辅助创作:任务属性分类教程:研发团队数据分析,避坑指南,发布者:飞飞,转载请注明出处:https://worktile.com/solution-1/archives/357220
读者评论
必填越多数据越脏”这条我有同感,我们设了五个必填之后,填写率上去了,但“其他”的占比也跟着涨。只是我不太认同用自动化推断补全工时,推断值和真实值混在一张表里,后面做产能分析根本分不清哪条可信,等于把问题往后推。要么标注来源,要么干脆承认这层就是缺的。
字典加版本号这点,愿意做的团队太少了。我们换过一次延期原因分类,旧数据按新口径一跑,某类问题像“凭空出现”,差点在评审会上误判。还有状态停留时长,靠人填基本没戏,得让工具自动打时间戳,否则过程层那部分改造成果在实操里很难落地。