Definition of Done

A clear Definition of Done (DoD) is crucial for ensuring quality and consistency in software development. This document outlines comprehensive criteria for completing work at various levels of the development cycle, incorporating modern DevOps practices.

Why Definition of Done Matters

A well-defined DoD:

  • Creates shared understanding across team members

  • Establishes quality standards

  • Reduces technical debt

  • Minimizes rework and surprises

  • Facilitates predictable delivery

  • Ensures security and compliance requirements are met

Feature/User Story DoD

Before considering a feature or user story complete, verify that:

Functional Requirements

Code Quality

Testing

DevOps & Observability

Security & Compliance

Documentation & Knowledge Sharing

Review & Approval

Sprint Goal DoD

In addition to all feature/user story DoD items above, a sprint is complete when:

Deliverables

Quality & Testing

Defects & Technical Debt

Process & Collaboration

Release/Milestone DoD

A release or milestone is ready for production when:

Release Readiness

Deployment Pipeline

Security & Compliance

Operations Readiness

Stakeholder Approval

Customizing Your Definition of Done

Teams should collaboratively define their specific DoD, considering:

  1. Team context: Size, experience, domain expertise

  2. Project requirements: Complexity, criticality, compliance needs

  3. Technical environment: Languages, frameworks, infrastructure

  4. Organizational standards: Company policies and quality standards

Review and update your DoD regularly during retrospectives to continuously improve your development process.


Note: This is a comprehensive template. Teams should adapt it to their specific needs, removing irrelevant items or adding project-specific requirements.

Last updated