Last night I finished my taxes.  I tweeted I was done.  Not developer done, but done done.  Lynn McKee pointed out that even my impression of ‘done’ was open to interpretation.  Does ‘done’ mean finished with the calculations?  Filed?  Received refund? Being audited? Filed mine and my wifes?

That reminded me of a recent sprint planning session our team had.  Our product owner considered customer value and done as being able to clearly show separation of presentation and data layers in a new service we’re developing.  I considered customer value being showing the user of the new service a simple interpretation of the data being shown through the service.  Very different perspectives.

For me ‘done’ is when the customer gets something valuable.  For our PO, ‘done’ is when he can be satisfied with the design of the service.  The team, done is when all the yellow stickies are moved to ‘done’.

The point is, my tax example is simple and very specific.  Just before I wrote this post I told my wife I finished both returns, filed mine since I get a refund and will file her’s at the deadline since she has to pay this year (booooooo!….for her!).  Before that, I have no idea what she thought ‘done’ was.

Software is much more complex than that.  One way of handling this is to periodically align the team during the sprint.  Oddly enough I did that yesterday.  Our standup felt kinda ‘status-y’ and there really wasn’t much talk about the actual work.  I pushed the team and asked them to say what they thought we agreed to delivering.  I asked the PO the same thing.

I was pleased to hear it was the same as what I thought so I wrote it down and stuck it on our release wall.  Might be tough to see in the picture, the green card on the left shows the sprint number and what our definition of ‘done’ is from the customer’s perspective since that’s what our sales and marketing team would find valuable.  They could care less if the service is de-coupled.

When you talk about ‘done’, be specific.  Scrum talks about delivering ‘business value’ and ‘potentially shippable’ software which is just a guideline.  Be specific and you’ll avoid a whole whack of ugle “hey, that’s not what I thought we were gunna get!” conversations later.