Definition of Done

Mittwoch, 2. Januar 2019
Dieser Blogartikel beschreibt den Agilen Baustein Definition of Done.

Die Definition of Done (kurz DoD) erzeugt ein gemeinsames Verständnis innerhalb des Teams, wann eine Arbeit/eine Task fertig („done“) ist. Sie ist eine Liste mit Fertigstellungskriterien bzgl. Artefakte unterschiedlicher Granularität (Anforderungen, Epics, Features, usw.), die zur Erstellung des Gesamtprodukts benötigt werden. Die Kriterien stellen für die Task-Durchführung die relevanten Qualitätsmerkmale wie Skalierbarkeit, Gebrauchstauglichkeit etc. dar und operationalisieren sie mittels hart prüfbarer Entscheidungspunkte. Diese Abnahmekriterien sind für das Entwicklungsteam bei der Implementierung maßgeblich, da von vornherein dagegen gearbeitet wird. Die DoD wird durch das Entwicklungsteam und, im Fall von Scrum, zusammen mit dem Product Owner erstellt.

Beispiele für Punkte einer Definition of Done können sein:

  • Alle Akzeptanzkriterien werden erfüllt.
  • Die Release Dokumentation wurde um die neuen/geänderten Features angepasst.
  • Es wurde ein Code Review durchgeführt.
  • Coding Guidelines und Standards wurden eingehalten.

Ziele

  • Projekttransparenz
  • Dokumentation
  • Testbarkeit / Abnahmekriterien

Vorteile

Die DoD bewirkt anhand ihrer strikten Akzeptanzkriterien, die vor dem Beginn der Tätigkeit festgelegt werden, eine höhere Qualität der Artefakte und somit des Gesamtproduktes, da die Ziele im Vorfeld konkretisiert vorliegen. Sie hält eine Liste von Fertigstellungskriterien bereit, welche ebenso die Aktivitäten vor der Implementierung beeinflusst und leitet (z.B. Schätzung, Design). Die DoD kann als Vertrag zwischen Entwicklungsteam und Kunde/Product Owner gesehen werden, durch den Missverständnisse und Konflikte reduziert werden.

Außerdem macht die Erstellung einer DoD den Vertrag explizit und hilft damit allen Beteiligten bei der Gewinnung der wünschenswerten Projekttransparenz.

Anwendung

Vorbedingungen

Es muss eine klare Aufteilung in Arbeitseinheiten (z.B. User Stories, Features, Epics etc.) erfolgt sein, um für diese Arbeitseinheiten konkrete Kriterien für die DoD festzulegen.

Nachbedingungen

Die DoD selbst ist (seiten-) effektfrei, d.h. kein Arbeitsergebnis wird in irgendeiner Weise geändert. Die Nachbedingung ist vielmehr das entstandene Wissen, inwieweit die im Vorfeld formulierten Zieleigenschaften eines Ergebnisses erfüllt sind.

Variationsparameter

Bei der Anwendung des DoD gibt es Freiheitsgrade hinsichtlich des Weglassens / Verwendens von bestimmten Kriterien für bestimmte Ergebnisteile.

Fallstricke

Eine überdimensionierte Liste mit Fertigstellungskriterien kann kontraproduktiv sein, indem sie zu viele kleinteilige Tasks mit jeweiligen Fertigstellungskriterien enthält. Das Ausmaß der Liste sollte auf das Minimum der erforderlichen Arbeit reduziert werden, um das Artefakt in „done“ zu überführen. Eine Priorisierung der Anforderungen ist hier hilfreich (etwa in must, should und could), wobei im DoD lediglich die must-Kriterien festgelegt sein müssen.

Ein fehlendes gemeinsames Verständnis bzgl. der expliziten Team-Definition des „Done“ führt zum Verlust der Effektivität der DoD, da dann die Bewertung des DoD-Ergebnisses mehr Zeit benötigt, als die Überarbeitung des analysierten Teilergebnisses.