@@ -0,0 +1,69 @@
|
||||
# Estimation
|
||||
|
||||
## Why Estimates Fail
|
||||
|
||||
| Cause | Mitigation |
|
||||
|-------|------------|
|
||||
| Optimism bias | Use historical data, not gut |
|
||||
| Missing scope | List "obvious" tasks explicitly |
|
||||
| Integration blindness | Add 20-30% for glue code |
|
||||
| Unknown unknowns | Add buffer based on novelty |
|
||||
| Interruptions | Assume 60% focused time |
|
||||
|
||||
## Estimation Techniques
|
||||
|
||||
### Three-Point Estimation
|
||||
```
|
||||
Expected = (Optimistic + 4xMostLikely + Pessimistic) / 6
|
||||
```
|
||||
|
||||
### Relative Sizing
|
||||
Compare to known references:
|
||||
- "This is about twice as complex as Feature X"
|
||||
- Use Fibonacci (1, 2, 3, 5, 8, 13) to reflect uncertainty
|
||||
|
||||
### Task Decomposition
|
||||
1. Break into tasks <=4 hours
|
||||
2. If can't decompose, spike first
|
||||
3. Sum tasks + 20% integration buffer
|
||||
|
||||
## Effort Multipliers
|
||||
|
||||
| Factor | Multiplier |
|
||||
|--------|------------|
|
||||
| New technology | 1.5-2x |
|
||||
| Unclear requirements | 1.3-1.5x |
|
||||
| External dependencies (waiting on others) | 1.2-1.5x |
|
||||
| Legacy/undocumented code | 1.3-2x |
|
||||
| Production deployment | 1.2x |
|
||||
| First time doing X | 2-3x |
|
||||
| Context switching (other priorities) | 1.3x |
|
||||
| Yak shaving risk (unknown unknowns) | 1.5x |
|
||||
|
||||
## Hidden Work Checklist
|
||||
|
||||
Always include time for:
|
||||
- [ ] Code review (20% of dev time)
|
||||
- [ ] Testing (30-50% of dev time)
|
||||
- [ ] Documentation (10% of dev time)
|
||||
- [ ] Deployment/config (varies)
|
||||
- [ ] Bug fixes from testing (20% buffer)
|
||||
- [ ] Interruptions / competing priorities
|
||||
|
||||
## When to Re-Estimate
|
||||
|
||||
Re-estimate when:
|
||||
- Scope changes materially
|
||||
- Major unknown becomes known
|
||||
- Actual progress diverges >30% from estimate
|
||||
|
||||
## Communicating Estimates
|
||||
|
||||
**Good:** "1-2 weeks, confidence 70%-main risk is the third-party API integration"
|
||||
|
||||
**Bad:** "About 2 weeks"
|
||||
|
||||
Always include:
|
||||
1. Range, not point estimate
|
||||
2. Confidence level
|
||||
3. Key assumptions/risks
|
||||
Reference in New Issue
Block a user