Definition of Done – Mehr als eine Checkliste
Die Definition of Done (DoD) ist ein wichtiges agiles Werkzeug, das Teams dabei hilft, Arbeit zu planen und durchzuführen. Im Prinzip besteht die Definition of Done aus einer Reihe von Kriterien, die das Produkt erfüllen muss, um als fertig zu gelten. Die Definition of Done ist für agile Teams unabdingbar. Es ist der Schlüssel zu einem qualitativ hochwertigen Produkt und zur Zufriedenheit des Managements. Doch obwohl das Konzept so einfach ist, ist die Umsetzung komplexer. Der Kontext und die Interpretationsmöglichkeiten bilden nämlich eine Grauzone.
Kontext und Akzeptanzkriterien
Die Komplexität der Definition of Done entsteht immer aus dem Kontext der Umgebung, der technischen und funktionelle Vollständigkeit, sowie der Akzeptanz durch den Product Owner. Akzeptiert der Product Owner das Produkt akzeptiert, steht dies stellvertretend für den Wert des Produkts. Akzeptanzkriterien definieren, ob das Produkt ein bestimmtes Geschäftsproblem lösen kann, das durch die User Story oder eine Anforderung beschrieben wurde. Zudem sollen sie bestätigen, dass die Story wirklich das tut, wofür sie gedacht war.
Formal betrachtet spiegelt die Definition of Done die technischen und prozessbezogenen Standards einer Organisation. Organisationen haben oft Standards für das Schreiben von Code und die Durchführung von Unit Tests. Daher kann die Definition of Done die Anforderungen für die Struktur des Codes, die Dokumentation und des Testens enthalten. Allerdings ist die Funktionalität grundsätzlich durch die Akzeptanzkriterien etc. in der Definition enthalten. Nachdem die doppelte Hürde aus Definition of Done und Akzeptanzkriterien überwunden ist, muss der Product Owner die Lösung bewerten. Danach erfolgt die finale Bewertung, bei der er die Lösung akzeptiert oder ablehnt. Das Ergebnis dieses Prozesses wird auch als done-done oder sogar done-done-done beschrieben.
Drei Hürden bis zur Erledigung
Eine solide Umsetzung dieses Konzeptes geht von drei Hürden aus, nämlich
- den Punkten der Definition of Done,
- den Akzeptanzkriterien und
- der Akzeptanz des Product Owners.
Darüber hinaus sind jedoch weitere Fragen abzuwägen, was diesen klar strukturierten Prozess komplex macht:
Wer legt fest, was „done“ ist?
In der Regel werden die Done-Kriterien von den jeweiligen Teams selbst definiert – und zwar innerhalb der für die Organisation geltenden prozessbezogenen und technischen Standards. So können nicht einfach Unit Tests weggelassen werden, auch wenn im laufenden Prozess noch weitere Tests anstehen und die Funktionalität geprüft wird oder das Weglassen eine deutliche Einsparung im Aufwand bedeuten würde.
Ist eine Abweichung bei der Erfüllung der Kriterien akzeptabel?
Die Frage nach einer andersartigen Auslegung oder einer Umgehung der Definition of Done stellt sich regelmäßig – sie lässt sich nicht pauschal beantworten. In vielen Fällen ist es durchaus ein gangbarer Weg, da oft genug über eine Grauzone diskutiert wird, die sich auf das Auftürmen technischer Schulden und deren Tilgung bezieht. Hier sind Sorgfalt und Umsicht zu empfehlen, um nicht am Ende vor einem Schuldenberg in Bezug auf die Technik zu stehen.
Können die Bedürfnisse der Organisation über denen des Product Owners stehen?
Auch diese Frage lässt sich nicht in einem Satz beantworten: Wann die Standards der Organisation wichtiger als die Akzeptanz des Product Owners sind, sollte jedes Team einschätzen können. Auch hier besteht das Risiko, dass unter Zeitdruck Lösungen entwickelt werden, die in nachträglichen Sprints überarbeitet werden müssen. Diese Vorgehensweise bringt nicht nur die Standards ins Wanken, sondern kann die gesamte Architektur beeinträchtigen. Gestandene Organisationen formulieren klare Grenzen und Regeln, sodass keine Diskussionen zu diesem Punkt aufkommen.
DoD als springender Punkt im agilen Management
Es klingt so einfach: Die Aufgabenstellung ist erfüllt. Und doch steckt deutlich mehr dahinter, werden Kontext und Interpretationsmöglichkeiten mit einbezogen. Umso wichtiger ist eine klare Formulierung der Regeln und Standards, die Organisationen für ihre Prozesse entwickelt haben. Agilität bedeutet zwar Beweglichkeit, allerdings bedarf diese eines festgeschriebenen Rahmens, um sich in die gewünschte Richtung zu entwickeln.
Weiterlesen? Mehr dazu? Klicke hier
Einen Überblick zur Serie Scrum Basics findest du hier: Scrum Basics: Alles auf einen Blick
Schreibe einen Kommentar