Definitions of Done Every team’s definition of done will be different Before a single line of code is written As applicable to every story as to product delivery Every team member participates developers, testers, product managers What’s critical: the team agrees on what it means to be “done” with a feature the team buys in the team owns “done” the team holds itself accountable Post where it’s visible when you discuss your work Managing the Unmanageable: Rules, Tools, and Insights for Managing Software People and Teams, Mickey W. Mantle, Ron Lichty
“Defn of Done”: criteria to consider: What needs to be true for every story? Usability Performance Scalability Reliability Multi-platform (e.g., supported platforms, browsers, etc) Interoperability with corporate or external systems External regulations (e.g., compliance: PCI, HIPAA, ISO, Sarbanes-Oxley) Complete Code / design reviewed with pair, peer, architect, council Code / automated tests checked in Buildable / smokeable Tested Manually tested Automated tested Unit tested Integration tested Performance tested Code is well written: team ok: no immediate need to refactor / refactoring needed is logged Functional / Implementation docs Managing the Unmanageable: Rules, Tools, and Insights for Managing Software People and Teams, Mickey W. Mantle, Ron Lichty