- Environments are prepared for release
- no unintegrated work in progress has been left in any development or staging environment
- the continuous integration framework is verified and working
- including regression tests and automated code reviews
- The build engine ought to be configured to schedule a build on check-in. It may also trigger hourly or nightly builds
- all of the test data used to validate the features in the release has itself been validated
- Handover to support is complete
- design models and specifications, including user stories and tests, accepted by support
- support also be satisfied that they are in competent control of the supporting environment
- Review Ready
- preparing for the review. Sprint metrics available
- user stories which have not completed are re-estimated and returned to the PB
- Code Complete
- Any and all “To Do” annotations must have been resolved
- the source code has been commented to the satisfaction of the DT
- Source code should have been refactored
- Note that the Red-Green-Refactor pattern found in Test Driven Development is helpful here
- Unit test cases must have been designed for all of the features in development
- relevant naming conventions
- The degree of Code coverage is known, and should meet or exceed the standard required
- The unit test cases should have been executed and the increment proven to work as expected
- Peer reviews ought to be done. (Note: If pair programming is used, a separate peer review session might not be required)
- Test Complete
- Functional testing done. This includes both automated testing and manual exploratory testing
- test report should have been generated
- All outstanding defects (or incidents such as build issues) should be elicited and resolved, or accepted by the team as not being contra-indicative to release
- Regression testing has been completed, and the functionality provided in previous iterations has been shown to still work
- Performance, security, and user acceptance testing must have been done, and the product should be shown to work on all required platforms
- Release authorization must be obtained