Definition of DONE! 10 Point Checklist
A key principle of agile software development is "done means DONE!"
To be more specific, here's a 10 point checklist of what constitutes 'feature complete'...
- Code produced (all 'to do' items in code completed)
- Code commented, checked in and run against current version in source control
- Peer reviewed (or produced with pair programming) and meeting development standards
- Builds without errors
- Unit tests written and passing
- Deployed to system test environment and passed system tests
- Passed UAT (User Acceptance Testing) and signed off as meeting requirements
- Any build/deployment/configuration changes implemented/documented/communicated
- Relevant documentation/diagrams produced and/or updated
- Remaining hours for task set to zero and task closed
See also:
Agile Principle #7: done means DONE!
Agile Principle #6: Fast but not so furious!
10 Key Principles of Agile Software Development
Photo by saital
25 September 2007 18:47
Good sample criteria. However, for organizations just starting to apply agile methods it might be impossible to reach immediately.
To me it is more important to get any common definition of done even if it is "Product Owner has to agree that the feature is done" and then bit by bit improve the definition until it includes delivery to the end user.
16 October 2007 06:44
I do not think that you can pin down a def. of done that suits everyone. The team must decide together what done means to them. And write it down.