Definition of Done in der Qualitätssicherung

Die «Definition of Done» ist ein Teil der Qualitätssicherung in Scrum. Sie beschreibt die für alle Entwicklungspakete verbindlichen Qualitätsrichtlinien, wird vom Scrum-Team gemeinsam definiert und gilt ausnahmslos für alle umgesetzten Product Backlog Items.

Manche Teams nutzen die Definition of Done auch wie eine Checkliste, in der für jedes umgesetzte Feature markiert wird, welche Anforderungen umgesetzt wurden. Nur wenn ein so erstelltes Feature allen Anforderungen der Definition of Done entspricht, wird der Product Owner zulassen, dass es Teil des Increments des Sprints wird und dem Kunden anlässlich des Sprint-Reviews präsentiert wird. Umgesetzte Anforderungen, welche nicht vollständig der Definition of Done entsprechen, fallen bei Sprintende zurück in den Produkt Backlog und werden dort neu priorisiert. In vielen Fällen werden sie im nächsten Sprint wieder übernommen, in manchen Fällen kann es aber sein, dass sie entweder nicht mehr die notwendige Priorität besitzen, um sogleich fertiggestellt zu werden, oder in seltenen Fällen sogar ganz wegfallen.

Es gilt eine klare 100%-Regel. Was auch nur in Details nicht den Anforderungen der Definition of Done entspricht, ist nicht fertig und darf nicht in den Release aufgenommen werden, selbst wenn dies bedeuten würde, dass damit ein wichtiges Feature nicht in einem bestimmten Release vorhanden ist.

Der Scrum-Guide schreibt dazu:

«Die gleiche Definition leitet das Entwicklungsteam bei der Entscheidung, wie viele Product-Backlog-Einträge es während des Sprint Plannings selektieren kann. Der Zweck eines jeden Sprints ist es, Inkremente potentiell auslieferbarer Funktionalität zu liefern, die der aktuellen Definition of Done des Scrum-Teams entsprechen.

Entwicklungsteams liefern jeden Sprint ein Inkrement an Produktfunktionalität. Dieses Inkrement ist vollständig verwendbar, so dass der Product Owner sich jederzeit dazu entscheiden kann, es zu releasen. Wenn die Definition of Done für ein Inkrement Teil der Konventionen, Standards oder Richtlinien der Entwicklungsorganisation ist, müssen alle Scrum-Teams diese als Minimalziel befolgen.» (Scrumguide, Version 2017)

Die Definition of Done umfasst typischerweise Informationen wie:

  • Richtlinien der Entwicklungsorganisation und Entwicklungsprozesse
  • Organisatorische Prozesse
  • Standards, welche es zu berücksichtigen gilt
  • Qualitätskriterien
  • Definitionen, welche Tests und Dokumentationen erstellt werden sollen