我在一次 300 人研发组织的季度复盘会上见过一组让我印象很深的数字:过去一个季度,系统里有 1.2 万条研发任务的"预计工期"字段填写率达到 94%,看起来这个字段被执行得非常彻底。但同一批数据里,实际耗时落在预计区间 ±20% 以内的任务只有 31%。也就是说,几乎所有人都在认真填写一个三分之二情况下不成立的字段。更麻烦的是,这个字段被 PMO 直接接进了资源排期和对外承诺,于是"填得越认真,错得越系统"。
这篇文章讨论的是研发团队任务属性里最基础、也最容易被误用的一个:预计工期。我会把结论放在最前面,然后拆开讲背景、误区、判断逻辑、真实数据,最后给出不同规模团队的取舍建议。文中的数据有些来自我参与过的团队改造观察,属于示意数据,我会明确标注;有些来自公开研究,我会写清来源。
一、先说结论:预计工期填得越满,交付越不一定准
1. 三条核心结论
结论一:预计工期是一个"假设容器",不是"承诺字段"。当你要求团队填写工期时,你实际上是在要求他们同时写下四个隐含假设:这件事的工作量是多少、每天能投入多少比例的时间、有哪些外部依赖、验收标准是什么。把这四个假设拆出来,工期才有意义;不拆,工期只是一个数字。
结论二:工时(Effort)不等于工期(Duration),这是最高频的口径错误。工时是"这件事需要投入多少人·小时",工期是"从开始到完成需要多少日历时间"。两者之间隔着一个关键变量:有效投入率。一个预计 16 小时的任务,如果执行人每天只有 3 小时能真正投入(其余时间被会议、答疑、线上问题切碎),它的工期是 5.3 个工作日,不是 2 天。
结论三:估算校准要做"团队级分布",绝不做"个人级考核"。一旦预计工期与个人绩效挂钩,团队会在两周内学会填写"安全数字",你会得到一个漂亮但完全失去预测能力的字段。这是我在多个团队反复验证过的规律。
2. 一个反常识判断:填报率越高的团队,准时率未必更高
大多数管理者的直觉是"字段填得越全,管理越精细"。但我在实际数据里看到的往往是另一条曲线:填报率从 40% 提升到 95% 的过程中,准时交付率会先上升,然后在某个点之后走平甚至下滑。原因不复杂,当填写变成强制动作而缺少配套的复盘机制时,团队填的不再是判断,而是"交差"。

