Definition of Done
At the end of a Sprint cycle, a decision must be made as to whether a feature is ready to be deployed. The decision is made by determining if there are any remaining tasks in the Sprint Backlog and if the completed Stories have been finalized according to an agreed set of standards. These standards are known as the Definition of Done and can vary slightly from one project to another. The types of criteria it can specify, include:
● Must be developed with Paired Programming (where code must be reviewed by a 2nd developer).
● A definition of what Properly Tested means (For example, all previous regression tests have passed, regression tests for new functionality will run with future builds, a manual exploratory test has been conducted, etc.)
● The code has been Refactored (Code has been cleaned up and is not messy/poorly designed and any duplicate code has been removed)
● Functionality could be deployed and used if needed (without requiring any further changes)
The Product Owner usually has the final say on whether the Sprint is ready for release; but, if a sprint release ends up being delayed and there are tasks left unfinished this is a problem for the Scrum Master who will want to avoid allowing the pattern to continue. During the next Sprint Planning Meeting, it will be something they will need to address.
Recommended Further Reading
The following materials may assist you in order to get the most out of this course: