Sometimes you need estimations

Sometime is when you have two different options and need to find out which of them to choose from. You may even have a choice of doing something or not. Unless your resources in form of time and/or money are unlimited, you have to prioritize between options.

The other occasion when you need to do estimations are when you need to estimate are when the consequences for lacking resources are high.

Should I buy a brand new red Tesla, a more traditional black BMW or keep my old trusted Volkswagen a few more years? The costs for purchase, yearly fuel cost, residual value and maintenance cost come into play when making a decision, giving the constraints of my budget and available parking space. This is a rather simple calculation based few unknown facts where I could use the current figures for mileage, fuel and others as a basis.

What if I would like to build a new house then? Knowing the price of land, size of house and level of standard would help a construction company to make a reasonable good offer. But when your aspiration is Grand Designs and you just bought a castle for a Euro, then there is another challenge. Without drawings of the building and without knowing the state of the property could this be a difficult endeavour. Time to call for an architect?

Would you like to do scuba diving in a cave without knowing you normal air-consumption at that depth? If you say yes, I rather prefer not to have you as a buddy.

What can we learn from these different four examples?

A simple decision with few unknowns makes the task simple. Doing a more complex project, but in the same way as before is not that complicated. But when we don't know the current state and don't can estimate the effort due to lack of information do we have an issue.

That leads us to the other question? What level of estimations is then good enough?

Project management best practice is to break down into task of less than 100 hours before starting detailed design. For budget purpose at an earlier stage would I recommend something between 500 to 1000 hours for each activity in the timeline to have an initial estimate with a not to large err on either side.

The most important advice is to document how you came to that conclusion so you can explain why and improve you estimates later on when you have good knowledge

Do you think you need estimates in you software projects?