Definition Of Done


Published on

Published in: Technology
  • Be the first to comment

Definition Of Done

  1. 1. Definition of Done Zhu Wei
  2. 2. Agenda <ul><li>What </li></ul><ul><li>Why </li></ul><ul><li>Who </li></ul><ul><li>When </li></ul><ul><li>How </li></ul><ul><li>Some Examples </li></ul>
  3. 3. What is Definition of Done? <ul><li>“ Complete as mutually agreed to by all parties and conforming to an organization’s standards, conventions, and guidelines. When something is reported as “done” at the Daily Scrum or demonstrated as “done” at the Sprint review meeting, it must conform to this agreed definition.”– Agile Project Management with SCRUM </li></ul><ul><li>So Definition of Done is… </li></ul><ul><li>Product quality standard? </li></ul><ul><li>A list of activities for producing potential shippable product increment? </li></ul><ul><li>Anything else? </li></ul>
  4. 4. Problems of without defining “DONE” <ul><li>Technical debts – “Pay me now or pay me later” </li></ul><ul><li>The undone work accumulate in a nonlinear manner </li></ul><ul><li>Illusion of progress (velocity) and unpredictable ship date </li></ul><ul><li>Team over-commit the amount of work they can do in a sprint </li></ul><ul><li>The product owner surprises with the delivery during the sprint review session </li></ul>
  5. 5. Who should define “DONE”? <ul><li>The team (product owner as team member) </li></ul>
  6. 6. When should the team define “DONE”? <ul><li>During or before product backlog estimation? </li></ul><ul><ul><li>If we do not define DONE, how do we know how much thing we can deliver within given timeframe? </li></ul></ul><ul><ul><li>Can we define a complete definition of done upfront? </li></ul></ul><ul><li>Definition of done evolves sprint by sprint </li></ul>
  7. 7. How to defineimplement “DONE”? <ul><li>The definition of done should be agreed to by the team, written down and rigorously followed </li></ul><ul><ul><li>Definition of done reflect the maturity/experience level of the team </li></ul></ul><ul><li>The initial definition of done can be derived/tailored from organization standard. </li></ul><ul><li>Involve product owner (client) – “Dancing with client” </li></ul><ul><li>Evolve definition of done by inspect and adapt. </li></ul>
  8. 8. Definition of Done for User Stories <ul><li>Unit tests pass and coverage met standard (85% or above) </li></ul><ul><li>Sufficient negative unit tests were written (more negative than positive) </li></ul><ul><li>Code is reviewed (or Pair programmed) </li></ul><ul><li>Coding standards are met </li></ul><ul><li>Continuous integration implemented (automated build, deployment and testing) </li></ul><ul><li>Code is refactored (to support the new functionality) </li></ul><ul><li>UAT tests pass (test case requirements) </li></ul><ul><li>Non-functional tests pass (scalability, reliability, security, etc.) </li></ul><ul><li>Necessary documentation is completed </li></ul>
  9. 9. Definition of Done of Sprint <ul><li>Met DoD for all stories in the iteration </li></ul><ul><li>The product increment accepted by the product owner or customer at the iteration demo </li></ul>
  10. 10. References <ul><li> [ Alan S. Koch ] </li></ul><ul><li>Agile Project Management with SCRUM – [ Ken Schwaber ] </li></ul><ul><li> - [Brad Swanson’s Blog] </li></ul>