The Definition of Done, Done-Done and Really Done

Gil Zilberfeld talks about the definition of done, and its meaning to us, how it affects visibility and when are we really done.In a short post, John Cutler reminds us that the work is never done. Customers change, their needs change, we have new ideas, and that’s why we show up for work everyday.

His final suggestion is not to be fooled by Jira’s “Done” status.

I can’t believe I’m actually defending Jira here, but Done (in Jira or outside), is really meaningful. It is so important that we even have variants for it, like “Done with bugs”. Or “Dev done”.

Regardless of what the definition of done in your team really is, “Done” means we can do the following:

  • We celebrate completion (We love that! Our bosses love that!)
  • We clear our minds of the actual work, problem and issues we’ve worked on.
  • We focus on the next item, feature and task
  • We match expectations with other people, who now know that we’ve moved on.

Done is so precious, in any of its forms, because it’s a signal, like a traffic light. We’re looking at the flashing lights, waiting for the light to change. We know it’s coming, and we know what’s coming right after the event.

It’s no surprise that we like moving those post-its (or changing the status in Jira). It’s not the definition of Done we’re celebrating, but the meaning of moving forward.

We’re making progress.

Visibility of done-ness

The problem with “our” Definition of Done starts when it’s not completely as Done as we, and others, expect it to be.

When “Done” means “Dev Done”, well, the work is not really done.

When “Done” is “Test Done”, but with a couple of bugs open, it’s still not really done.

Even when Done means it’s “shippable”, or even “shipped”, feedback needs to come back, and then work may resume, as John suggested.

We have moved forward, yet work has returned to haunt us like a bad horror movie sequel.

The Definition of Done’s hidden meaning

Done, much like life itself, is a matter of perspective.

  • At the individual level, “Done” is when I passed my deliverable to someone else.
  • At the team level, “Done” is when the team completes their work and passes their package to the Ops team, or (hopefully deployed automatically).
  • At the product level, “Done” is when we get feedback from the customer that finds the product/feature/bug fix valuable.
  • And even then, few months later, what was Done maybe completely overturned.

We may never be “really” Done, and Jira may indeed fool us. But as long as we understand that “Done” is temporary, and we can look at the board and ask about it’s done-ness, it is still useful.

At the end of the day, the work is “Done” when we ask:

What’s next?


Leave a Reply

%d bloggers like this: