The basis of estimates

The primary purpose of estimating is to make good decisions about a project in the short term, rather than to accurately predict the outcomes in the long term. Over the course of a project, so many things will change that you will not end up building what you originally estimate at the front end of the project. As a result, the purpose of estimating should be to seek to determine the likelihood of achieving the project's primary objectives within a forecasted level of resources.
The challenge with planning and estimating is to properly anticipate and prioritize the sources of uncertainty which may affect your project's total effort and time flow. These sources include the uncertainty in the development and customer's understanding of the solution itself, risks in the approach taken to produce that solution, the unknowns about the business environment within which the solution will be developed, and inaccuracies inherent in information from relevant prior efforts that may be used to develop or benchmark your estimates against.
In this context, estimates reduce project risk when they:
