Yes. In this business you can’t make thing on-the-go. As beautiful as it sounds, you have to plan every step of the software life-cycle.
Estimate
/ˈes.tɪ.meɪt/
“to guess or calculate the cost, size, value, etc. of something”
From Cambridge Dictionary
Estimation purely means “prediction”. The Technics are used to calculate uncertain, approximate results. Nobody can know for sure how long will it take to complete a project. But (thanks god) we can estimate. As later stages of the project are reached, the uncertainty of the estimations gets lower.

The golden cycle of software estimation
- Estimate: We have to estimate the size to be able to estimate the effort and the cost that each task will require .
- Measure: As the project advances, we have to measure the size, effort and incurred cost.
- Register: Log the measured things in the step before.
- Analyze: What happened? Was the estimation good enough? If we got a deviation of our estimate, why?
- Calibrate the method: Take results of the analysis made, keep an eye on things that will improve our estimation abilities.
- Re-estimate: Now that we have more information we will be able to make better estimates.
