Intelligent forecast
Last updated
Last updated
Socratic's intelligent forecast uses machine learning—specifically, Monte Carlo simulation—to predict completion dates for any body of work.
Monte Carlo is a statistical technique used to model complex systems across a wide range of fields—traffic control, stock predictions, and nuclear reactors, to name a few. The idea is to use the law of large numbers to predict how a complex system might behave. Monte Carlo runs scenarios using our best empirical data and knowledge of the "rules of physics" for the system at hand. By collecting results from enough randomized scenarios, we can get an idea not only of what is most likely to occur, but also visualize the range of possible outcomes.
The basic steps and inputs are as follows:
Set up N
issues with random (but representative) durations.
Set up a pool of M
people to complete the issues.
Assign the N
issues to the M
people.
Determine the completion dates for each issue.
Construct a burndown chart from these dates.
Repeat steps 1-5 Q
times.
In creating a body of work, you provide the number of issues (N
) and the people that will work those issues (M
); Socratic does the rest. This includes randomly-sampled issue durations based on your organization’s historical actuals, which is needed for the first step. In other words, the data is entirely personalized to your teams.
We’ve set the number of model runs (Q
) to 1,000. The more you do, the more statistical significance you gain, but it also starts to absorb some serious compute cycles. In our own analysis, a thousand runs strikes a nice balance between system responsiveness and forecast reliability. Simply put, this model reveals all of the possible durations if the same body of work was delivered by the same people, a thousand times.
With Monte Carlo simulation, we’re able to absorb a number of complexities that impact delivery and that are otherwise invisible to the naked eye. These include nuances like:
The rate at which issues fall idle;
The number and relationship of blocked issues;
The amount of rework involved before an issue is completed;
The amount of inevitable scope creep in a project;
The impact of holidays on people’s availability;
The participation of people with specialized skills.
For active plans and epics, we produce a timeline graph that shows two things:
A completed issues line, rising to meet a scope line: that is, a burn-up;
A forecast for time to finish, based on your historical actuals. (Monte Carlo actually delivers a likely date range, with outliers on the short and long side of the forecast, and a midpoint date. The midpoint date is what we use for display.)