The “Cone of Uncertainty” is a model for understanding estimation uncertainty in software projects. Estimates inherently contain high uncertainty early in projects. Uncertainty can be reduced once the project is underway, but project leadership must take specific steps to cause this reduction. Organizations should avoid making commitments until the Cone has been reduced because until then commitments will not be supportable.
This white paper also describes how the Cone applies to Agile and iterative development.