CONTROL UNCERTAINTY WITH THE MONTE-CARLO SIMULATION
“Days/Man (d/h)”; “Story Point”; “Function points”; “No estimate”, … in the era of uncertainty and increasing complexity in value creation, traditional/agile methods of estimation and planning can often prove insufficient.
It is in this context that Monte Carlo simulation emerges as an alternative, offering a new perspective on how to navigate the uncertainty of value creation.
This technique, borrowed from the world of physics and finance, proves to be an invaluable tool for Agile managers seeking to anticipate and plan with precision.
By transforming complex data into clear projections, Monte Carlo Simulation allows organizations to quantify the probabilities of achieving their goals, providing a clearer vision of the path forward.
Let’s dive together into the mysteries of Monte-Carlo simulation and discover how it revolutionizes Agile management by transforming uncertainty into a winning strategy.
The Monte Carlo Simulation – Definition
Monte Carlo simulation is a mathematical and computational technique used to model and understand uncertainty and variability in complex systems.
This method, named after the famous gambling destination, is based on the idea that random phenomena can be used to model and solve various problems, particularly those that are too complex for deterministic analyses.
In a Monte Carlo simulation, a large number of scenarios are generated using random inputs. These scenarios are then evaluated to obtain a distribution of possible outcomes. By analyzing this distribution, probabilities and trends can be inferred, providing a deeper understanding of the issue being studied.
This technique is widely used in various fields, such as finance, engineering, operations research, physics, and even in the social sciences. In each of these areas, Monte Carlo simulation helps assess the impact of uncertainty and make informed decisions in situations where accurate data may be difficult to obtain and systems are too complex to model exactly. In summary, Monte Carlo simulation is a powerful tool for modeling reality, exploring hypothetical scenarios and making decisions based on probability and statistics in a context of uncertainty.
Monte-Carlo simulation, the unloved of Agile indicators
Monte Carlo simulation is a technique increasingly used in the world of Lean Management but still very (too) little used in the world of agility, particularly within companies that have launched a large-scale agile transformation. We can even go further by affirming, from experience, that Lean-Agile indicators are the poor relation of Agile transformations at scale, either due to lack of expertise in the field, lack of reliable tool or simply lack of political will (but this will be the subject of a future article).
The Monte-Carlo simulation makes it possible in particular to launch simulations on the probability of delivery of a certain number of requests on a given date, as well as on the number of requests that can be achieved over a given period.
Since the Monte Carlo simulation is based on a history, it is essential for an organization to ensure that its data history is clean and the development value creation process implemented is operational and respected.
The Monte Carlo simulation with Wiveez
Wiveez provides organizations with the power of Monte Carlo simulation, on How many (how many requests will be delivered over a given period) and When (On what date will a certain number of requests be delivered).
The Monte-Carlo simulation is implemented on the backlog of the various dashboards offered by Wiveez – Product; Feature; Label ; Version (Increment).
It is also available via a dedicated section, allowing you to launch different simulations.
Monte Carlo Simulation – WHEN
Monte Carlo simulation uses random samples and statistics to simulate a variety of possible scenarios and their outcomes.
To estimate when requests will be completed, the tool starts by analyzing historical project data, such as duration spent on similar tasks and previous delivery times. Based on this data, the simulation generates thousands, if not millions, of hypothetical scenarios for the current project.
Each scenario is a possible sequence of events, with its own deadlines and constraints, which takes into account the variability and unforeseen events that may arise.
The simulation then calculates the probability of each scenario and determines the likely realization dates. This helps produce a range of possible dates with associated probabilities, giving managers a more nuanced understanding of when requests might be realized.
Thus, instead of relying on a simple linear estimate or an average, the Monte Carlo simulation offers a richer and more realistic perspective, taking into account the uncertainty inherent in any project.
This approach allows managers to better plan, prepare risk mitigation strategies, and have more precise expectations regarding delivery times.
Wiveez offers the possibility of refining these simulation scenarios by offering different filters:
- Version(s) – Allows you to base yourself on the history of a particular version
- Label(s) – Allows you to refine the simulation on data associated with a particular label
- Feature(s) – Allows you to limit the simulation to requests associated with a particular Feature, in order to simulate the number of requests that can be made on this Feature, for a given time frame
- Period – Allows you to define the historical period on which the Monte Carlo simulation will be based. Wiveez offers 3 periods (1 month, 3 months, 6 months). Beyond 6 months of history, the measurement may lose reliability, in particular due to the variability inherent in any development activity (turnover, reorganization, process review, etc.)
- Request Type – Wiveez allows you to refine your simulation to one or more specific request types. For example, you might want to simulate the time required to process a certain number of anomalies.
The simulation will take into account a departure date and a number of requests to process.
Wiveez allows you to simulate the probability of delivery on a given date for a certain number of requests, at 50%, 75%, 85% and 95% confidence.
Monte Carlo Simulation – HOW MANY
Using Monte Carlo simulation to estimate the number of requests achievable over a given time frame follows a similar principle, but with a slightly different focus.
In this case, Monte Carlo simulation is used to predict how many requests or tasks can be completed within a specific time frame, taking into account the variations and uncertainties inherent in the work process.
The process begins by analyzing historical data, such as the average time taken to complete similar tasks and the variations observed in these durations.
Then, the simulation generates several possible scenarios using random sampling. Each scenario simulates the progress of the project over the specified period, incorporating factors such as variability in task durations, dependencies between tasks, available resources, and other potential constraints.
For each scenario, the total number of completed requests or tasks is recorded.
After simulating thousands of scenarios, the simulation provides a distribution of possible outcomes.
This distribution can be analyzed to determine the probability of achieving different productivity levels. For example, it can indicate the probability of completing 50, 70, or 100 requests within the time limit.
This allows project managers to understand not only the number of requests that are most likely to be completed, but also to assess the risks associated with different productivity goals.
By having an overview of likely outcomes and their variability, they can better plan, allocate resources, and manage stakeholder expectations.
Wiveez offers the possibility of refining these simulation scenarios by offering different filters:
- Version(s) – Allows you to base yourself on the history of a particular version
- Label(s) – Allows you to refine the simulation on data associated with a particular label
- Feature(s) – Allows you to limit the simulation to requests associated with a particular Feature, in order to simulate the number of requests that can be made on this Feature, for a given time frame
- Period – Allows you to define the historical period on which the Monte-Carlo simulation will be based. Wiveez offers 3 periods (1 month, 3 months, 6 months). Beyond 6 months of history, the measurement may lose reliability, in particular due to the variability inherent in any development activity (turnover, reorganization, process review, etc.)
- Request Type – Wiveez allows you to refine your simulation to one or more specific request types. For example, you might want to simulate the number of anomalies that can be processed over a period of time, in order to implement your technical debt reduction strategy.
The simulation is done over a period, defined by the user. In order to maintain consistency in the simulation, the simulation projection period cannot be greater than the historical period used.
Wiveez allows you to simulate the probability of delivering a certain number of requests over a given period at 50%, 75%, 85% and 95% confidence.
Conclusion
In the dynamic and often unpredictable world of value creation from Lean-Agile practices, Monte Carlo simulation presents itself as a lifeline in the face of the ocean of uncertainty.
This method, with its approach based on probability and simulation, offers light in the fog of estimates and planning.
It allows Agile teams to transform uncertainty, often perceived as an obstacle, into a strategic asset.
By simulating a wide range of possible scenarios and assessing their potential impacts, Monte Carlo simulation helps teams predict and prepare for the multiple paths a project could take.
This preparation is not just about prediction, but also about flexibility and adaptability – essential qualities in any Agile methodology.
Thus, by integrating Monte Carlo simulation into their toolbox, managers and Agile teams can navigate more confidently through the challenges of estimations and planning.
They can establish better-informed strategies, allocate resources more efficiently, and ultimately deliver results that better meet stakeholder expectations.
Ultimately, Monte Carlo simulation is not just a project management tool; it is a catalyst for more agile, resilient and successful management.
But this can only be done with a clear and rigorous development value chain management process and optimal data quality. On this subject of data quality, I invite you to read my article “Do you want to measure? Start by tidying your room! “.