You're Done When A Need Is Met

In Agile development we formulate a definition of done to establish when we can begin working on something else, and we have a driving force that pushes work in the direction of completion.

We can easily fall into the trap of creating a definition of done which relates to the activity of deploying work into a production environment. However, this is not necessarily the point at which value is added. Rather, putting features into production is only enabling the need to be met at a later point in time. If we Experiment towards a goal then we are defining our work in terms of outcomes - we're thinking about the outcome we want to achieve "the ends" Goals tell us the ends not the means over the specific "means" - therefore, we can establish a definition of done around a need being met.

Should a need not have been met by our work, this too has value as Invalidating an assumption generates learning