-
Notifications
You must be signed in to change notification settings - Fork 0
PERT Statistics
PERT (Program Evaluation and Review Technique) is a three-point estimation method that produces a weighted expected value and standard deviation from optimistic, most likely, and pessimistic estimates.
Expected = (Optimistic + 4 × Most_Likely + Pessimistic) / 6
SD = (Pessimistic - Optimistic) / 6
The "4×" weighting of the most likely value reflects that outcomes cluster around the middle more than the extremes.
Deep validation (KS goodness-of-fit test, n=84k tasks across 4 size bands) showed that actual software effort follows a log-normal distribution, not the beta distribution that traditional PERT assumes. Log-normal captures the heavy right tail — the reality that overruns can be dramatic while underruns are bounded.
The skill uses the geometric mean as the most-likely value instead of the arithmetic midpoint:
most_likely = sqrt(total_min × total_max) # geometric mean
pert_expected = (total_min + 4 × most_likely + total_max) / 6
pert_sd = (total_max - total_min) / 6
The geometric mean is always less than or equal to the arithmetic mean (when min ≠ max), which shifts the expected value slightly toward the minimum. This reflects the right-skewed nature of effort distributions — the most likely outcome is below the arithmetic midpoint, with a longer tail toward overruns.
Why this matters: The old beta assumption underestimated tail risk. For an L task estimated at 5-15 hours, the arithmetic midpoint is 10 hours, but the geometric mean is ~8.7 hours — a better reflection of where actual outcomes cluster.
See deep validation findings for the KS test results per size band.
From the standard deviation, we get confidence intervals:
| Band | Formula | Meaning |
|---|---|---|
| 68% | Expected ± 1 SD | The actual will fall in this range about 2/3 of the time |
| 95% | Expected ± 2 SD | The actual will fall in this range about 19/20 of the time |
| 99.7% | Expected ± 3 SD | Almost certainly within this range |
For a task estimated at min=2 hrs, max=8 hrs:
Geometric Mean = sqrt(2 × 8) = 4.0
Expected = (2 + 4×4.0 + 8) / 6 = 26/6 = 4.33 hrs
SD = (8 - 2) / 6 = 1.0 hr
68% band: 3.3 - 5.3 hrs
95% band: 2.3 - 6.3 hrs
Compare with the old arithmetic midpoint approach:
Midpoint = (2 + 8) / 2 = 5.0
Old Expected = (2 + 4×5.0 + 8) / 6 = 30/6 = 5.0 hrs
The log-normal weighting gives a lower expected value (4.33 vs 5.0), better reflecting where actual outcomes cluster.
| Raw Range | PERT |
|---|---|
| "2-8 hours" | "Expected ~4.3 hrs (68%: 3.3-5.3 hrs)" |
| Which number do I plan with? | Plan with 4.3, budget for 5-6 |
| Wide range feels unhelpful | Single number with explicit uncertainty |
PERT gives stakeholders a single number to plan with plus transparent uncertainty, rather than forcing them to guess which end of the range to use.
Every estimate includes:
PERT Expected: 4.3 hrs (most likely outcome)
Standard Deviation: ±1.0 hr
68% Confidence: 3.3 - 5.3 hrs
95% Confidence: 2.3 - 6.3 hrs
Committed (80%): 6.1 hrs
Getting Started
Core Concepts
- How It Works
- Task Types
- Agent Effectiveness
- Confidence Levels
- Cone of Uncertainty
- PERT Statistics
- Small Council
Reference
Accuracy
Contributors