Was ist die "Definition of Done" (DoD)?

Erfahrungsgemäß haben alle Beteiligten unterschiedliche Vorstellungen davon, wann eine Idee als umgesetzt betrachtet wird.

„Ungleichmäßige Arbeitsqualität und unerwartete Verzögerungen können Schuldzuweisungen an das Team nach sich ziehen und auch zu Spannungen innerhalb des Teams führen. Damit Entwickler ein Team bilden, müssen sie in Bezug auf die Qualität so aufeinander abgestimmt sein, dass sie alle in die gleiche Richtung arbeiten.“ /1/

Definition of Done

Um ein gemeinsames Verständnis herzustellen, vereinbaren die Mitglieder des Entwicklungsteams und der Product Owner eine sog. Definition of Done (kurz DoD). Alle Product Backlog Items, die fertig sind, werden ins Inkrement integriert. Die DoD zeigt, was alles zu tun ist, damit künftige Anwender die neue Funktionalität auch nutzen können. Backlogeinträge, die die DoD nicht erfüllen, kommen zurück ins Product Backlog und der Product Owner entscheidet über die weitere Umsetzung.

Jeff Sutherland berichtet, dass das Vereinbaren und Einhalten einer Definition of Done die Produktivitität des Entwicklungsteams verdoppelt. /2/

Scott Downey benutzt für seine Scrum-Schocktherapie folgende DoD als Ausgangspunkt /3/:

  • Feature fertig
  • Code fertig
  • keine bekannten Fehler
  • Abgenommen durch den Product Owner
  • Bereit für die Übernahme in die Produktivumgebung

In einem Training von Scrum Events haben wir folgende Definition of Done formuliert:

  • Der Code ist fertiggestellt und im Versionierungssystem eingespielt.
  • Es gab einen Code Review bzw. der Code wurde im Pair Programming erarbeitet
  • Vereinbarte Coding Guidelines und Standards sind eingehalten.
  • Es gibt entsprechende Unit Tests und diese stehen auf grün.
  • Alle Akzeptanzkriterien sind erfüllt.
  • Es gibt funktionale Tests für die vereinbarte Testumgebung.
  • Die Dokumentation ist aktuell.
  • Die Release Dokumentation ist aktuell.
  • Es sind keine kritischen Bugs offen.

Alle Dinge, die regelmäßig überprüft werden müssen, können gut in einer DoD abgebildet werden (z. B. Einhalten von Standards, Übersetzungen in andere Sprachen, nicht-funktionale oder betriebliche Vorgaben, Dokumentationspflichten, Sicherheitsvorgaben).

Normalerweise macht die (Entwicklungs-)Organisation Vorgaben zur Definition of Done. Wenn sie das nicht macht, erstellt das Development Team eine DoD und spricht diese mit dem Product Owner ab. Die DoD kann sich mit der Zeit ändern. Erfahrene Teams passen ihre DoD an, um die Qualität zu erhöhen, verändern sie aber nicht vollständig. Ein guter Zeitpunkt, die DoD zu ändern, ist vor dem nächsten Sprint (z.B. in der Sprint-Retrospektive).

Die DoD ist auch die Vorlage für die Aufgabenplanung. Je höher der Arbeitsaufwand ist, der sich aus der DoD ergibt, desto weniger Backlogeinträge kann das Entwicklungsteam in einem Sprint bearbeiten. Die DoD hilft in diesem Sinne dem Entwicklungsteam dabei, den Arbeitsaufwand für einen Sprint abzuschätzen.

Bitte verwechseln Sie nicht die DoD (gilt für alle Einträge) mit Akzeptanzkriterien (gilt jeweils für einen Product-Backlog-Eintrag).

Die Definition of Done ist ein wichtiger Teil der Vereinbarungen, die ein Scrum-Team zu Beginn der Arbeit erarbeitet. Wir sprechen in Trainings von Scrum Events darüber und machen sie in unseren Coaching-Terminen, z.B. bei Team Launches Workshops, zum Thema.

Der Artikel "Was ist die "Definition of Done" (DoD)?" erschien zuerst bei Scrum Events.

Links:

  • /1/ Jeff Sutherland, James O. Coplien, Lachlan Heasman, Mark den Hollander, Cesário Ramos and The Scrum Patterns Group: A Scrum Book : The Spirit of the Game. Raleigh, North Carolina and Dallas, Texas: Pragmatic Bookshelf, 2019., abrufbar unter http://scrumbook.org/value-stream/definition-of-done.html
  • /2/ siehe Scrum Inc.: Definition of Done, abrufbar unter https://www.scruminc.com/definition-of-done/
  • /3/ siehe Sutherland, Jeff, Scott Downey, and Björn Granvik. "Shock therapy: A bootstrap for hyper-productive scrum." Agile Conference, 2009. AGILE'09. IEEE, 2009