Engineering, Product management, Leadership

Agile Definition of Done

A set of criteria that must be met before a product or feature is considered complete and ready for delivery.

Relevant metrics: Quality of deliverables, Time to completion, Cost of development, User satisfaction, and Number of defects

In this article

What is Agile Definition of Done

Agile Definition of Done is a set of criteria that must be met before a product or feature can be considered complete. It is a checklist of tasks that must be completed before a product or feature can be released.

The Definition of Done is used to ensure that all aspects of a product or feature have been addressed and that the product or feature is ready for release. It is a shared understanding within the team of what must be done to ensure a product or feature is ready for release. The Definition of Done typically includes acceptance criteria, quality criteria, and other criteria that must be met before a product or feature is considered complete.

Where did Agile Definition of Done come from?

Agile Definition of Done (DoD) is a term used in Agile software development to describe the criteria for a user story to be considered complete. It is a set of criteria that must be met before a user story can be considered finished and ready for acceptance. The term was first coined by Alistair Cockburn in his book Agile Software Development in 2001. The DoD is a way to ensure that all stakeholders have a shared understanding of what is expected from a user story and that all tasks associated with it have been completed. It is also a way to ensure that the user story is of high quality and meets the requirements of the customer.

Why implement a Definition of Done (DoD)

The Agile Definition of Done (DoD) is a critical concept for any organization that is looking to maximize the efficiency of their software development process. By providing a clear set of criteria that must be met before a task can be considered complete, the DoD helps to ensure that all stakeholders are on the same page and that the development process is running smoothly.

The definition is typically established by the development team and should be agreed upon by all stakeholders. The criteria should be specific and measurable, and should include both technical and non-technical requirements. By having a clear set of criteria, the development team can ensure that all tasks are completed to the same standard and limit debate around the subject of being done. It sets expectations.

The DoD helps ensure that the development process is running smoothly. By having a clear set of criteria, it is easy to quickly identify any tasks that are not meeting the required standards and take corrective action. This helps to reduce the risk of delays and ensures that the project is completed and that a scope can be sliced to fit within time and budget.

Applying Agile Definition of Done

The DoD should be applied to each task within a project, and should be tailored to the specific needs of the project. It should include criteria such as the quality of the work, the timeline for completion, and any other requirements that must be met. This ensures that all tasks are completed to the highest standard and that the project is delivered on time and within budget.

The definition should be reviewed regularly to ensure that it is up to date and that it meets the needs of the project.

Examples of a Definition of Done

Examples of Definition of Done include:

  • All tasks must be completed
  • All code must be tested and verified
  • All user stories must be implemented
  • All features must be documented
  • All user interface elements must be designed
  • All performance requirements must be met
  • All security requirements must be met
  • All customer acceptance criteria must be met
  • All code must be reviewed and approved
  • All bugs must be fixed
  • All code must be checked into version control
  • All code must be deployed to production
  • All user stories must be accepted by the customer

Benefits of Implementing an Agile Definition of Done

  • Improved Quality. By having a clear definition of what is expected to be done, teams can ensure that the quality of their work is consistently high. This helps to reduce the risk of errors and ensures that the end product meets the customer’s expectations.
  • Increased Visibility. An Agile Definition of Done provides a clear roadmap for the project, allowing stakeholders to easily track progress and identify any potential issues.
  • Improved Collaboration. By having a clear definition of what is expected to be done, teams can work together more effectively.

Challenges of Implementing an Agile Definition of Done

  • Establishing Clear Criteria. Establishing clear criteria for what constitutes a “done” state can be difficult, as it requires a team to agree on a set of standards that everyone is comfortable with.
  • Adapting to Change. Agile development requires teams to be able to quickly adapt to changing requirements and conditions, which can be difficult to do when a Definition of Done is in place.
  • Maintaining Consistency. It can be difficult to maintain consistency when using an Agile Definition of Done, as teams may have different interpretations of what constitutes a “done” state.
  • Measuring Progress. Measuring progress against an Agile Definition of Done can be difficult, as it requires teams to track progress against a set of criteria that may change over time.
  • Ensuring Quality. Ensuring quality when using an Agile Definition of Done can be challenging, as teams may not have the same standards for what constitutes a “done” state.
Relevant questions to ask
  • What is the purpose of the Agile Definition of Done?
    Hint The purpose of the Agile Definition of Done is to provide a clear set of criteria that must be met before a product or feature can be considered complete.
  • What criteria should be included in the Agile Definition of Done?
    Hint Criteria that should be included in the Agile Definition of Done include: acceptance criteria, quality criteria, and any other criteria that must be met before a product or feature can be considered complete.
  • How will the Agile Definition of Done be used?
    Hint The Agile Definition of Done will be used to ensure that all stakeholders are aware of the criteria that must be met before a product or feature can be considered complete.
  • How will the Agile Definition of Done be communicated to stakeholders?
    Hint The Agile Definition of Done could be communicated to stakeholders through meetings, emails, and other forms of communication.
  • How will the Agile Definition of Done be monitored and enforced?
    Hint The Agile Definition of Done could be monitored and enforced by the Scrum Master or other designated team members.
  • How will the Agile Definition of Done be updated and maintained?
    Hint The Agile Definition of Done will be updated and maintained by the development team through retrospective ceremonies.
  • What are the potential risks associated with using the Agile Definition of Done?
    Hint Potential risks include missing or incomplete criteria, lack of communication, and lack of enforcement.
  • How will the Agile Definition of Done be integrated into the overall project plan?
    Hint The Agile Definition of Done can be integrated into the overall project plan by including it in the project timeline and ensuring that all stakeholders are aware of the criteria that must be met before a product or feature can be considered complete.
People who talk about the topic of Agile Definition of Done on Twitter
Relevant books on the topic of Agile Definition of Done
  • Lean Software Development: An Agile Toolkit by Mary Poppendieck and Tom Poppendieck (2003)
  • Succeeding with Agile: Software Development Using Scrum by Mike Cohn (2009)
  • Kanban: Successful Evolutionary Change for Your Technology Business by David J. Anderson (2010)
  • Scaling Lean & Agile Development: Thinking and Organizational Tools for LargeScale Scrum by Craig Larman and Bas Vodde (2009)
  • Scrum and XP from the Trenches by Henrik Kniberg and Mattias Skarin (2011)

Want to learn more?

Receive a hand picked list of the best reads on building products that matter every week. Curated by Anders Toxboe. Published every Tuesday.

No spam! Unsubscribe with a single click at any time.

Community events
Product Loop

Product Loop provides an opportunity for Product professionals and their peers to exchange ideas and experiences about Product Design, Development and Management, Business Modelling, Metrics, User Experience and all the other things that get us excited.

Join our community

Made with in Copenhagen, Denmark

Want to learn more about about good product development, then browse our product playbooks.