Published on April 25, 2017
Notice: This post is more than a year old. Some of the content might be outdated.

Stopping development divination - replacing task estimates

We’re not psychic, so why do we bother predicting the future?

Developers still suffer task estimates, despite knowing they’re just fudging numbers. Here’s how we escaped the crystal balls and horoscopes.

If it’s broken, then fix it

There’s little in the world of software development more frustrating than estimating tasks. It’s a constant tug of war between developers and management. The result is an arbitrary number, a point in time that wasn’t there before, that will make you feel miserable for crossing it. Yay!

It’s a blatantly broken system, so we fixed it. With some small tweaks, we ended up with a far more reliable and comfortable way of working. Rather than declaring arbitrary targets to aim for, we treat our time like a resource, because it is.

Our motto is:

“Give me a timebox and I will fill it with value.”

We dropped estimating completely

After an easy goodbye to estimating, we picked up timeboxing instead. A timebox is the time that the task owner is willing to have spent on any non-trivial task, preferably limited to a single day. Task owners are those to whom the result of the task is delivered. By changing the number’s origin, it immediately becomes far less arbitrary.

Working the task is a simple process:

Spend an hour hacking away at it, you’ll end up with a clearer picture of the work required and the soundness of your timebox. Then continuously manage expectations with your task owner while working the task. Notify them when you trip over an unexpected problem, or when you’re progressing surprisingly fast. This allows them to tweak their task expectations and requirements. In the end, they should never be surprised by the result.

Keep in mind the three rules of timeboxing:

  • Always deliver something of value
  • Never exceed your timebox
  • Task owners must know exactly what they’ll get

The resulting process is far less arcane and deeply includes the task owners. It’s proven to be a great way to involve our customers in what we do, and a comfortable way for developers to get work done.

Interested in how we mange our issues? Read “Milestones and Office hours

Agree? Disagree? Do you have questions or good advice? Please use the comment box below!

Author: Thierry Lacour

Read more about Thierry


Related Stories

Related Stories

×

Pipeline - The Game that Delivers!

Pipeline - The Game that Delivers!

A new card game to design Continuous Delivery pipelines

Winning with DevOps and Reducing Your Risk of a Heart Attack

Winning with DevOps and Reducing Your Risk of a Heart Attack

Clinical Trials and Software Process

Artifactory Retention Policies

Artifactory Retention Policies

How to set up automatic Artifactory repository cleaning