Skip to content

andrewdieken/pert_estimator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pert Estimator

PERT estimation tool

Overview

NOTE: The descriptions of the numbers and calculations provided in this section (and frankly the idea for this project) were taken from The Clean Coder by Robert C. Martin

PERT is an estimating technique which uses three numbers to compute a final estimation (expected duration) and a standard deviation. The three numbers you provide are

  • O: Optimistic Estimate. This number is wildly optimistic. You could only get the task done this quickly if absolutely everything went right. Indeed, in order for the math to work this number should have much less than a 1% change of occurrence.
  • N: Nominal Estimate. This is the estimate with the greatest chance of success.
  • P: Pessimistic Estimate. Once again this is wildly pessimistic. It should include everything except hurricanes, nuclear war, stray black holes, and other catastrophes. Again, the math only works if this number has much less than a 1% change of success.

Calculations

Expected Duration:

(O + 4N + P) / 6

This gives you the final estimation for the task given the 3 estimates provided.

Standard Deviation:

(P - O) / 6

This gives you a measure of how uncertain the expected duration is. When this number is large, the uncertainty is large too.

Usage

From the command line:

$ pert_estimator
Task name: test
Optimistic estimate: .5
Nominal estimate: 2
Pessimistic estimate: 6
Add task? (Y/N): n

+------+------------+---------+-------------+-------------------+--------------------+
| Task | Optimistic | Nominal | Pessimistic | Expected Duration | Standard Deviation |
+------+------------+---------+-------------+-------------------+--------------------+
| test |    0.5     |    2    |      6      |        2.4        |        0.9         |
+------+------------+---------+-------------+-------------------+--------------------+