Definition of Done (2024)

Agile Glossary

What is Definition of Done?

The team agrees on, and displays prominently somewhere in theteam room, a list of criteria that must be met before a product increment “often a user story” is considered “done”. Failure to meet these criteria at the end of asprintnormally implies that the work should not be counted toward that sprint’svelocity.

Also Known As

Software developers have a reputation for being somewhat careless when answering the question “are you done with this feature”? In fairness, this is an ambiguous question – it can mean “done programming” and this is generally what a developer will have in mind when answering. However, the meaning of interest is usually “are you done programming, creating test data, actually testing, ensuring it’s deployable, documenting…”.

Proverbially, to get an answer to that, the question to ask is, “I know that you are done, but are you DONE-done?”. See also “READY-ready“.

Some teams use the term “Done List” or “Done Checklist”; the less widespread term “product sashimi” offers a compelling image of well-defined slices of a product.

Expected Benefits

  • the Definition of Done provides a checklist that usefully guides pre-implementation activities: discussion, estimation, design
  • the Definition of Done limits the cost of rework once a feature has been accepted as “done”
  • having an explicit contract limits the risk of misunderstanding and conflict between the development team and the customeror product owner

Common Pitfalls

  • obsessing over the list of criteria can be counter-productive; the list needs to define the minimum work generally required to get a product increment to the “done” state
  • individual features or user stories may have specific “done” criteria in addition to the ones that apply to work in general
  • if the definition of done is merely a shared understanding, rather than spelled out and displayed on a wall, it may lose much of its effectiveness; a good part of its value lies in being an explicit contract known to all members of the team

Origins

  • 2002: an earlyarticleby Bill Wake calls attention to the possible inconsistencies arising from terms commonly used within teams, such as “done”
  • 2003: early Scrum trainingmaterialshint at the future importance of the “Definition of Done”, initially only in the form of a slide title: “The story of Done”
  • 2005: the first exercises inviting Scrum trainees to reflect on their (local) “definition of done” appear inlater iterationsof Scrum training materials
  • 2007: by that point the “Definition of Done” as a full-fledged practice, and as a textual checklist displayed in the team room, has become widespread

Signs of Use

  • upon request, the team can point to its explicit Definition of Done
  • the team actually uses the Definition of Done at the end of a sprint to justify the decision to count work towards velocity or not

< View all Glossary Terms | Provide feedback on this term

Definition of Done (3)

Join us today!

Agile Alliance offers manyonline and in-person events and workshopsfor our members. If you’re not currently a member, you canjoin now to take advantage of our many members-only resources and programs.

Definition of Done (4)

Get the latest Agile news!

By subscribing, you acknowledge the Agile Alliance Privacy Policy, and agree to receive our emails.

Additional Agile Glossary Terms

An acceptance test is a formal description of the behavior of a software product, generally expressed as an example or a usage scenario. A number of different notations and approaches have been proposed for such examples or scenarios.

Test-driven development (TDD) is a style of programming where coding, testing, and design are tightly interwoven. Benefits include reduction in defect rates.

A product backlog is a list of the new features, changes to existing features, bug fixes, infrastructure changes or other activities that a team may deliver in order to achieve a specific outcome.

An acceptance test is a formal description of the behavior of a software product, generally expressed as an example or a usage scenario. A number of different notations and approaches have been proposed for such examples or scenarios.

Test-driven development (TDD) is a style of programming where coding, testing, and design are tightly interwoven. Benefits include reduction in defect rates.

The team meets regularly to reflect on the most significant events that occurred since the previous such meeting, and identify opportunities for improvement.

Help us keep the definitions updated

Discover the many benefits of membership

Your membership enables Agile Alliance to offer a wealth of first-rate resources, present renowned international events, support global community groups, and more — all geared toward helping Agile practitioners reach their full potential and deliver innovative, Agile solutions.

Log in now

We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies. However you may visit Cookie Settings to provide a controlled consent.

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.

Please see our Privacy Notice for further information.

Always Enabled

Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.

