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?

There are many pitfalls in software development

There are many pitfalls in software development

‘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.

Estimate

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

Target

A target is statement of a desirable business objective

Committment

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

Estimation

A series of short articles about software estimation. Here's a list of all posts in Estimation. The first in this collection is Estimation: Introduction

comments powered by Disqus