Experience with PERT estimations
When I was starting my career as a Scrum master, I worked in a big international company that was normally using a waterfall model. As you can imagine, it was a difficult path to integrate Agile in our IT projects and my team had yet to discover what works best for it. One of the challenges that we have faced was estimation of the stories. As we were evolving with our processes, we discovered an approach that finally worked for us and I would like to share it with you in this blog post.
Have you ever heard about three-point-estimation technique? You most probably did if you have achieved a PMP or Six Sigma certifications. Actually, the idea of using this technique came to me during my PMP studies. Maybe you know it by another name “PERT”, which is an abbreviation for “Program evaluation and review technique”.
PERT is a simple but effective tool to analyze efforts that are needed to complete a story. In order to calculate the expected time, we only need to know three values:
- Best case: the best case scenario when everything goes right.
- Probable case: the most likely case when expecting normal challenges.
- Worst case: the worst case scenario when many things can go wrong.
The final expected time is calculated as a continuous distribution, using the above three values, where probable case value is weighted in calculating the mean.
Expected time = (Best case + 4*Probable case + Worst case) / 6
PERT also provides another important value: standard deviation of time. Using this value we can achieve the most accuracy for our estimation.
Standard deviation = (Worst case-best case)/6
Read below, how these formulas apply to a real-life situation!
Team member is estimating a task and comes up with these three values:
Probably, the task will be finished in 5 hours, and if nothing goes wrong then it will take 3 hours, but in the worst case scenario it can be 7 hours.
So, how long will it take?
First, let´s calculate the expected time, using PERT continuous distribution formula:
Expected time = (3h + 4*5h + 7h)/6 = 5h
Second, we need to find the standard deviation:
Standard deviation = (7h – 3h) / 6 = 40min
Now, having these two values, we can get a well-defined estimation for this task:
In order to finish this task, a team member will need 5hours +/- 40minutes, or we can also give a range of time: from 4 hours 20 minutes up to 5hours 40 minutes.
When I have approached my team and suggested to use this technique, they were skeptical at first, because it was so different from using story points, so I have suggested trying it out during several sprints. In order to motivate them more, I added that improving our estimations techniques will benefit us first, as we will be able to leave home in time at the end of the sprint.
We have never changed to using the story points again, after adopting PERT in our processes. And there were clear benefits to this approach for the team and also clients:
- Team members were feeling more responsible about achieving the estimated time, because they were in charge of providing timing and analyzing the story.
- Standard deviation gave us a needed range. It is more effective to give a client a range of time, so they do not stick to one number and then make wrong conclusions, about team over or under estimating stories.
- When standard deviation is too big this means that requirements are not clear or solution is too complicated and should be reviewed. This helped us to identify problematic stories.
- Accounting for the project became much easier with real numbers.
The only issue we had with PERT was using excel sheets to calculate and save estimations. This was taking too much time and was difficult to maintain, as we needed to input everything in Jira. After we began using PERT calculator for Atlassian Jira Cloud, estimating with PERT became flawless. You can find more information about it here. This add-on will erase this only obstacle of using PERT and will make PERT integration less painful. PERT Calculator addon has 30 days trial, but you will definitely like to continue using it.
PERT is a well-known and widely used technique for estimations, it has proven its effectiveness in a range of projects in my company. I recommend giving it a chance to all project managers and Scrum masters. Only continuously improving our processes by applying these small changes, we can achieve significant results.