Estimates, targets, and committments
Wed, Mar 7, 2018
Before taking a look at how some careful thought and a little bit of statistics can help wiht software estimation it’s worth making a distinction that confuses anyone who hasn’t given the issue much thought.
What exactly is an estimate?
‘Estimate’ has a loosely-understood standard English meaning, of course. But in the realm of software development we need to distinguish between estimates, targets, and committments.
An estimate is a prediction of how long a project will take (or how much it will cost) together with an expression of probability of meeting that prediction.
Beware an estimate expressed as a single number without an associated probability or confidence level – it is probably a target pretending to be an estimate
A target is statement of a desirable business objective
A committment is a promise to deliver certain functionality (at a certain agreed level of performance and quality) by certain date.
Esimation and planning
A committment can be more aggressive than an estimate. The business could decide it must meet a date earlier than the estimate suggests and be prepared to accept a lower level of confidence and/or to reduce the estimate by taking action - by adding more developers to a project, perhaps.
The point is that the estimate forms part of the background to planning. It does not automatically become the plan’s delivery schedule. It informs planning so that business decisions can be taken.
Next: Contingency Wars