这张图里的数据是示意数据,来自我对四个进行过类似改造的团队的横向观察归一化处理,不是精确统计。但趋势在四个团队里高度一致:把填写率当 KPI 的团队,最终都会收获一个数字漂亮、预测失效的字段。
二、背景:预计工期在研发任务属性里到底处在什么位置
1. 研发任务属性其实分成四类
很多团队在配置工作项字段时是"想到什么加什么",结果字段几十个,真正被使用的不到十个。我在给团队做工具落地时,习惯先把任务属性分四类,再决定哪些字段必填、哪些可选、哪些干脆不建。
| 属性类别 | 典型字段 | 核心作用 | 是否建议必填 |
|---|---|---|---|
| 识别类 | 标题、工作项类型、所属需求、负责人 | 让人知道"这是什么、谁负责" | 必填 |
| 度量类 | 预计工期、预计工时、实际工时、剩余工时、故事点 | 支撑排期、容量规划和校准分析 | 分层必填,按团队成熟度定 |
| 状态类 | 状态、阻塞原因、依赖关系、完成定义 | 暴露流程卡点 | 必填,但字段要少 |
| 归因类 | 标签、模块、迭代、偏差原因 | 支撑复盘和横向对标 | 选填或后置 |
预计工期属于度量类,而且它是度量类里唯一一个"被两种完全不同的目标同时拉扯"的字段:排期需要它(未来视角),复盘需要它(历史视角)。当团队用同一个字段既做承诺又做校准,它就一定会被污染,因为填报人的心理动机完全不同。
2. 三种典型团队场景,工期字段的用法完全不同
第一种是标准 Scrum 团队,以迭代为周期交付。这类团队里,预计工期主要用于迭代内的容量校验,判断"这一迭代是不是塞多了";它的时间尺度通常是一到两周,精度要求不高,更重要的是快速暴露超载。
第二种是跨部门交付团队,特点是任务依赖外部团队(设计、数据、运维、合规)。这类团队的工期字段里,等待时间往往比工作时间占比更高。我见过的一个典型数据是:某类接口联调任务,实际工作时间 3 天,但从开始到完成花了 11 天,剩下的 8 天全在等对方排期。
第三种是中大型组织的多项目并行团队,典型特征是同一批人被多个项目共享。这类团队的工期估算如果不带"投入率"假设,几乎必然失准,因为一个人的日历时间被切成了很多份。
3. 我第一次被工期字段反噬的经历
早些年我在一个 40 人左右的研发团队推动过一次"任务标准化",其中一条是要求所有研发任务必须填预计工期,粒度精确到 0.5 天。推行三周后,字段填写率到了 100%,我当时还挺得意。
但到了迭代复盘时发现,团队填的工期分布呈现非常奇怪的双峰:大量任务填 0.5 天,剩下大量任务填 3 天。我一个个问下来才明白,0.5 天代表"我不想被追问",3 天代表"给我留点缓冲"。团队没有在估算,他们在应付。那一次之后我才真正意识到,字段的可用性不取决于它是否存在,而取决于填写它的人是否相信它会被正确使用。
4. 行业基线:估算偏差是普遍规律,不是能力问题
需要说明的是,估算不准并不是"团队不专业"。Standish Group 的 CHAOS 系列报告多年来的结论都指向同一个方向:大型 IT 项目按时、按预算、按范围完成的比例长期处在偏低水平(不同年份口径差异较大,通常在三分之一上下波动)。
牛津大学教授 Bent Flyvbjerg 在研究大型工程项目后提出的"参考类预测(Reference Class Forecasting)"也指向同一件事:人类的单点估算存在系统性乐观偏差,这不是态度问题,是认知结构问题。Daniel Kahneman 与 Amos Tversky 提出的"规划谬误(Planning Fallacy)"给出了同样的解释:人们倾向于把当前任务看作特例,低估历史同类任务的实际耗时分布。
这意味着,讨论"如何让预计工期更准",前提是承认偏差必然存在。真正可优化的不是消除偏差,而是让偏差可测量、可收敛。

三、七个最常见的预计工期误区
1. 把预计工期直接当成截止日期
这是最普遍也最危险的一个。团队填了 3 天,系统或管理者就默认第 3 天必须交付,于是预计工期从"估算"变成了"承诺"。一旦如此,理性的做法就不再是"如实估算",而是"往安全方向填",字段随即失去价值。
我的建议是把"预计工期"和"计划完成日期"作为两个字段分开管理。前者是团队对工作量的判断,后者是排期后的承诺,两者可以不一致,不一致的部分恰恰是需要讨论的地方。
2. 用"人天"填"工时",或者反之
我见过太多团队在字段定义上含糊其辞,同一个字段里,有人填的是"我需要 16 小时",有人填的是"两天能交"。这两种表达在单人、无干扰、无依赖的情况下碰巧等价,但在真实研发环境里完全不是一回事。
建议在字段说明里写死单位,并在任务模板里给出换算提示。如果一个任务需要多人协作,还应明确它是"工作量之和"还是"日历跨度",这是两个数量级不同的答案。
3. 用单点数字表达本应区间的判断
让人填一个数字,他就必然会填一个"看起来最像"的数字,而这个数字通常是中位数附近的心理值,既不乐观也不悲观,反而丢掉了最有价值的信息:不确定性有多大。
对于不确定性高的任务,更有效的做法是让团队给出信心区间,例如"我 50% 把握在 5 天内完成,90% 把握在 9 天内完成"。这两个数字放在一起,管理者立刻能判断出该任务的风险级别,而单一个"6 天"什么都说明不了。

