Wenn du Scrum, Kanban, das Scaled Agile Framework oder auch das Scrum Board 2.0 von Jeff Sutherland kennst, dann kommen dir Capacity Allocation und / oder Puffer als Begriffe bestimmt bekannt vor. In diesem Artikel nehme ich dich auf eine Reise durch die Organsiationslandschaft mit und wir schauen uns interessante Aspekte zu diesen beiden Konzepten an. Am Ende des Artikels besitzt du einen guten Überblick und kannst entscheiden ob und wie du mit der Kapazitätszuweisung und Puffern umgehen möchtest.
Aufteilung der Arbeit in Systemen
Wenn wir Systeme betrachten durch die Arbeit fließt, dann können wir mit der sogenannten Capacity Allocation und dem Puffer die Bearbeitung dieser Arbeit beeinflussen. Beide Konzepte teilen die Arbeit, die ankommt auf ihre Art und Weise auf. Während bei einem Product Backlog alles in einer relativ sortierten Liste steht, erlauben wir mit den beiden Konzepten eine andere Art der Behandlung von Arbeit - mit Vor- und Nachteilen.
Beide Ansätze teilen die Arbeit grundsätzlich auf, in zwei oder mehrere Gruppen von Arbeit. Begrenzen wir unsere Kapazität für eine bestimmte Art der Arbeit, dann erlauben wir es mit dieser auch unterschiedlich umzugehen. Wie das aussehen kann, ist Teil der nächsten beiden Abschnitte.
Capacity Allocation
Capacity Allocation auf deutsch
Capacity Allocation auf deutsch kannst du mit Kapazitätszuweisung übersetzen. Du weist damit Arbeit eine bestimmte Kapazität (deiner Teams, Organisation, ...) zu.
Übersicht
Wenn wir uns eine Capacity Allocation ansehen, dann fällt eines sofort auf. Wir bilden Gruppen von bestimmten Typen der Arbeit. Jede Gruppe kann dabei eine eigene Priorisierung besitzen. So hast du oben in dem Schaubild zwei Gruppen von Arbeit, einmal mit drei Elementen und eine andere Gruppe von Arbeit mit sechs Elementen.
Wie du auch erkennen kannst, gibt es damit zwei mal die Position 1 in jeder Liste. In einem relativ priorisierten Product Backlog finden wir sowas nicht. Bei einer Capacity Allocation hast du pro Gruppe, die du bildest auch jede Position in gleicher Anzahl vorhanden. Damit kannst du grob sagen, jede deiner Prioritäten kommt auch entsprechend oft vor.
Wozu du diese Kapazitätszuweisung nutzen kannst
Die spannende Frage nach dem Warum steht auch hier ganz vorne. Warum solltest du mit einer Capacity Allocation überhaupt arbeiten wollen? Während ich auf die Vor- und Nachteile später noch eingehe, geht es mir hier erstmal um das Verständnis.
Wenn du bei dir eine Situation vorfindest, bei dem du bestimmte Typen von Arbeit hast, die - aus welchen Gründen auch immer - nicht mit anderer Arbeit konkurrieren soll, kannst du mit der Capacity Allocation dafür sorgen, dass diese Arbeit trotzdem in einem bestimmten Umfang zur Bearbeitung kommt.
Damit kannst du in eine natürliche Reihenfolge eingreifen und diese verändern. So ermöglicht du es auch anderer Arbeit früher an die Reihe zu kommen, als es nach reinem Wert wäre.
Herausforderungen der Kapazitätszuweisung
Was erstmal gut klingt, bringt auch Herausforderungen gegenüber einer einzigen Liste mit sich. Wo du sonst eine Position in deinem Backlog hast, hast du nun z.B. zwei mal die gleiche Position. Dabei musst du dir natürlich überlegen, wie du damit umgehst.
Oft existiert die Diskussion über die Capacity Allocation bei größeren Unternehmen. Bei kleineren Unternehmen mit wenigen Teams habe ich selten die Diskussion über so eine Technik. Mit dieser Begrenzung der Kapazität wird versucht unabhängig von einer tatsächlichen Priorisierung, bestimmter Arbeit einen garantierten Platz zuzuschreiben.
Puffer
Übersicht
"Ich brauche da einen kleinen Puffer (für Anreise zum Zug, Vorstellungsgespräch, etc.)" - die Aussage kennst du bestimmt auch und das trifft diese Technik sogar recht gut. Du lässt dir also bewusst etwas Zeit oder planst etwas passiver und baust dir damit einen Puffer auf, den du nutzen kannst oder der konsumiert wird, wenn etwas unvorhersehbares passiert.
Wenn wir von Puffern sprechen, dann reservieren wir eine Kapazität X / Zeit und verplanen diese nicht. Das kann man perfekt nutzen, wenn du zum Beispiel dein Team mit unplanbaren Aufgaben wie kritischen Fehlern umgehen muss.
Schnell ist klar, dass du natürlich nicht so viel in deinen Sprint planst, wie es möglich wäre. Du nutzt also nicht alle verfügbare Kapazität bzw. Zeit, die dir zur Verfügung steht. Das muss nicht schlimm sein, es ist immer eine betriebswirtschaftliche Abwägung. Denn Puffer sind teuer, wenn du sie nicht oder nicht richtig nutzt.
Wie du Puffer nutzen kannst
Einen Puffer auf deinem Scrum oder Kanban Board zu nutzen geht zum Beispiel mit einer Swimlane recht einfach. Wie du im Folgenden Bild siehst, kannst du dir eine weitere Zeile auf deinem Board erstellen und dort die reservierte Zeit / Story Points / ... abbilden.
Dabei gibt es natürlich unterschiedliche Wege - manche Teams schreiben eine Prozentangabe an die Swimlane, um ein Gefühl dafür zu bekommen.
Beispiele
Schauen wir uns nun noch zwei einfache Themen für die beiden Techniken von Puffer und Capacity Allocation genauer an.
Vorhalten von Zeit: Puffer
Eine bestimmte Zeit für die kontinuierliche Verbesserung oder auch Innovation wird "vorgehalten". Das können die Teams unterschiedlich tun, wie zum Beispiel ...
Wenn ein Team sehr stark in der produktionsrelevanten Entwicklung aktiv ist, dann kann es auch helfen, eine bestimmte Zeit nicht zu verplanen.
Wenn ich mit Puffern arbeite, nutze ich gerne eine Swimlane in meinem Board, um die Arbeit sichtbar zu machen, die über den Puffer läuft.
Sebastian Schneider
Aufteilen der Kapazität: Capacity Allocation
Wie bereits oben angesprochen, kannst du mit einer dedizierten Zeit für architekturelle Arbeiten dir eine Capacity Allocation erstellen. Damit weist du der Arbeit Architektur eine bestimmte Kapazität der Organisation / Team / ... zu.
Dafür stehen im Grunde die gleichen Dinge zur Verfügung wie auch bei dem Puffer. Wichtig ist hierbei, dass du nicht in mathematische Genauigkeit verfällst (ich habe aber 21,26% Kapazitätszuweisung), sondern es immer mit dem gesunden Menschenverstand zu betrachten.
Um deine Capacity Allocation praktisch umzusetzen, kannst du entweder (bei gleichbleibenden Werte) auch Swimlanes nutzen oder auch mit "Tags" und "Filtern" in deinem Tool arbeiten, um ein Gefühl über die Zuweisung zu bekommen
Vor- und Nachteile von Capacity Allocation und Puffern im Allgemeinen
Wie so oft kannst du das Thema von Capacity Allocation und Puffern nicht pauschal als gut oder schlecht einteilen, sondern es geht um dein Ziel und deine Rahmenbedingungen. Ich gebe dir mal die folgenden Aussagen mit.
Vorteile
- Eine Capacity Allocation ermöglicht es dir, unterschiedliche Kategorien der Arbeit bewusst zu trennen und anders zu behandeln.
Nachteile
Der Bruch mit der Agilität
Wenn wir uns der Capacity Allocation und dem Puffer nähern, dann werfe ich einmal ketzerisch den Bruch mit der Agilität in den Raum. Wie so oft ist das natürlich nur eine Perspektive auf das Thema. Lass mir dir einfach mal die folgenden Fragen zum Reflektieren mit auf den Weg geben.