What is definition of done? - Definition from WhatIs.com


definition of done

Part of the Software development glossary:

A definition of done is a checklist of criteria that a product, product increment or project must satisfy to be considered completed. 

The term is used in agile software development and agile project management.  The team collaboratively develops and agrees to all the stipulations of the definition.

The need for such a list arose as a way to ensure that all involved parties clearly understand what is meant when someone says something is “done.”  A programmer, for example, might say software was done once he had finished writing the code. On the other hand, a product owner might not consider the software done until it had been thoroughly tested and was essentially ready for release. The definition of done is intended to be stringent enough to satisfy any stakeholder.

Here’s a sample definition of done:

  1. The build is in a release-ready state and available for download.
  2. Documentation is complete.
  3. Any unimplemented or inactive features are hidden from the user.
  4. Testing is complete.
  5. The source code is committed on the server.
  6. Code has been reviewed.
  7. Demo or manual has been reviewed and presented to the product owner.
  8. The product owner has given approval.

A definition of done might be posted in a visible area in the team’s shared workspace, on what is called a Big Visible Chart (BVC) or an information radiator.

This was last updated in October 2013
Contributor(s): Ivy Wigmore
Posted by: Margaret Rouse

Related Terms


  • point cloud

    - A point cloud is a collection of data points defined by a given coordinates system. In a 3D coordinates system, for example, a point cloud may define the shape of some real or created physical system. (WhatIs.com)

  • Hofstadter's law

    - Hofstadter’s law is the observation that “It always takes longer than you expect, even when you take into account Hofstadter's Law.” (WhatIs.com)

  • walking skeleton

    - A walking skeleton, in a software development context, is a minimal initial implementation of an application that includes and connects the major components of the system's architecture. (WhatIs.com)


  • Software development

    - Terms related to software development, including definitions about programming and words and phrases about Scrum, Agile and waterfall methodologies.

  • Internet applications

    - This WhatIs.com glossary contains terms related to Internet applications, including definitions about Software as a Service (SaaS) delivery models and words and phrases about web sites, e-commerce ...

Ask a Question. Find an Answer.Powered by ITKnowledgeExchange.com

Ask An IT Question

Get answers from your peers on your most technical challenges

Ask Question

Tech TalkComment



    Contribute to the conversation

    All fields are required. Comments will appear at the bottom of the article.