4. 默认"一个人一天有八小时可投入"
这是我认为最值得单独拎出来讲的一条。很多团队的工期失准,根因不在技术判断,而在于一个从未被写下来的假设:执行人每天有 100% 的时间投入这个任务。
真实情况是,中大型研发组织里,工程师的日均有效编码时间普遍低于名义工作时间,剩下的被站会、评审、答疑、线上支持、临时插入的需求切走。如果你的工期没有把这个系数写进去,那么无论团队多努力,工期都必然偏短。
| 任务工时 | 假设投入率 100% | 假设投入率 60% | 假设投入率 35% |
|---|---|---|---|
| 8 小时 | 1.0 个工作日 | 1.7 个工作日 | 2.9 个工作日 |
| 16 小时 | 2.0 个工作日 | 3.3 个工作日 | 5.7 个工作日 |
| 40 小时 | 5.0 个工作日 | 8.3 个工作日 | 14.3 个工作日 |
| 80 小时 | 10.0 个工作日 | 16.7 个工作日 | 28.6 个工作日 |
这张换算表是我在给团队做估算培训时最常拿出来的一张。同样一个 80 小时的任务,投入率假设的不同会带来接近三倍的工期差异,而这往往比技术方案的差异更影响交付结果。
5. 用预计工期做个人绩效
这条我在前面结论里已经提到,但值得再强调一次。一旦"估算准确率"进入个人评价,团队的行为会迅速收敛到两个策略:要么把工期填得非常宽,要么把任务拆得极碎,让每个碎片都必然准。两种策略都会让整体预测能力下降。
正确的做法是把校准分析做成团队粒度、季度粒度、分布视角。看的是这个团队在同类任务上的偏差中位数是否在收敛,而不是张三这次估准了没有。
6. 任务粒度不统一,3 小时和 30 天混在同一层
粒度混乱是估算失准的结构性原因。一个 3 小时的任务和一个 30 天的任务,在同一张看板上被同等对待,团队对前者的判断误差可能是 ±50%,对后者可能是 ±200%,混在一起做统计时全部变成噪声。

7. 只记录预计,不记录实际,也不做复盘
这是让整个体系失效的最后一环。如果只填预计工期,不记录实际耗时,那么团队永远拿不到反馈信号,估算能力就永远停留在原地。没有反馈回路的估算,本质上是玄学。
更隐蔽的问题是:即使记录了实际耗时,也很少有团队真正做偏差归因。实际耗时超了,原因可能是需求变了、可能是被拉去救火、可能是估算本身错了,三者对应的改进动作完全不同。不归因,就等于什么都没学到。
四、专业判断逻辑:什么样的预计工期才是"可用"的
1. 第一步:把口径写进字段定义,而不是口头约定
我通常会要求团队在工具里把字段的说明写死,例如"预计工时:本任务需要投入的净工作时间,单位小时,不含等待、会议、返工"。这句话看起来笨拙,但它能挡掉大量后续争议。
同时必须明确一件容易被忽略的事:多人协作任务的工期包含并行还是串行。两个人各投入 8 小时的任务,工期是 1 天还是 2 天,取决于他们是并行还是串行,这个判断必须在任务创建时就确定下来。
2. 第二步:定粒度纪律,而不是定估算技巧
从上面那张粒度对比图可以看出,偏差主要不是一个"技巧问题",而是一个"结构问题"。我给出的经验基准是:研发任务的理想粒度是半天到一天,超过三天必须拆分,超过五天强制拆分。
这个规则的好处是它可执行、可检查。团队不需要学习复杂的故事点映射,只需要在创建任务时回答一个问题:这个任务能不能在三天内完成?不能就拆。
3. 第三步:用区间替代单点,让不确定性可见
对不确定性较高的任务,我会要求填两个数:乐观工期和悲观工期。这两个数之间的差距本身就是风险信号,差距越大,越需要提前做技术预研或依赖确认。

