Definition of Done and Ready - psit4-lamas/PSIT4-LaMaS GitHub Wiki

We consider the "INVEST criteria", which provides us with useful Definition of Ready requirements which can be applied to Product Backlog Items (PBI, User Stories).

  • I (Independent). The PBI should be self-contained and it should be possible to bring it into progress without a dependency upon another PBI or an external resource.
  • N (Negotiable). A good PBI should leave room for discussion regarding its optimal implementation.
  • V (Valuable). The value a PBI delivers to stakeholders should be clear.
  • E (Estimable). A PBI must have a size relative to other PBIs.
  • S (Small). PBIs should be small enough to estimate with reasonable accuracy and to plan into a time-box such as a Sprint.
  • T (Testable). Each PBI should have clear acceptance criteria which allow its satisfaction to be tested.

Definition of Ready for User Stories

Given this list, a User Story to be considered "Ready" needs to fulfil

  • User Story in the format of "As a user role, I want action so that goal/benefit"
  • User Story has a 2 – 4 word short summary
  • User Story is small enough to fit in one sprint
  • User Story is understood by all sprint participants
  • User Story is estimated
  • User Story has clear and concise acceptance criteria which describe all of the features of the story
  • User Story needs to be testable
  • User Story has no external dependencies that could block the progress of the user story
  • User Story identifies external expertise and provides contact details

Definition of Done for User Stories

The very same principles e.g INVEST apply here as well.

A User Story to be considered "Done" needs to fulfil

  • User Story is implemented
  • Project builds without errors
  • Project deployed on the test environment identical to production platform
  • Automated functional, non-functional, system and system integration tests passed
  • Tests on devices/browsers listed in the project assumptions passed
  • Acceptance tests passing
  • Pull Request to develop branch created
  • Code Review session performed (Quality Assurance, Coding Guidelines and Standards, follow this: https://gist.github.com/cazala/3f6cc82f6b5aa42e210090f7a11f8cb7)
  • Issues from Code Review session resolved
  • Refactoring completed (Architecture, SonarQube)
  • Any configuration or build changes documented
  • Documentation updated (if exists)
  • Internalization added

Definition of Ready for Sprint

  • All User Stories of the following Sprint have status "Ready"
  • Sprint Backlog prioritized
  • Whole team has its capacity evaluated