本文由 AI 分析生成
建立時間: 2026-03-28 來源: https://jacobian.org/2021/may/25/my-estimation-technique/
Summary
Jacob Kaplan-Moss’s estimation framework: break work into small/medium/large/XL tasks, estimate both expected time AND uncertainty separately, calculate best-case and worst-case ranges, and track accuracy over time to improve. The critical characteristic: every estimate must capture both time AND uncertainty.
Jacob Kaplan-Moss 的估算框架:將工作分解為小/中/大/超大任務,分別估算預期時間和不確定性,計算最佳情況和最壞情況範圍,並隨時間追蹤準確性以改進。關鍵特徵:每個估算都必須同時捕捉時間和不確定性。
Key Points
- Critical property: estimate = time + uncertainty; “10 days” implies false certainty; “8-14 days” communicates actual risk
- Task sizes: small (1 day), medium (3 days), large (1 week/5 days), XL (2 weeks/10 days)
- Use real wall-clock time, not idealized “programmer days”; 1 day = ~4 hours of actual coding in a normal workday
- Uncertainty tiers: low (well-understood work) → medium → high → very high (exploratory/unknown)
- Best-case = sum of task times; worst-case = apply uncertainty multiplier (e.g., high uncertainty = 2x)
- Refine by breaking large tasks into smaller ones if they’re too uncertain
- Track accuracy over time: compare estimates to actuals; adjust your calibration accordingly
Insights
The time + uncertainty combination is the key insight that makes this more useful than most estimation approaches. A range communicates actual project risk to stakeholders, who can then make informed decisions (accept risk, add buffer, descope). The “real wall-clock time” requirement is a common failure mode: estimates in “ideal programming hours” are systematically over-optimistic because they ignore meetings, interruptions, and context-switching. The tracking step is what converts estimation from a ritual into a skill that improves.
Connections
Raw Excerpt
My system has one critical characteristic that I believe any effective estimation technique should have: it captures both time and uncertainty. An estimate that only includes time implies a high degree of certainty — the range communicates real risk to stakeholders.