4. 第四步:选定校准机制,不同团队用不同方案
不是所有团队都需要同一套估算机制。我通常会根据团队规模、任务同质性和历史数据积累情况,在四种机制里选一种,而不是全都上。

5. 第五步:让工期字段和依赖、阻塞状态绑定
这条是我认为最容易被忽略却收益最高的一条。如果任务的工期里包含了等待外部依赖的时间,那么这个等待必须被显式记录,否则复盘时你根本无法区分"我们做得慢"和"我们在等人"。
我的做法是:任务进入阻塞状态时必须填写阻塞原因和预计解除时间,同时系统自动记录阻塞时长。这些数据积累两三个季度后,就能算出一个团队真实的"等待系数",用它去修正工期估算,比任何培训都有效。
6. 第六步:建立轻量复盘回路,按周期校准
复盘不需要复杂。我的经验是,团队每两周花 20 分钟,只看一个指标:上两周完成的任务中,实际耗时超出预计 50% 以上的有哪些,共同原因是什么。只归因,不追责。

五、真实案例:一个 300 人组织的工期字段改造
1. 改造前的状态
这家企业属于典型的中大型研发组织,三个产品线、约 300 名研发人员,同时并行推进的项目常年在 15 个以上。改造前的状态很有代表性:任务活跃度高、字段填写率高、但跨项目排期始终靠几个资深主管"拍脑袋",因为他们不相信系统里的数据。
我介入时拿到的第一组数据是:系统内 1.2 万条任务的预计工期字段填写率 94%,但把实际耗时和预计工期做散点回归后发现,两者的相关系数只有 0.31。这意味着系统里的工期数据对实际交付几乎没有解释力。
2. 我们做的四件事
- 把原有含义模糊的"工期"字段拆成三个:预计工时(小时)、预计日历工期(天)、乐观/悲观区间。字段说明里写死口径,多人任务必须标注并行或串行。
- 建立粒度纪律:超过三天必须拆分,超过五天的任务系统直接标红提示,不允许进入迭代。
- 引入投入率参数:每个团队根据历史数据测算自己的日均有效投入率,作为工期换算的默认系数。
- 建立双周偏差归因:只统计超预期 50% 以上的任务,归因到需求变更、外部依赖、投入率误判、工作量误判、返工五个类别。
这里有个关键细节:我们没有把这三个字段设为全部必填,而是按任务类型分层要求。缺陷修复类任务只填预计工时,不需要日历工期;跨团队依赖类的任务必须填乐观/悲观区间。这个分层设计大幅降低了团队的填写负担,也是这次改造能推下去的核心原因。
3. 三个季度后的数据变化