CookieDurationDescription
__cfduid1 monthThe cookie is used by cdn services like CloudFare to identify individual clients behind a shared IP address and apply security settings on a per-client basis. It does not correspond to any user ID in the web application and does not store any personally identifiable information.
_csrfsessionThis cookie is essential for the security of the website and visitor. It ensures visitor browsing security by preventing cross-site request forgery.
_GRECAPTCHA5 months 27 daysThis cookie is set by Google. In addition to certain standard Google cookies, reCAPTCHA sets a necessary cookie (_GRECAPTCHA) when executed for the purpose of providing its risk analysis.
cookielawinfo-checbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-advertisem*nt1 yearThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Advertisem*nt".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
gdpr[allowed_cookies]1 yearThis cookie is set by the GDPR WordPress plugin. It is used to store the cookies allowed by the logged-in users and the visitors of the website.
JSESSIONIDsessionUsed by sites written in JSP. General purpose platform session cookies that are used to maintain users' state across page requests.
PHPSESSIDsessionThis cookie is native to PHP applications. The cookie is used to store and identify a users' unique session ID for the purpose of managing user session on the website. The cookie is a session cookies and is deleted when all the browser windows are closed.
pmpro_visitThe cookie is set by PaidMembership Pro plugin. The cookie is used to manage user memberships.
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.

Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.

CookieDurationDescription
__atuvc1 year 1 monthThis cookie is set by Addthis to make sure you see the updated count if you share a page and return to it before our share count cache is updated.
__atuvs30 minutesThis cookie is set by Addthis to make sure you see the updated count if you share a page and return to it before our share count cache is updated.
__jid30 minutesUsed to remember the user's Disqus login credentials across websites that use Disqus
aka_debugThis cookie is set by the provider Vimeo.This cookie is essential for the website to play video functionality. The cookie collects statistical information like how many times the video is displayed and what settings are used for playback.
bcookie2 yearsThis cookie is set by linkedIn. The purpose of the cookie is to enable LinkedIn functionalities on the page.
CONSENT16 years 8 months 15 days 5 hoursDescription Pending
disqus_unique1 yearDisqus.com internal statistics
langsessionThis cookie is used to store the language preferences of a user to serve up content in that stored language the next time user visit the website.
languageThis cookie is used to store the language preference of the user.
lidc1 dayThis cookie is set by LinkedIn and used for routing.
locale3 daysThis cookie is used to store the language preference of a user allowing the website to content relevant to the preferred language.
STYXKEY_aa_signup_visitedsessionNo description

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

CookieDurationDescription
_gat_UA-17319182-11 minuteSet by Google Analytics and Google Tag Manager to enable website owners to track visitor behaviour and measure site performance. These cookies are used to collect information about how you use our website. The information collected includes number of visitors, pages visited and time spent on the website. The information is collected by Google Analytics in aggregated and anonymous form, and we use the data to help us make improvements to the website.
YSCsessionThis cookies is set by Youtube and is used to track the views of embedded videos.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.

CookieDurationDescription
_ga2 yearsThis cookie is installed by Google Analytics. The cookie is used to calculate visitor, session, campaign data and keep track of site usage for the site's analytics report. The cookies store information anonymously and assign a randomly generated number to identify unique visitors.
_gat_gtag_UA_17319182_11 minuteSet by Google Analytics and Google Tag Manager to enable website owners to track visitor behaviour and measure site performance. These cookies are used to collect information about how you use our website. The information collected includes number of visitors, pages visited and time spent on the website. The information is collected by Google Analytics in aggregated and anonymous form, and we use the data to help us make improvements to the website.
_gat_UA-0000000-11 minuteSet by Google Analytics and Google Tag Manager to enable website owners to track visitor behaviour and measure site performance. These cookies are used to collect information about how you use our website. The information collected includes number of visitors, pages visited and time spent on the website. The information is collected by Google Analytics in aggregated and anonymous form, and we use the data to help us make improvements to the website.
_gid1 dayThis cookie is installed by Google Analytics. The cookie is used to store information of how visitors use a website and helps in creating an analytics report of how the website is doing. The data collected including the number visitors, the source where they have come from, and the pages visted in an anonymous form.
eud1 year 24 daysThe domain of this cookie is owned by Rocketfuel. This cookie is used to sync with partner systems to identify the users. This cookie contains partner user IDs and last successful match time.
S1 hourdomain .google.com
uvc1 year 1 monthThe cookie is set by addthis.com to determine the usage of Addthis.com service.
vuid2 yearsThis domain of this cookie is owned by Vimeo. This cookie is used by vimeo to collect tracking information. It sets a unique ID to embed videos to the website.

