Last time, I described how my team applies Flow Metrics with Scrum. Although we don’t often estimate the short-term delivery, we are sometimes asked when a big feature will be completed.
In the Story Points era, we used Story Points and calculated the average velocity of the previous 3 to 5 sprints for forecasting. In theory, averaging is the easiest way to forecast. However, in reality, unexpected situations may arise. For example, someone may call in sick, there may be a public holiday in the middle of the Sprint, or a PBI may be blocked by external parties. It is easy to fall into the trap of relying solely on averages, resulting in an unrealistic forecast. Moreover, communicating Story Points to stakeholders can be challenging due to their inherent ambiguity. In such situations, Monte Carlo Simulation comes into play.
Monte Carlo Simulation is a probabilistic approach to problem-solving that relies on randomness. It provides a list of outputs with associated probabilities. According to the Law of Large Numbers, if the sample size is large enough, random and uncontrollable situations mentioned earlier can be “neglected”. The risk and uncertainty can be evaluated based on the confidence interval.
Let’s run the Monte Carlo Simulation for the time it takes to complete 20 PBIs. Assuming you have collected a couple of months’ worth of Flow Metrics data, including daily Throughput records, you can randomly select a day and count the number of days it takes to reach a total of 20 completed PBIs. This becomes Sample #1. Repeat this process until you have calculated 1000 to 5000 samples. Plot a histogram using the sample data. With this information, you can easily inform others, within a certain confidence interval, the minimum number of days required to complete 20 PBIs.
Here comes another frequently asked question: how many PBIs can be completed in 20 days? Again, let’s refer to the daily Throughput records. Randomly select a day and count the total number of PBIs completed within the next 19 days. Repeat this process and plot a histogram using the sample data. Voila! You now have the answer.
All the data used in these calculations are based on past performance. There is no magic number or gut feeling involved in your forecast. As for those random situations like team members calling in sick during the Sprints, they have already been considered within the confidence interval. Your stakeholders should accept your forecast and understand the associated risks.
Next time, let’s embrace the power of probabilistic thinking and proudly state that there is an 80% chance of completing 20 PBIs in 30 days, based on the Monte Carlo Simulation.