Previously, I pointed out that an engineer's definition of done should extend at least as far as their software being immediately deployable. That's a step in the right direction.
I think another step is to adopt this simple threshold of done:
Customers are deriving value from this behavior/story/feature.You can't know you're done without attending to everything that needs to be done:
- Working software.
- Deployed in production.
- Released to customers.
- Validated with feedback.
Making the standard of done customers actually getting value measures all the things that matter without any risk of measuring something that doesn't.
If it's not self-evident, that's because customers actually getting value is the whole point of what we do...