Automated Project Forecasting With Jira Data
By: Michael Boumansour
Tags: Agile, Estimation, Forecasting, Monte Carlo, Lean

MC Forecasting Tab

I have just released LAD v1.2 that includes Monte Carlo Simulation Forecasting. Put simply Monte Carlo simulation is a technique that randomly draws values from a historical data set of events to simulate the likelihood of a similar future event occurring. The basic process is:

Randomly select data from your historical data set and run it through your model to calculate a result Repeat step 1 many times(hundreds to thousands) capturing each of the results Determine how many times each unique result occurred The percentage a given unique result occurred is the individual likelihood that result will occur in the future The sum of the likelihoods whose values are equal to or greater than a given result is the likelihood you will achieve that result in the future

The strength of Monte Carlo based forecasting is it allows you to quickly create probabilistic forecasts with vary little required information about the project you are attempting to forecast as well as run what-if analysis against the forecasts.

The LAD Monte Carlo forecasting tool allows you to forecast the completion of any given number of issues of any issue type using 1 of 4 different models:

Delivery Time

Status Time

Throughput

Velocity

The data used by the various models is the same data used by the metrics so there is no need to manually enter data. The automated forecasting virtually eliminates the need for your team to do a traditional bottom-up deterministic(single delivery date) estimate where you need to identify and elaborate on all the stories/requirements ahead of time and have your team estimate them individually based on effort.

In addition to eliminating the time, cost, and agony of traditional estimates the simulation will produce a forecast that is far more realistic than traditional estimates. Traditional estimation is based on the effort required to build the required solution. Effort only accounts for a modest portion of the overall time to deliver the software so even if the team is able to very accurately estimate the effort of all the stories the chances of the estimate being close to the actual time required to deliver are not very good.

Compound that with the law of probability stating that the total probability of a set of independent events occurring is the product of those event’s individual probability, the chances of hitting a single point estimate of even a handful of stories are close to zero. The forecast simulation renders a list of potential delivery dates based on their probability so you can have more objective planning discussions with your stakeholders. By having the probabilities of different delivery dates the ownership of how much risk to take on is shifted from the team to the stakeholders where it really belongs.

Finally the simulation will also allow you to do what-if analysis based on changes in team size and/or improvement in the metric the model is using. For instance, you could have a scenario where the team improved their average delivery time by 10% and see what the improvement is to the forecasted delivery date as well as cost of delay. This type of scenario planning is impossible to do with any degree of accuracy using traditional bottom-up estimation techniques. The simulations normally run in well under one minute allowing you to consider many different scenarios with little effort, expense, risk, or disruption of your team.

Version 1.2 of the LAD along with LAD Guide containing full documentation of the Monte Carlo Forecasting tool have been posted. Please do not hesitate to post any questions or comments you may have. Enjoy!