改造后的三个季度里,最明显的变化不是估算精度立刻提升,而是争论的焦点发生了转移。改造前,团队在排期会上争论"这个任务到底要多久";改造后,争论变成了"这个任务的悲观区间为什么这么宽、风险在哪里、要不要先做预研"。前者消耗时间,后者创造价值。
| 观察指标 | 改造前 | 第 1 季度末 | 第 3 季度末 |
|---|---|---|---|
| 预计工期填写率 | 94% | 81% | 79% |
| 实际与预计相关系数 | 0.31 | 0.52 | 0.68 |
| ±20% 内命中率 | 31% | 44% | 58% |
| 排期会平均时长 | 95 分钟 | 72 分钟 | 48 分钟 |
| 超预期 50% 以上任务占比 | 34% | 25% | 17% |
请注意第一行:填写率从 94% 降到了 79%,这是有意为之。因为我们取消了缺陷类任务的日历工期必填,这部分本就不该被强制估算。用填写率换数据质量,这笔交易在整个改造里是最划算的一笔。以上数据来自该组织内部统计的示意数据,用于说明趋势而非精确复现。
4. 工具侧怎么承载:以 PingCode 为例
这套机制能否长期跑下去,很大程度取决于工具能不能把口径和纪律固化下来,而不是靠文档和培训。这个团队最终选择了 PingCode,原因主要有三点:一是它能自定义工作项类型和字段,可以把"预计工时/预计日历工期/乐观悲观区间"这组字段按任务类型分层配置;二是它支持依赖关系和阻塞状态的显式建模,等待时间可以被结构化记录;三是它面向中大型组织,支持私有化部署,也支持从 Jira 平滑迁移,对已有历史数据的团队来说迁移成本可控。
下面是我们在 PingCode 工作项配置里大致采用的字段结构(示意配置,字段名可按团队习惯调整):
工作项类型: 研发任务
字段分组:
基础信息:
标题: text, 必填
负责人: user, 必填
所属迭代: select, 必填
估算信息:
预计工时: number, 单位=小时, 必填
预计日历工期: number, 单位=天, 条件必填(任务类型 != 缺陷)
乐观工期: number, 单位=天, 条件必填(含外部依赖 = 是)
悲观工期: number, 单位=天, 条件必填(含外部依赖 = 是)
并行方式: select[并行, 串行], 条件必填(负责人数 > 1)
执行信息:
实际工时: number, 单位=小时, 完成时必填
阻塞原因: select[等接口, 等设计, 等数据, 等审批, 其他], 进入阻塞时必填
偏差归因: select[需求变更, 外部依赖, 投入率误判, 工作量误判, 返工], 完成时选填
规则:
预计日历工期 > 5 天时,禁止进入迭代,提示"请拆分"
任务负责人数 > 1 且未填写并行方式时,不允许保存
有了这样的结构化数据,校准分析就变成一段很短的查询。下面是我给团队写的偏差归因统计 SQL(示意写法):
SELECT deviation_reason AS 偏差原因, COUNT(*) AS 任务数, ROUND(AVG(actual_hours / NULLIF(estimate_hours, 0)), 2) AS 平均实际预计比, ROUND( SUM(CASE WHEN actual_hours > estimate_hours * 1.5 THEN 1 ELSE 0 END) / COUNT(*), 3 ) AS 超预期50pct占比 FROM work_items WHERE item_type = '研发任务' AND status = '已完成' AND finished_at >= DATE_SUB(CURRENT_DATE, INTERVAL 90 DAY) GROUP BY deviation_reason ORDER BY 超预期50pct占比 DESC;