Advertisem*nt cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.

CookieDurationDescription
_fbp3 monthsThis cookie is set by Facebook to deliver advertisem*nt when they are on Facebook or a digital platform powered by Facebook advertising after visiting this website.
AnalyticsSyncHistory1 monthUsed to store information about the time a sync with the lms_analytics cookie took place for users in the Designated Countries
bscookie2 yearsThis cookie is a browser ID cookie set by Linked share Buttons and ad tags.
eudssessionThese cookies are from Rocket Fuel (rfihub.com) and are used to deliver targeted advertising across their network sites ensuring users see relevant advertising.
fr3 monthsThe cookie is set by Facebook to show relevant advertisments to the users and measure and improve the advertisem*nts. The cookie also tracks the behavior of the user across the web on sites that have Facebook pixel or Facebook social plugin.
IDE1 year 24 daysUsed by Google DoubleClick and stores information about how the user uses the website and any other advertisem*nt before visiting the website. This is used to present users with ads that are relevant to them according to the user profile.
loc1 year 1 monthThis cookie is set by Addthis. This is a geolocation cookie to understand where the users sharing the information are located.
NID6 monthsThis cookie is used to a profile based on user's interest and display personalized ads to the users.
pxrc2 monthsThe purpose of the cookie is to identify a visitor to serve relevant advertisem*nt.
rlas31 yearThe cookie is set by rlcdn.com. The cookie is used to serve relevant ads to the visitor as well as limit the time the visitor sees an and also measure the effectiveness of the campaign.
rud1 year 24 daysThe domain of this cookie is owned by Rocketfuel. The main purpose of this cookie is advertising. This cookie is used to identify an user by an alphanumeric ID. It register the user data like IP, location, visited website, ads clicked etc with this it optimize the ads display based on user behaviour.
rudssessionThe domain of this cookie is owned by Rocketfuel. This cookie is a session cookie version of the 'rud' cookie. It contain the user ID information. It is used to deliver targeted advertising across the networks.
sd-session-id1 year 24 days

Registers data on visitors from multiple visits and on multiple websites. This information is used to measure the efficiency of advertisem*nt on websites.

test_cookie15 minutesThis cookie is set by doubleclick.net. The purpose of the cookie is to determine if the user's browser supports cookies.
UID2 yearsThis cookie is used by AddThis as a unique user ID that recognises the user on returning visits.
UserMatchHistory1 monthLinkedin - Used to track visitors on multiple websites, in order to present relevant advertisem*nt based on the visitor's preferences.
uuid23 monthsThis cookies is set by AppNexus. The cookies stores information that helps in distinguishing between devices and browsers. This information us used to select advertisem*nts served by the platform and assess the performance of the advertisem*nt and attribute payment for those advertisem*nts.
VISITOR_INFO1_LIVE5 months 27 daysThis cookie is set by Youtube. Used to track the information of the embedded YouTube videos on a website.
xtc1 year 1 monthAnonymously tracks user behaviour on the websites that allow a user to share pages on social media using the AddThis tool. AddThis log the anonymous use to generate usage trends to improve the relevance of their services and advertising.
zync-uuid1 year 23 days 17 hoursThe purpose of the cookie is to serve visitors with relevant advertisem*nt.

Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.

CookieDurationDescription
CP5XKN6QLDFWUCThis cookie is provided by the Calculated Fields form. This cookie is used by the online calculators on the website. Without the Calculated Fields cookie the instant quotation may not work.
Definition of Done (2024)
Top Articles
Latest Posts
Article information

Author: Delena Feil

Last Updated:

Views: 6039

Rating: 4.4 / 5 (45 voted)

Reviews: 92% of readers found this page helpful

Author information

Name: Delena Feil

Birthday: 1998-08-29

Address: 747 Lubowitz Run, Sidmouth, HI 90646-5543

Phone: +99513241752844

Job: Design Supervisor

Hobby: Digital arts, Lacemaking, Air sports, Running, Scouting, Shooting, Puzzles

Introduction: My name is Delena Feil, I am a clean, splendid, calm, fancy, jolly, bright, faithful person who loves writing and wants to share my knowledge and understanding with you.