Skip to main content

Definition of Done (DoD) vs Acceptance Criteria (AC)

 The Definition of Done (DoD) in Scrum is a formal description of the state of an Increment when it meets the quality measures required for the product. Think of it as all the necessary ingredients for an Increment to be considered complete. Just as the Sprint Goal represents the commitment by the Developers for the Sprint Backlog, and the Product Goal represents the commitment by the Product Owner for the Product Backlog, the Definition of Done is the commitment by the Developers for the Increment. It includes all the characteristics and standards that an Increment must meet to be released. Once the Definition of Done is satisfied, the Increment is considered “Done” and can be delivered. This transparency ensures that everyone shares a common understanding of the work completed and the standards met as part of the Increment. If a Product Backlog Item does not meet the Definition of Done, it cannot be released yet. The Definition of Done may include organizational standards or be tailored specifically for the product being developed12. Here are some examples of items that might be found in a Definition of Done:

For a written Marketing Case Study:

  • Meets featured client branding guidelines
  • Written in AP style
  • Reviewed by the featured client, with feedback incorporated
  • Final draft approved by the client

For a health-focused software application:

  • All testing completed
  • No known defects
  • Code review completed and passed
  • Meets HIPAA compliance standards
  • Meets general security requirements

Remember that the Definition of Done ensures the quality and completeness of the product increment, contributing to successful product delivery in Scrum! 

Acceptance criteria are defined as the conditions that must be satisfied for a product, user story, or increment of work to be accepted. While not a part of the Scrum Guide, these criteria can be a useful tool that teams may choose to use to improve the quality of product backlog items. Also shortened to the acronym AC, these conditions are pass/fail. Acceptance criteria are either met or not met; they’re never only partially fulfilled. They are often expressed as a set of statements that should be:

Clear: So that everyone understands them.

Concise: So that there’s no ambiguity.

Testable or verifiable: Focused on providing customer-delighting results.

Acceptance criteria do not focus on “how” a solution is reached or “how” something is made. Instead, they illuminate the “what” of the work you are doing.

For example, the criteria may be: “Users can pay with Google Pay or Apple Pay at checkout.” The spirit of acceptance criteria is not to tell you how to do it (e.g., install a WordPress plugin or write HTML), but rather to define the conditions for accepting the work. It’s up to the developers on the Scrum team to decide the “how” of fulfilling the acceptance criteria. These criteria are widely used in software development but are now applied to various deliverables across diverse industries, from app development to Human Resources departments and beyond1

 Remember, acceptance criteria ensure that the work meets the necessary standards and aligns with customer expectations! 

Comments

Popular posts from this blog

Delivering a project within budget

 Here are some tips for delivering a project within budget: Set a realistic budget Define the project's scope and necessary resources, and create a budget that's realistic. Cost estimate Segment the project into smaller tasks and milestones to plan how to use resources and provide clarity. Divide the project plan Break down the project into tasks to avoid late deliverables and over-budget projects. Monitor progress Regularly track the project's progress to identify and prevent cost overruns. Use progress reports to compare actual costs to the budget. Anticipate and revise changes Communicate with stakeholders to identify and assess risks, and assign owners to each risk. Consider different scenarios Estimation can be difficult for complex projects with many potential outcomes. Tracking: Tracking time spent on tasks, Tracking expenses per project, and Using project management software. Use Historical Data Your project is likely not the first to try and accomplish a specific o...

Certified Enterprise Architect Professional (CEAP) - Module 5 - Architecture Frameworks

Architecture Frameworks: An Architecture Framework is a theoretical structure that has the purpose of developing, executing, and maintaining an Enterprise Architecture. Advantages of EA framework: Simplify Breaks down areas of the business process Organise business components and create and identify relationships between business Determine the scope Customization in the existing framework Disadvantages of EA framework: Need to follow process Provides only direction and not information It's based on goal and objective Need creativity and proactive thinking Zachman Framework: The Zachman Framework is a widely used model in Enterprise Architecture (EA) that provides a structured way to classify and organize an organization's information infrastructure by defining different perspectives from various stakeholders, allowing for a holistic view of the enterprise and facilitating alignment between business needs and technology solutions; essentially acting as a template to organize arc...

Bucket System project estimation

 The Bucket System is an Agile estimation technique that uses predefined buckets to group tasks or user stories by size, complexity, or effort.  Each bucket represents an estimate range, such as small, medium, or large.  The Bucket System is a group activity that helps align the team's understanding of work effort and complexity.  It's a good technique for quickly estimating a large number of items with a medium to large group of people. The effort of small, medium, or large bucket size arrived by team based on T-shirt sizing, PERT estimation or Planning Poker. Each bucket represents a level or an estimate range (e.g., small, medium, large). The team compares user stories to one another and places them into the appropriate buckets. This process is a group activity, promoting discussions and aligning the team's understanding of work complexity and effort. To use the Bucket System: Set up a row of cards, or buckets, with values in the Fibonacci sequence or other metho...