Definition of Done

Published date: April 15, 2024, Version: 1.0

What is Definition of Done (DoD)

Definition of Done is an important way of ensuring an increment of value can be considered complete. The DoD is not static, and we continuously work on it to include more stringent criteria and different aspects.

Information should be shared frequently & all team members should attend discussions. This will enable team members to ask questions/clarifications early, as well as share the same understanding of meeting goals and agenda.

Characteristics of DoD

  • Clear, concise, auditable list of tasks that must be accomplished for a body of work to be considered DONE (Potentially Shippable Product)

  • Created by the Team and modified as needed

  • It drives Quality, Accountability, Craftsmanship and removes ambiguity

Epic

  • All stories under Epic have been completed and accepted by PO
  • A demo is given to Epic Owner and accepted by epic owner
  • Non-Functional requirements met
  • System testing completed
  • Regression(manual/automated) tests pass
  • Promoted to production environment
  • Meets defined KPI metrics
  • Meets compliance requirements (If applicable)

Story

  • Unit tests passed: Implement unit tests wherever possible and cover critical code paths. Ensure that all unit tests pass successfully with automated coverage for unit tests targeting 90% or higher.
  • Functional tests passed: Ensure all scripts (acceptance criteria) have been tested/demonstrated to the Product Owner (PO) or Project Manager (PM).
  • Functional Automation coverage: Automate a minimum of 80% of tests related to the user story.
  • Integration test pass rate: Achieve a 100% pass rate for integration tests.
  • The user story meets all functional requirements specified in the acceptance criteria, with a functional test pass rate of 100%.
  • Implement contract testing if the story involves creating/changing a developed API.
  • Review and address static code analysis findings, maintaining a code quality rating of at least 90% according to the static code analysis tool.
  • Address and meet non-functional requirements, such as performance, security, and usability.

Task/Sub-task

  • Implementation completed
  • Unit tests passed
  • List checks Passed
  • Peer code Review
  • Merged and non-breaking CI tests

Iteration

  • Development & Coding
  • Automation
  • Functional and Non-Functional Requirements
  • Integration and system testing
  • Defect Management
  • Documentation and Knowledge Transfer
  • Product Owner Validation
  • Iteration Goal Achievement

Release

  • Release Readiness
  • Quality and Testing
  • Deployment and Documentation