✅ Definition of Done (DoD)
Definition:
Definition of Done (DoD) is a shared checklist or agreement that defines when a task, user story, or feature is considered complete.
It ensures consistency, quality, and clarity across the team.
1️⃣ Why DoD is Important
- Prevents incomplete or half-baked work from being marked as done.
- Sets clear expectations between developers, testers, and stakeholders.
- Ensures quality standards are met.
- Helps in accurate sprint planning and progress tracking.
2️⃣ Typical Elements in a DoD
A task or feature is “done” only if it meets all criteria, such as:
- Code is written, reviewed, and merged.
- Unit tests are written and passed.
- Integration tests are successful.
- Code is documented (if required).
- UI/UX is validated (if applicable).
- Feature is deployed to staging or QA environment.
- Performance/security checks passed.
- Stakeholder or Product Owner acceptance is obtained.
Example DoD for a user story in Scrum: “Code complete + peer reviewed + unit tests ≥ 80% coverage + integration tested + deployed to staging + Product Owner accepted.”
3️⃣ Benefits
- Reduces misunderstandings about completeness.
- Improves product quality and team accountability.
- Makes sprints predictable and progress measurable.
- Serves as a reference for continuous improvement.
4️⃣ DoD vs Acceptance Criteria
| Aspect | Definition of Done (DoD) | Acceptance Criteria |
|---|---|---|
| Scope | Applies to all user stories/tasks | Applies to a specific story |
| Focus | Quality and completeness | Functional behavior |
| Who defines | Scrum team / development team | Product Owner / stakeholders |
| Example | Unit tests passed, code reviewed, deployed to staging | User can log in with valid credentials |
5️⃣ Analogy
Think of DoD like grading criteria for an assignment:
- You don’t just submit the paper; you ensure all sections, formatting, references, and tests are complete before it’s accepted.