Learn About the Cone of Uncertainty Framework

I read about the Cone of Uncertainty when I was studying to get the Product Owner certification. I had never heard about this framework before, so of course, I decided to learn more about it and share here.
The basic concept of the Cone of Uncertainty was developed for engineering and construction in the chemical industry by the founders of the AACE International (American Association of Cost Engineers) according to Wikipedia.
“The primary purpose of software estimation is not to predict a project’s outcome; it is to determine whether a project’s targets are realistic enough to allow the project to be controlled to meet them” — Steve McConnell.
The name Cone of Uncertainty was first used by Steve McConnell to describe the concept in his Software Project Survival Guide when he proposed it as a standard estimate type classification system with uncertainty ranges and presented it as a cone illustration. In software, Barry Boehm referred to the concept as the Funnel Curve.
How can I use it?
The Cone of Uncertainty can be used in software development where the environment changes extremely fast, including the technologies available and business objectives. It’s fair to say that the engineering costs are directly proportional to the amount of uncertainties in software development.
Project management differs from software development where better predictability and overall understanding of the risks is typically possible as is the ability to drastically reduce the project risks. In software development, however, the unknowns and external pressures make the environment extremely volatile and unpredictable.
In software development especially the goal is always to work towards reducing the uncertainties and minimizing the risks. A way to do that is to include research in all phases and also to remove sources of variability from the product or project as much as possible.
One way to accomplish that is to reduce the number of decisions regarding scope and resources. As we know, Scrum is a framework that helps with that. Alternatively, the Lean Startup approach can be applied while developing software.
The Cone of Uncertainty represents the evolution of the amount of best case uncertainties during a project. Since you don’t have a lot of information about the project in its initial phases, especially if the project is related to a new product, the estimates will include a lot of uncertainties, and the risks will be high. As more work is done, the team will have more information about the product, and the uncertainties will be decreasing.
How to estimate
Predicting success is extremely difficult. Many factors can influence your estimate and contribute to the project uncertainties. While developing the estimate, a good way to start is to base your estimate on another similar project.
A way to introduce the Cone of Uncertainty is to include a range of uncertainties in your estimate. The idea is that the uncertainties and variabilities will decrease as the project develops since the project beginning is when the number of uncertainties is highest.
There are more uncertainties in the beginning of a project because a lot of specific project details are unknown and will be defined as the product is developed. Using the Cone of Uncertainty will help you and the team understand the range of unpredictability and also to limit commitments in the beginning to avoid uncertainties.
The estimations should always be done with this in mind and supported by previous projects’ historical information to predict the most likely scenario in a range format as shown by the Cone of Uncertainty.
The amount of variations will fluctuate depending on the project phase and the project type. Keep in mind that the number of uncertainties is highest at the project beginning, and as the project progresses, the uncertainties will likely decrease in most cases.
Early commitments in the project will account for more uncertainties and risks. The ability to manage the expectations and make sure your stakeholders have a realistic understanding of the overall project risks and assumptions can help you work better with the team and gain their trust.
Steve McConnell says the uncertainty factor in the beginning of the project is equal to 4 (for the high and low). Commitments made too early can result in inefficiencies and lack of trust and reduce the ability to manage a project successfully. Keep that in mind!
The Role of Agile
Agile definitely helps develop the estimate and also forces the team to constantly estimate as more is learned, which is an amazing thing. As more is learned about the product and the market, it gets easier to estimate. Agile and the Cone of Uncertainty are a powerful combination since Agile helps to empower teams to deliver on an outcome; however, it’s not the answer to all your team’s questions.
The way the market works nowadays while developing software, we should always develop a strategy to test the hypothesis and drive innovation as much as we can. Agile definitely helps us to do a better job with estimates in general.
The main difference with Agile is that it allows multiple iterations. The team might feel more comfortable estimating and planning the iterations in small batches while more is learned about the product and market.
When we use the Agile approach, we accelerate our ability to learn with constant iterations and deployment so the team can validate the learnings more quickly and learn more about the market, which can reduce the uncertainties.
How to Apply
The Cone of Uncertainty framework should be part of project risk management and all known and unknown risks. The goal of the framework is to help you better understand the project risks by preparing for uncertainties.
The framework role in the estimation process is to determine the most likely course and also calculate the high-low range of probabilities. This can be done using formulas and based on previous projects’ estimates using empiricism.
The framework is used in different types of products and projects because it’s an effective way to show the risks of any investment. The Cone of Uncertainty will show the amount of risk by demonstrating the degree of certainty through the product life cycle in a figure of a funnel.
Empiricism is a great ally of the framework since it’s so much easier to measure something based on previous, similar experiences. The cone can help you determine if the project is feasible and possible. The hope is that over time the uncertainties will decrease and accounting for that will help your team develop better estimates.
Advantages of using the Cone of Uncertainty:
- Decreases ambiguity.
- Determines most likely estimate.
- Calculates high and low range of probabilities.
- Helps determine how much risk the team can afford and incremental funding.
- Reinforces the importance of additional research.
Estimation tips:
- Estimates are uncertain in the beginning of the project, they’re vague but hopefully based on an empirical process.
- Estimates need to be reviewed on a regular basis as more is known about the project.
- Assumptions should be transparent and double checked on a daily basis.
- Estimates should account for uncertainties and be visible in the project plans and Kanban boards.
Uncertainties facts:
- It’s difficult to understand the market and what it wants.
- The market is constantly changing.
- Competition will always be there.
Have fun! ❤
Additional Resources
👏🏾👏🏿Clap once. 👏🏼👏🏾 Clap twice. 👏👏🏻👏🏽 Clap however many times you want.
Find out more at the PM101 Website, Instagram and Twitter. If you’re looking for PM goodies, check out the Online store.
📩 Hey you, join the PM101 email list!
We send emails at most twice a month. Click here to subscribe!
Disclosure: This post might contain affiliate links and first-party promotion. If you click on these links and buy a product, I may get a small commission at no extra cost to you.