If you look at my first offering of my team’s “Definition of Done,” you’ll see that it focused almost entirely on the tool (Team Foundation Server). While the items are important to remember, they aren’t agreements made by the team, but rather “the right way” to use the tool. As such, those items really belong on a checklist, not in the Definition of Done.
Here is the cleaned up version.
Definition of Done
- Follow the “TFS Requirement Checklist”
- Definition of Ready
- The “Requirements Review Checklist” has been answered.
- The team has read the user story and acceptance criteria and has agreed on a size via planning poker.
- The requirement has been met.
- The following are handled gracefully:
- No results
- Null values
- Maximum-length strings
- Reasonable input validation is implemented (see “Development Expectations”)
- Wiki documentation updated if applicable.
- Follow the “TFS Bug Checklist”
- The Bug has been addressed:
- Path 1: Bug has been fixed in the data or environment and no longer occurs.
- Path 2: Bug has been fixed in the code and will not occur after a new build (nightly).
- Path 3: Bug cannot be reproduced, needs more detail, or reports as-designed functionality.
- Follow the “TFS Task Checklist”
- Task is Accomplished
- Unit tests updated and pass
- Code review completed, if needed
- Sprint Retrospective
- Team Sprint Review
- Internal Sprint Review (cross-team functionality)
- “Sprint Review and Approvals” form drafted.
- Customer Sprint Review and “Sprint Review and Approvals” form signed.
- “Release Notes” draft updated.
- Ready for Regression Testing
- All new functionality has been coded and tested.
- All code checked in.
- All requirements and bugs included in the release should be in a closed state in TFS.
- Regression Testing complete.
- All Change Requests in the release are Closed (in cooperation with the Change Management team).
- All Requirements and Bugs in the release are Closed.
- All documentation included in the release package submitted (“Change Management Team checklist”).
- Informational meeting and notes provided to the Help Desk, Documentation Team, and Trainers.