Stay in Control

Why we all suck at estimates

All right, let’s face it – we all suck at estimates.

It is human nature to be overly optimistic. Like the last time I thought it would only take me couple hours to do taxes, or all the times I get to drop my kid off to the day care and am constantly being 10 mins late (why do I even keep believing I can feed him a breakfast in under 15 mins?!!). Well, we’ve all been there – one time you are late 15 mins to the meeting, next time you make corrections for traffic on your way – and arrive 15 mins earlier?

When it comes to software engineering, the things become even worse. Not only do we deal with natural optimism, but we work with much more unpredictable substance than just a traffic.

However, let’s stop writing everything off on our optimism. This is something we have all accepted and moved on. Let’s see what is next.

There are some well-known productivity issues to be addressed:

  • Minimize waste
  • Stay focused

Nothing new here. So, let me throw another one:

Know where you stand

Seriously, risk management was never cancelled. Yes, we do it Scrum way, where they are called impediments. But we never said we don’t do it at all. I sense that the 3rd question got omitted from our daily scrums, namely “what is holding up?” part. The impediments discovered needs to be carefully tracked. I am not opening up a discussion on risk mitigation strategies quite yet. Let us first start tracking risks and knowing where we stand first.

Let me share a secret with you: there is a special ticket type in your project’s repo for tracking risks. Well, it is called “risk”. And its purpose is (surprise-surprise) to aggregate risks. The risks are included into burndown charts, you can write the time off on risks, etc. etc. So again, just let’s keep record of all risks discovered during planning and daily scrums.

Not having this info does not allow for any analysis, which in itself is even worse than just sucking at estimating. Let’s change it, shall we?

Leave a Reply