六、不同情况下的行动建议
1. 10 到 50 人的团队:先做纪律,别做体系
这个阶段最容易犯的错是照搬大厂流程。我的建议是只做三件事:统一工期字段的口径(写进字段说明)、定下"超过三天必须拆"的粒度规则、每两周花 20 分钟做一次偏差归因。
不要引入投入率参数、不要做故事点映射、不要上多级区间估算。这些都需要数据积累,过早引入只会增加负担而得不到回报。
2. 50 到 200 人的团队:开始引入投入率和区间
这个规模开始出现明显的多项目并行,一个人的时间被切分,单点人天估算开始失效。这个阶段应做的是:按团队测算日均有效投入率,作为工期换算的默认参数;对含外部依赖的任务强制填写乐观/悲观区间。
同时建议把"预计工期"和"计划完成日期"彻底拆成两个字段,并明确规定后者才是对外承诺,前者仅供内部排期。这个拆分会显著降低团队的填报心理负担。
3. 200 人以上组织:工具承载 + 分层策略
到这个规模,靠文档和培训维持纪律基本不可能,必须靠工具规则。这个阶段要做的是把口径、粒度、必填条件、拆分阈值全部配置到工作项类型里,让不合规的任务在创建时就被拦住。
对于 100 人以上、尤其是需要私有化部署和国产替代的中大型企业,PingCode 是一个值得评估的选项:它的工作项模型支持较细的字段和规则配置,能承载上面这套分层策略;同时它面向中大型组织设计,支持私有化部署,并且提供从 Jira 平滑迁移的路径,对已有大量历史任务数据的团队比较友好。
4. 项目制/交付型团队:工期要拆成"工作 + 等待"两段
如果你的团队主要做交付型项目,工期估算的重心应该放在等待时间上。因为这类项目里,真正不可控的不是自己的工作速度,而是审批、验收、第三方对接的节奏。
建议把工期字段拆成"预计工作时间"和"预计等待时间"两段分别填写,这样在项目复盘时,你能清楚看到滞后到底发生在哪一段。我见过的一个交付团队,拆分之后才发现项目平均周期里等待时间占比接近四成,而此前所有人都以为问题出在开发效率上。
七、不同情况下的取舍
1. 精度 vs 负担:不要追求所有人都填得精细
这是最核心的一组取舍。要求所有任务都填三个字段,得到的是高填写率和低质量数据;只对高风险任务要求精细化,得到的是较低填写率和可用数据。从我参与过的改造看,后者几乎总是更好的选择。
2. 预测能力 vs 团队信任:考核一旦介入,信任立刻归零
把估算准确率纳入个人考核,短期内可能让数字变好看,但会永久性地破坏团队对估算这件事的信任。一旦信任破裂,后续再想恢复数据真实性,成本远高于一开始就不引入考核。
我的建议是:估算准确率只用于团队级改进讨论,且讨论的对象是"原因分布",不是"谁估错了"。
3. 工具能力 vs 流程纪律:先有纪律,再上工具
我见过不少团队花大力气做了字段和规则配置,但团队根本不理解为什么要填,结果规则被绕过、字段被填成默认值。工具能放大纪律,但不能替代纪律。先让团队理解工期字段的用途和不会带来的后果,再去配置工具,顺序颠倒会白做。
4. 短期排期确定性 vs 长期估算能力
如果当前最紧急的是某一个项目的交付确定性,那么可以接受"临时加缓冲"这种权宜手段,但要在项目结束后把缓冲调回来,否则缓冲会沉淀成团队常态,估算逐渐失真。这两件事要分开记账,不要混为一谈。
八、常见问题
1. 预计工期到底该用小时还是天?
取决于任务粒度。半天以内的任务用小时更精确,超过一天的建议用天,因为小时精度在跨天场景下是虚假的精确。关键不是单位本身,而是同一团队在同一时期内保持一致。我见过最混乱的情况是同一个迭代里两种单位混用,统计时直接失效。
2. 团队不愿意填预计工期怎么办?
先确认是不是"填了会被追责"。绝大多数抵触情绪来自过去被工期数字问责的经历。破解方式很直接:明确承诺工期字段只用于排期参考和团队复盘,不进入任何个人评价,并且用一到两个迭代的实际行为证明这句话是真的。
3. 预计工期和故事点能不能同时用?
可以,但前提是明确分工。我的建议是故事点用于团队内部的相对工作量比较和速率计算,预计工期用于跨团队排期和资源协调。两者不要互相换算,因为相对估算到绝对时间的映射关系随人员变动而不稳定。
4. 一个任务被拆成子任务后,父任务的工期怎么算?
建议父任务的工期不参与统计,只作为汇总展示。原因是父子任务存在时间重叠,直接相加会严重高估。更稳妥的做法是用子任务的日历跨度起止时间推算父任务工期,而不是把子任务工期累加。
5. 需求变更频繁的团队还适合做工期估算吗?
适合,但方式要改。变更频繁意味着不确定性高,此时单点估算意义不大,应该用乐观/悲观区间,并把"需求变更"作为独立的偏差归因类别持续统计。这个数据积累起来之后,你可以用历史变更率去调整整个迭代的承诺量,而不是逐个任务加缓冲。
6. 实际工时该由谁回填,什么时候回填?
由执行人在任务完成时回填,而不是由管理者代填。回填时点很关键:完成后立刻填的准确度远高于事后批量补填。如果团队习惯月底统一补,那么拿到的数据基本只能算个方向。
如果团队对逐条回填抵触较大,可以退一步,只要求超过一天的任务回填,短任务走抽样。这是我见过执行力最高的一种折中方案。
7. 新人和资深工程师的工期估算差了三四倍,怎么统一?
不要强行统一。合理的做法是按人员经验分层统计偏差,让每个人和同类人比,而不是和全体比。同时,把"谁来做"作为估算时必须明确的输入,同一任务分配给不同人,工期不同是正常的,忽略这个变量反而是不专业的。
8. 预计工期要不要在迭代开始前全部填完?
不需要。迭代计划会前,只需要对本次迭代要拉入的任务完成估算即可。提前把所有待办任务都估算一遍,投入产出比很低,因为需求在进入迭代前大概率还会变。这也是我在很多团队推行"滚动估算"而非"全量估算"的原因。
九、下一步怎么做
如果你读到这里,我的建议是不要一次性改完所有东西。预计工期这件事的改造收益,主要来自口径统一和反馈回路的建立,而不是字段数量。你可以从下面三步开始,每一步都是两周之内能看到效果的。
- 打开你的项目管理系统,把"预计工期"字段的说明补全,写清单位、是否包含等待、多人任务是否并行。这一步不需要和任何人开会,但能消除后续一半以上的争论。
- 拉出过去三个月的已完成任务,算一个数:实际耗时超过预计 50% 以上的任务占比是多少。这个数字就是你当前的真实基线,比任何方法论都更有说服力。
- 在下一次迭代复盘里,只讨论这一批超预期的任务,按需求变更、外部依赖、投入率误判、工作量误判、返工五类归因,不做任何个人评价。
三到四个迭代之后,你会拿到一份属于自己的偏差分布。到那时,是否需要引入投入率参数、是否需要上乐观悲观区间、是否需要在工具里配置强制拆分规则,答案会自己浮现出来,因为你不再是在讨论"应该怎么估",而是在看"我们实际是怎么错的"。
预计工期真正的价值从来不是预测未来,而是让团队把自己的假设写下来,然后有机会证明自己错了。能持续做这件事的团队,最终都会比那些估算天赋更好但从不复盘的团队走得更远。
常见问题解答(FAQ)
1. 研发任务的预计工期,到底该填“工时”还是“自然日”?
我们团队之前一直混着填,有人写 8 小时,有人写 2 天,结果拉报表时完全对不上,排期也互相打架。我到底该怎么定这个口径,是不是必须全员统一?
建议用双层口径:底层统一填“净工时”(人·小时,只算真正专注在该任务上的时间),日历天只在排期视图里由工具换算,不做手工填写。
换算规则可以定为 1 人日 = 6 小时有效工时,而不是 8 小时,因为会议、答疑、代码评审通常要吃掉 20%~25% 的时间,所以一个 8 小时工时的任务大致占 1.3 个日历天。判断依据是:同一人并行多个任务时,日历天会被拉长但工时不变,只有工时才是可比较、可累加的量;
跨人协作时先把各自工时加总,再除以实际参与人数,才得到团队层面的日历天。口径一旦定了,就要在任务模板里把自然日字段隐藏掉,只留工时输入框。
2. 一个研发任务估到多少天就必须拆分?怎么估才不是拍脑袋?
我负责需求排期,经常收到“这个功能 5 天”“那个大概一周”这种一句话估计。拆吧嫌麻烦,不拆吧后期全成黑盒,延期了也不知道卡在哪。有没有一个可操作的拆分和估算标准?
经验阈值是 3 天,约 18 净工时,超过就必须拆。原因是超过 3 天的任务完成度可见性急剧下降,做到第 4 天你只能回答“快了”;拆到 0.5~3 天粒度后,每天都能给出完成或未完成的二元信号。
估算用三步:先按功能模块拆子任务,再对每个子任务做三点估算,取(乐观值 + 4×最可能值 + 悲观值)÷ 6 作为工时;对不熟悉的技术点用类比法,查历史同类任务的实际耗费,取中位数再上浮 20%。父任务工期等于各子任务之和,比直接拍一个总数准得多。
判断标准:如果两名工程师对同一任务的估算差一倍以上,说明拆分粒度还不够细,继续拆。
3. 预估总是不准,团队该怎么复盘?要不要统一加缓冲?
我们迭代结束一算,实际用时几乎次次超预估 30% 以上,但每次复盘都变成“下次注意”。我想把偏差变成真正可用的数据,是不是干脆给所有人的估算都乘个系数?
不要一刀切乘系数,那会把本来估得准的人也一起污染。做法是每条任务记三个数:预估工时、实际工时、偏差主因(需求变更、技术未知、依赖等待、被插单)。
跑够 3 个迭代后,按人、按任务类型分别算偏差中位数,例如“新功能”类中位数 1.25、“技术重构”类 1.6,就在估算阶段按类型乘对应系数,而不是全局乘。缓冲不要加在个人任务上,个人级缓冲会被当免费时间用掉,还容易触发帕金森定律;
把它留在迭代级,预留总容量的 15%~20% 作为统一缓冲,专门吸收插单和估算偏差,由迭代负责人统一调度,利用率明显更高。
4. 任务属性那么多字段,最少要维护哪几个,工期才不会失真?
打开任务编辑页一堆字段,类型、优先级、开始日期、截止日期、依赖、预估……团队没人愿意填全,结果工期看板上全是空值。我想知道哪几个字段是真正影响工期准确度的,其它能不能直接砍掉。
真正影响工期准确度的只有五个字段必须填:负责人(唯一,不能多人共担,否则互相等待)、净工时预估、计划开始与结束日期、前置依赖、任务类型(用于套用偏差系数)。优先级和标签可以选填,它们影响排序,不影响工期本身。
有两个常见坑:一是别把截止日期当工期用,截止日期是承诺,工期是能力评估,混用会让估算一路向承诺对齐;二是多人协作任务要拆成主责加支持者,支持者的工时另开子任务,否则并行等待时间会被算进工期。
落地检查很简单:凡是负责人为空、或者有依赖却没标依赖的任务,一周内大概率会变成悬空任务,看板上的工期累计就不可信了。
核心关键词
文章包含AI辅助创作:预计工期最佳实践:研发团队任务属性入门指南,常见问题,发布者:飞飞,转载请注明出处:https://worktile.com/solution-1/archives/356627
读者评论
文中说不要做个人级考核这点很认同。我们之前把预计工期和绩效挂钩,结果半年后回看数据,几乎所有任务都填得刚刚好,偏差反而越来越小,但实际交付越来越差,因为大家学会了按考核标准填数字,不是按判断填。后来把字段从考核里摘出来,前两个月数据难看,第三个月才开始有参考价值,这个阵痛期得提前给管理层打预防针。
关于投入率那条我有不同体会。我们试过在任务里单独加一个投入率字段,结果没人填得准,因为一个人这周投多少比例,取决于线上问题多不多,是事后才知道的。后来改成用团队级的历史有效工时反推,不去要求个人预估投入率,反而更实用。所以我觉得投入率更适合做统计口径,而不是让执行人填的字段。
区间估算那段挺有启发,但落地时有个现实问题:排期需要单点。我们给管理层看区间,他们第一反应还是问那到底是几天。后来做法是区间字段留给团队内部校准,排期时由负责人按 70% 分位给一个承诺日期,两个数字分开存。这样既不逼团队猜单点,也能对外给出明确时间。感觉比直接要求填区间更容易被组织接受。