Clients do not mind estimates being wrong. They mind being surprised. The projects that go badly are rarely the ones with an early bad estimate. They are the ones where the bad estimate was never revised.

Estimate the unknowns separately

We split every estimate into two parts: work we understand and work we do not yet understand. The first is estimated in detail. The second is given a range and an explicit discovery task attached to it.

That sounds obvious and it is rarely done, because a single number is more comfortable in a budget meeting than a range. But a range that is honest beats a number that is invented.

Re-estimate at every phase boundary

After each delivery phase we re-estimate the remainder from scratch, with the knowledge we have gained. If the number moves, we say so immediately, with the reason, and with options. Revising an estimate is not an admission of failure. Hiding a change is.

Report progress as working software

  • Percentage-complete reporting is self-assessed and therefore unreliable.
  • A working increment demonstrated against real data is not.
  • If a fortnight passes without something demonstrable, that is the signal worth investigating.
A date you cannot defend is a promise you cannot keep. We would rather have the difficult conversation in week two than in month seven.

What clients can do

Give us access to the people who do the work, not only the people who commissioned it. Decisions made without them are the single largest source of rework we encounter. And keep one decision maker available: consensus across five stakeholders is slower and produces blander software than a single accountable owner.

Written by

Aisha Karim

Director of Delivery, Oasis Hive Limited

Ask a question