scripts

DEFINITION OF DONE (DOD) – IMPORTANCE IN AGILE / SCRUM [#DefinitionOfDone #AgileScrum #AgileNewsAndViews]

GOALS OF DEFINITION OF DONE
THINGS TO CONSIDER WHILE ELICITING A DOD
ADVANTAGES OF DOD

The Scrum Guide describes Definition of Done (DoD) as a tool for bringing transparency to the work performed by a Scrum Team. Definition of Done is related more to the quality of a product, rather than its functionality.

GOALS OF DEFINITION OF DONE

• Builds a common understanding within the Scrum team about quality and completeness
• Use as a checklist that user stories (or PBIs) are checked against
• Ensure the Product Increment shipped or ready to ship at the end of the Sprint has high quality and that the quality is well understood by all stakeholders

DoD depends on a number of variables like:

• Nature of the product being developed
• Technologies being used to develop it
• Organization building the product
• Present obstacles that impact the possibility

THINGS TO CONSIDER WHILE ELICITING A DOD

Review Acceptance Criteria:
• Gather the Acceptance Criteria for work completed so far
• Look for common criteria that can be abstracted out and applied across work in general
• Use these common criteria as the basis for Definition of Done

Assess Technical Debt
• Identify any rework that needs to be done
• Identify reasons why it was not done properly the first time
• Identify measures that can be put in place to stop similar rework from occurring
• Add these measures to the Definition of Done

Continually update the DoD:
In each Sprint Review, identify which work, if any, was rejected or which work caused rework to be done
In each Sprint Retrospective, challenge the DoD for relevance and completeness

Things commonly addressed in Definition of Done:
• Operating environments and at what level of integration are user stories expected to work?
• What level of documentation is required?
• What are the quality expectations?
• What are the security expectations?
• What are the scalability expectations?

ADVANTAGES OF DOD

• Having a clear Definition of Done helps Scrum teams work together more collaboratively, increases transparency, and ultimately results in the development of consistently higher quality software
• During the Sprint Planning meeting, the Scrum team develops or reconfirms its DoD, which enables the Development Team to know how much work to select for a given Sprint

Further, a common DoD helps to:
• Baseline progress on work items
• Enable transparency within the Scrum Team
• Expose work items that need attention
• Determine when a Product Increment is ready for release

The Definition of Done is not changed during a Sprint, but should change periodically between Sprints to reflect improvements the Development team has made in its processes and capabilities to deliver software.

When multiple Scrum Teams are working on a single project, it may not be possible to use the same definition of “Done” for all teams, because they might be working on items of different nature.
In such cases, each Scrum team will define its own definition of “Done” and deliver its items based on that definition.
However, the integration of those definitions of “Done” should be capable of creating a potentially releasable Product Increment in the project level.

There are various factors which influence whether a given activity belongs to the DoD for a feature, a sprint or a release. Ultimately, the decision rests on the answer to the following three questions:

• Can we do this activity for each feature / story? If not, then
• Can we do this activity for each sprint? If not, then
• We have to do this activity for our release

Story Definition of Done:

• All stories should have automated acceptance test
• The story should have working code supported by unit test that provide around 60 – 70 percent coverage
• The story should have well defined acceptance criteria
• Code must have been written as a pair or should be code reviewed.
• Code must be completely checked into the source control system and the build should pass with all the automated tests running.
• The Product Owner must accept the story.

Sprint Definition of Done:

• The Product Owner should have defined a sprint goal
• All stories completed for the sprint must be accepted by the product owner
• All automated acceptance tests should be running for the stories in the sprint
• All code should have been pair programmed or must have gone through a code review process
• If there is a database involved, the database scripts must have been automated and tested

Release Definition of Done:

• Product is deployed to the test box and makes it to staging
• Deployment documents are available for the release
• Training manuals are available for users
• All stories for the release are completed and accepted
• Release does not have any level one bugs.

DoD is a very important concept in Scrum. It helps to have a common understanding of what work needs to be done before a user story is considered “Finished”. DoD is a container for process improvements and DoD holds non-functional requirements. DoD should be kept minimal or hardly anything ever gets done in a sprint.

ADAPTED FROM
Definition of Done – Importance in Agile:
Tech Agilist

Don`t copy text!