Definition of Done vs Acceptance Criteria: What's the Difference?

Поділитися
Вставка
  • Опубліковано 2 сер 2024
  • Teams find it difficult to differentiate between Definition of Done vs Acceptance Criteria. End the confusion! Learn what acceptance criteria are and see examples of acceptance criteria for user stories. See why some call acceptance criteria conditions of satisfaction.Then understand how this is different from the definition of done, again with examples.
    Explore User Stories with Mountain Goat
    * Mike's Free eGuide to User Stories bit.ly/3YTgGMQ
    * All About User Stories: A Blog Series bit.ly/3KUgUNU
    * User Stories & Story Writing Training bit.ly/3OOuYJJ
    * More on Acceptance Criteria: www.mountaingoatsoftware.com/...
    Inside this Video
    00:00 Introduction
    00:39 Acceptance Criteria Defined
    00:50 Example Acceptance Criteria
    01:38 Acceptance Criteria Are Specific to One Story
    01:56 What Is a Definition of Done?
    02:08 Example Definition of Done Items
    02:45 Difference between Acceptance Criteria and Definition of Done
    03:37 Using Definition of Done and Acceptance Criteria

КОМЕНТАРІ • 132

  • @eniolaboluogun8462
    @eniolaboluogun8462 Рік тому +17

    Mike, I must appreciate you for making this video concise and fun to watch. You are the reason why I have succeeded with Agile over the years. Thank you!

  • @georgwagner5577
    @georgwagner5577 3 місяці тому +2

    Once upon a time I heard something like "macro and micro level" - sounds like terms used by a typical manager. Thank you, Mike :)

  • @Relicarious
    @Relicarious 5 місяців тому +4

    Very much on board with this.
    I often explain it like this:
    The acceptance criteria are usually about the content of the feature and are readily verifiable to a stakeholder (could be the user from the user story), e.g. it has buttons, it's pink, it's available on Thursdays.
    The definition of done is about the quality or finish of the craftsmanship on the feature and the process surrounding it, e.g. we have unit tested to so-and-so level, we have received thumbs up from at least one stakeholder, at least two developers have an understanding of the way it works.
    It then follows that usually
    Unmet acceptance criteria means feature not finished.
    Unmet definition of done means technical debt.
    Extra important to be diligent about definition of done because the receiver will let us know if the criteria for acceptance went unfulfilled whereas definition of done rarely has an active champion outside the team. And for sustainable production we need both upheld.

    • @MountainGoatSoftware
      @MountainGoatSoftware  5 місяців тому +1

      Well said.

    • @sayedfaiztanvir4733
      @sayedfaiztanvir4733 2 місяці тому +1

      You have given extraordinary definition and differences. Very much understandable. Appreciate this!

    • @Relicarious
      @Relicarious 2 місяці тому

      @@sayedfaiztanvir4733 Thank you for saying this to me, I am very happy it is of use to you. 🧡
      My definitions are distilled from some years of experience and a habit of regularly returning to drink from the fresh water streams trickling down the sides of the mountain of the goat. I truly enjoy how we enrich everyone when we exchange and challenge our definitions and understandings like this.

    • @sayedfaiztanvir4733
      @sayedfaiztanvir4733 2 місяці тому +1

      @@Relicarious : Scrum is simple and must be explained and understood in a simpler ways. You have given an insightful lesson on "Definition of done" and " Acceptance criteria"

    • @Relicarious
      @Relicarious 2 місяці тому

      @@sayedfaiztanvir4733 🙏🧡

  • @maddog_j4canikon
    @maddog_j4canikon Місяць тому +1

    Thank you Mike, great and easy to understand contribution to comon sense in agile wording.

  • @PZamani
    @PZamani Місяць тому +1

    Dear Mr. Mike, i just find your great video's today. just let you kindly know, i learned alot from your video's. Thank you. Regards, Pedram (The Netherlands)

  • @charlottesmith6316
    @charlottesmith6316 Рік тому +2

    One of the GOATS! thank you Mike ! Love your videos :) Very concise and easy to understand- plain english! love it

  • @user-ok3ws6to2i
    @user-ok3ws6to2i Рік тому +3

    Brilliant, so clear. Thanks. 💗💗

  • @Kate_D
    @Kate_D 2 місяці тому +1

    You are the saviour! Such a nice explanation 🎉

  • @DonPapiChulo
    @DonPapiChulo 6 місяців тому +3

    Never seen this topic explained so well. Awesome content!

  • @cbaloch
    @cbaloch 11 місяців тому +1

    I have gone through different videos on DOD. But this was is very insightful, different and practical. Thank you

  • @ABS2525
    @ABS2525 Рік тому +3

    Your training skills are outstanding. You make everything clear and simple, with your helpful examples and visuals. Excellent work!! Many thanks for making these.

  • @1ancore
    @1ancore 9 місяців тому +1

    Thank you for this video Mike, very clear and straight to the important points. I had a good understanding of 'Acceptance Criteria' but wasn't too sure about 'Done', I do now - thank you.

  • @kalocarlos707
    @kalocarlos707 9 місяців тому +1

    Concise, clear. Thanks

  • @bidishasinha895
    @bidishasinha895 8 місяців тому

    the end portion was really smart way of demonstrating :)

  • @ChrisLuttrell
    @ChrisLuttrell Рік тому +1

    Thank you Mike! Your videos are as great as your books.

  • @jonno946
    @jonno946 Рік тому +1

    That's the slickest segway to subscribing I've ever seen 👍 great channel Mike

  • @WaqasAhmed-ub4ht
    @WaqasAhmed-ub4ht Рік тому +1

    Simple and to-the-point explanation! Nicely done Mike.

  • @user-do7pj4fy9s
    @user-do7pj4fy9s Рік тому +1

    Thanks for this simple explanation!

  • @sunnyprabhat
    @sunnyprabhat Рік тому +2

    Wow! Very nicely and precisely explained the difference, Mike! Appreciate you making this video to help the larger audience get the clarity of thought and concepts clearer. Thank you!

  • @senthil9037
    @senthil9037 Рік тому +1

    Amazing Mike. Thanks it's simple but high value. Thank you very much.

  • @akpbrai
    @akpbrai Рік тому +1

    This is such a refreshing video I am looking forward to watching more content

  • @pas0003
    @pas0003 10 місяців тому +1

    Very succinct explanation! Thank you!

  • @syazwanitmt3509
    @syazwanitmt3509 10 місяців тому +1

    Great explanation! would be sharing this with our team's product owner and scrum master later. thank you Mike! my team tends to confuse acceptance criteria with the solution details.

  • @martynagiszczak8378
    @martynagiszczak8378 Рік тому +1

    Really nicely and simply explained topic, thank you for that, Mike :)

  • @kathycrowley8805
    @kathycrowley8805 5 місяців тому +1

    Great video with a simple definition. Will be sharing this with my team.

  • @allpurp0se
    @allpurp0se Рік тому +1

    Just in time to coach my team these 2 ideas, thanks. Awesomely acceptable video and nicely done ;-)

  • @DukingAroundDIY
    @DukingAroundDIY 6 місяців тому +1

    This was awsome

  • @loutsetmaayan1499
    @loutsetmaayan1499 Рік тому +1

    I wanted to take a moment to thank you for creating such informative videos. Your explanations are incredibly clear and professional, and I appreciate the concise format you've chosen for them. I'm especially interested in hearing your perspective on how to handle urgent bugs that pop up during a sprint, considering the traditional principles of SCRUM that discourage changing the number of tasks in a sprint. Your insights on this topic would be greatly appreciated.
    Once again, thank you for sharing your valuable content.

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому +2

      Thank you for your kind message, Loutset. I appreciate it. I've added it to my list to make a video on handling bugs but here's a short text answer: If the bug is related to a product backlog item in the current sprint, that bug should be fixed in the sprint. If it's a high-priority bug unrelated to current work and that happens often, a good approach is to maintain a buffer in your sprint that will be used for that type of bug. Just as an example, say 50 hours. Then as bugs are found you subtract their effort from the 50 hour buffer and use that to help stakeholders decide if the bug is important enough to do (since it becomes clear to them that having a team spend 10 hours fixing a bug today means 10 fewer hours available for a later bug). I'll make a video on this too. Thanks for the suggestion.

  •  3 місяці тому +1

    Great explanation. Thank you!

  • @dylangabler3850
    @dylangabler3850 Рік тому

    Brilliant - so clear, thank you. 💗💗

  • @shadyleegamer
    @shadyleegamer 2 місяці тому +1

    How beautifully explained

  • @kimzia1540
    @kimzia1540 10 місяців тому +1

    im leaving a comment just cause you added leaving a comment to mu DoD. also cause i was really confused about AC and Dod before this video. thanks

  • @SowmiyaM-np5fh
    @SowmiyaM-np5fh Рік тому +1

    Great video !

  • @Jake8888
    @Jake8888 10 місяців тому +1

    Great videos, Mike. I teach Scrum and this is very useful tool for students to enhance understanding these concepts..

  • @talentedtitans8593
    @talentedtitans8593 Рік тому +1

    This is an awesome video

  • @rachnanj
    @rachnanj 9 місяців тому +1

    Great explanation, would love for you make a video on Defination of Ready and it's relevance in scrum best practices. Thank you

    • @MountainGoatSoftware
      @MountainGoatSoftware  9 місяців тому +1

      @rachnanj As it happens, a video on Definition of Ready is scheduled to come out on November 1st!

  • @homonaledi5024
    @homonaledi5024 6 місяців тому +2

    Thanks for the simple explanation. Now I've met my DoD criteria.

  • @rabihalitani8988
    @rabihalitani8988 Рік тому +1

    Hi Mike. Thank you for this informative and concise video. It will be great if you explain how users stories are written in Project management software and how development team deals with this users stories for development.

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому

      Hi Rabih, How you write the actual stories won't vary between different project management software. But you'll enter them differently in each tool. There are too many tools for me to be proficient with them all.

  • @salvn
    @salvn 9 місяців тому +1

    It wasn't part of my DoD but thank you :)

  • @iriblue
    @iriblue 6 місяців тому +1

    Such a great video! As a scrum master, it is difficult to lead a team if you are not from the technical profession and participate in writing the definition of done and acceptance criteria.

    • @MountainGoatSoftware
      @MountainGoatSoftware  6 місяців тому

      Making sure that everyone knows and understands what it means to be done can avoid a lot of headaches!

  • @sonyjumper111
    @sonyjumper111 6 місяців тому +1

    The last part made me understand it best :D

  • @stevekdaniel
    @stevekdaniel Рік тому +1

    Precise 🫡 thanks sir

  • @smarello89
    @smarello89 Рік тому +1

    Thank you Mike for the clear and quick explanation!
    Could we also say that another difference is that while AC are mostly related to the functional part of a PBI, the DoD is more related to the technical part?
    When working with teams and writing AC, I often ask questions like "How can the user tell that this feature has been fully implemented?", instead when we must agree on a DoD I ask something like "What should we complete in order to consider our job done on a PBI?"

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому +1

      I like that---I think functional vs. technical is a good distinction. Nice!

  • @anjanchidige
    @anjanchidige 9 місяців тому +1

    Thanks, Mike for the crisp video. I have a question. You mentioned an example in the video, "Search Wine" and its Acceptance Criteria is "Search by Wine Type", "Search by price range" etc. What I think, are the items mentioned in the User Stories and how the user will see them as search by options on the User Interface. Please correct me, if I am wrong.

    • @MountainGoatSoftware
      @MountainGoatSoftware  9 місяців тому

      Good question. These are definitely acceptance criteria but they do have implications for the UI. "Search by Wine Type" will need to be in the UI somehow for users to do it. But this doesn't say whether it will be dropdown list of wine types, a set of radio buttons on the screen, or even checkboxes on the screen (so more than 1 can be chosen).
      Ideally a user story would not specify those UI factors.

  • @wifeofkhan9375
    @wifeofkhan9375 8 місяців тому +1

    Done!

  • @jehankothari8749
    @jehankothari8749 Рік тому +1

    So many pages compressed in simple 5 mins video. Thank you for saving our time :) Sir can you please make a video on how you guide teams from breaking down story points into tasks? I have read many different opinions on this. Thank you!

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому

      Will do. I've added that to my backlog. The short answer is that during sprint planning teams discuss the work needed to deliver a product backlog item and identify tasks. Tasks should be no more than a day of effort. Tasks do not need to be estimated but many teams will do so at least initially. The estimates are little more than quick guesses used to help the team decide if the backlog item can fit into the sprint. These estimates can be in good old hours because one person will be doing each task so points aren't needed on tasks. (This is because a big reason to use points is so that people of different skill levels can agree on an estimate, which isn't needed on tasks.)
      I hope that helps as a start.

    • @jehankothari8749
      @jehankothari8749 Рік тому +1

      @@MountainGoatSoftware Thank you for such an elaborate response and putting it in backlog. I really appreciate it. Actually with my first team, I didn't find any issue because team comprised of mostly mid to senior people. But now, the range has expanded from junior to senior and task level work is going wide on guesses. I find it sometimes hard to bring a balance between this. Seniors accompany junior to improve their knowledge on programming side when such things happen. The better team spirit is not allowing to blow it out of context but I am still looking for better way if any.

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому

      If task estimates are often wrong, there are a few things you can do. First, ask questions like, "What has to go right for you to finish in that amount of time?" or "What could make that estimate be wrong (or too low)?"
      Second, use a technique known as "unpacking." This involves asking a person to name the steps in the work (the subtasks in this case). Then have them estimate the parent task---not the subtasks. Unpacking an item then estimating it has been shown to help.

    • @jehankothari8749
      @jehankothari8749 Рік тому +1

      @@MountainGoatSoftware correct! Let me blend this thing and see how it goes. Very much appreciated. I learned something new today😃

  • @albertchapman5281
    @albertchapman5281 Рік тому +1

    Compliments, great job! I am PMP and leading SAFe certfied with 10 years on IT projects, but 15 Business projects.
    So can we sum up and say DoD is more at Product or Releases level, and AC is more Sprint level by Story?

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому

      Thanks, Albert. I don't think that description gets it quite right. The items on a Definition of Done need to be true of each product backlog. It's just that they are more universal so we elevate them to the DoD. Think about one like "must be thoroughly tested." I don't want to say that each time for each product backlog item. So it gets elevated to the Definition of Done.

  • @randallmarcgrimm6501
    @randallmarcgrimm6501 Рік тому +1

    I like to think in terms of functional and non-functional.

  • @user-ey4ef2do2i
    @user-ey4ef2do2i 4 місяці тому +1

    Thank you for yours videos, I have a question, Is the definition of done (dod) for a user story and task are same?

    • @MountainGoatSoftware
      @MountainGoatSoftware  4 місяці тому +1

      You're welcome. The definition of done is for product backlog items (commonly stories). They can't be for tasks as tasks are too different. A team might have a task of "Hold design review with lead users." That's done when the meeting is over (or perhaps when someone writes some notes). A testing task, on the other hand, isn't done until something passes all tests.

  • @connor5446
    @connor5446 9 місяців тому

    Hi Mike, In your opinion is there, or should there be, a difference for the DoD for Epics vs Stories?

    • @MountainGoatSoftware
      @MountainGoatSoftware  9 місяців тому +1

      No, I think they should have the same DoD. Most teams, however, will split an epic (big story) into smaller ones so they don’t work directly on the epic but rather than its parts.

  • @burrillgray4812
    @burrillgray4812 3 місяці тому +1

    Thanks Mike very helpful.
    Question:
    I had a stakeholder recently ask me when to create the DoD and when is the acceptance criteria created?
    Our product focus was building a corporate-wide supply chain finance/accounting tool. In our PBL we had five « functionality buckets » each one of which addressed a broader customer need/problem. We had a DoD for each « functional bucket. » Our DoDs evolved with each refinement session, so in this context DoDs pertained to the Product Backlog items.
    Conversely, we identified and finalized our acceptance criteria for Sprint Backlog items during each Sprint Planning session.
    Is there a better more timely way to do this?
    Thank you

    • @MountainGoatSoftware
      @MountainGoatSoftware  3 місяці тому

      That sounds like good timing for DoD but I might suggest creating acceptance criteria a little earlier. The DoD should be created early on and refined over time so every dev knows what is required. Acceptance criteria are created during backlog refinement before the user story is brought into the sprint. The goal is to ensure that everyone (devs, Product Owner, etc) knows what the criteria are before we start working on the item.

  • @dlcox40
    @dlcox40 Рік тому +1

    Do you have materials dedicated to operational and support teams? Other than using kanban and WIP limits, how else can we introduce or utilize agility for these teams who operate primarily in unplanned work?

  • @rudranshparab2007
    @rudranshparab2007 Рік тому +1

    Nice and short video. I came across a person he is saying they estimate user story. 1 point = 6 hours.
    Is that acceptable. Currently I am reading your book agile estimation . Not yet finished.

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому

      Hi. Thanks for your comment. The short answer is "Don't equate story points to hours." Here's a blog that explains why: www.mountaingoatsoftware.com/blog/dont-equate-story-points-to-hours

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому

      Great question. No, equating 1 story point to a fixed number of hours (6, 3, 800, etc) is *_wrong_* . If someone does that they might as well just call the hours or days. The point of points is that they are relative so people who perform at different rates can agree on an estimate. A junior and senior programmer can both agree that Item A will take half the time of Item B, but the Senior may be thinking 1 day and 2 days while the Junior is thinking 1 week and 2 weeks.

  • @providentia3103
    @providentia3103 Рік тому +1

    who should be writing the acceptance criteria? often the Prod Owner or a delegate of the PO (which is a BA) does that, any comments?

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому

      Acceptance Criteria (also know as Conditions of Satisfaction) should be written by the PO since it is the criteria that must be met in order for the PO to accept the done increment.

  • @vo-Blog
    @vo-Blog Рік тому +1

    What will you do for a non-digital product; definition of done.

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому

      The idea is still the same. A definition of done applies to all (or nearly all) of the backlog items and an item must meet it in order to be considered done. It depends on your product but for a cake shop it might be something like "the batter has been taste tested".

    • @vo-Blog
      @vo-Blog Рік тому +1

      @@MountainGoatSoftware thanks for the feedback. What I have noticed mostly is referring it to more digital goods. But when managing a non-digital product, the definition of "Done" sometimes have an inbuilt dependence. This is because, like your example, cake taste is based on the human sensitive of the tongue.

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому

      @@vo-Blog Take a look at this article on a multi-level definition of done that I use with hardware companies. www.mountaingoatsoftware.com/blog/multiple-levels-of-done

    • @vo-Blog
      @vo-Blog Рік тому +1

      @@MountainGoatSoftware thanks for sharing and it's really informative 👍

  • @bravokarthi6600
    @bravokarthi6600 10 місяців тому +1

    Where are the DoD maintained in a Sprint

    • @MountainGoatSoftware
      @MountainGoatSoftware  10 місяців тому

      Because the Definition of Done applies to everything the team works one (unlike the acceptance criteria for one product backlog item) it doesn't change very often. It is generally documented wherever the team keeps shared information. That could often a wiki or a tool like Notion that is a team home page.

  • @KeremPARLAKGUMUS-uc4xb
    @KeremPARLAKGUMUS-uc4xb Місяць тому

    Dod is written for all user stories OR for each user story you wrte DoD ?

    • @MountainGoatSoftware
      @MountainGoatSoftware  Місяць тому

      Definition of Done is for all stories. Acceptance Criteria are for specific stories that need to be met in addition to the Definition of Done.

  • @phenry9999
    @phenry9999 Рік тому +1

    OH! You elevated the common criteria to the DoD?! DoD is universal where as the AC is specific to that card\ticket. Oh, ok, that's easy to understand\explain.

  • @giovanninabil6950
    @giovanninabil6950 Рік тому

    Honest question,
    do you sometimes have shower thoughts that Agile is just full of bullshit but you just keep those thoughts to yourself and never speak about them to anyone??

    • @MountainGoatSoftware
      @MountainGoatSoftware  Рік тому

      Not at all. If it were bullshit, I wouldn't devote my life to it. I've seen agile improve too many teams and the lives of too many developers to think it's BS.

    • @giovanninabil6950
      @giovanninabil6950 Рік тому +1

      @@MountainGoatSoftware haha you're man of integrity.
      I guess my team is just missing a good agile coach 😉

  • @RustyTricycle69
    @RustyTricycle69 3 місяці тому

    Great video!