Kanban im Überblick: Wie funktioniert diese agile Methode?

Der Kanban-Prozess ist ein Prozess der agilen Softwareentwicklung. Wie auch SCRUM hat Kanban Vor- und Nachteile.

Was ist Kanban?

Kanban ist zunächst ein Modell zur Produktionssteuerung gewesen. Ähnlich zu diesem Modell geht es auch in der Softwareentwicklung darum, parallele Prozesse abzubauen, um die bereits vorgefertigten Teile zum Abschluss zu bringen. Dies führt zu kürzeren Durchlaufzeiten einzelner Produkte (Software-Iterationsschritte) und zu schnelleren Releasezyklen.

Das Kanban-Board

Das Kanban-Board ist ein zentrales Element im Bereich Kanban. Es wird im Grunde durch eine einfache Tabelle abgebildet. Die einfachste Version stellt sich als Tabelle mit drei Spalten dar:

  1. Todo
  2. In Progress
  3. Done

Während Spalte zwei auf eine bestimmte Anzahl an Aufgaben begrenzt wird, können in den Spalten eins und drei beliebig viele Aufgaben (zum Beispiel dargestellt durch Klebezettel) abgelegt werden. Dabei muss bedacht werden, dass die Aufgaben in Spalte eins nach Abarbeitungsreihenfolge sortiert sein müssen. Sobald eine Aufgabe aus der Todo-Liste bearbeitet wird, wird sie in die „In Progress“-Spalte verschoben. Ist sie fertig, wird sie in die Spalte „Done“ verschoben – alternativ kann sie auch wieder nach „Todo“ zurückwandern.

Durch die anzuwendende Regel, dass in Spalte zwei nur eine begrenzte Anzahl an Aufgaben stehen darf, wird das Ziel der schnelleren Abarbeitung von Aufgaben gewährleistet. Geringere Fokuswechsel bedeutet weniger Verlust durch selbigen Overhead. Die Aufgaben werden in kürzeren Zeiten abgearbeitet und können somit auch schneller Geld einbringen.Natürlich kann dieses Board beliebig erweitert werden – es können Spalten wie „Test in Progress“, „Review in Progress“ oder ähnliches hinzukommen. Wichtig ist nur, dass jede Spalte zwischen der ersten und letzten Spalte (zwischen dem „Backlog“ und der „Erledigt“-Spalte) in der Anzahl der simultan darin abgelegten Tasks begrenzt sind.

Kanban Nachteile

Kein Vorgehensmodell ist perfekt. Dadurch lässt sich logisch schließen, dass jedes Entwicklungsmodell auch Nachteile hat. Einer der Nachteile ist das Starke Bedürfnis des Prozesses nach Disziplin aller Beteiligten. Sobald auch nur eine Person aus der Reihe fällt und sich nicht an eine der (wenigen) Regeln hält, gerät der Prozess schnell in’s wanken. Ebenso bietet das Vorgehen insofern keine „Eigenstabilität“, als dass es keine festen Zyklen gibt, in denen gearbeitet wird. Daraus folgt natürlich, dass sich jederzeit Priorisierungen oder die Reihenfolge der Abarbeitung von Aufgaben ändern können.

Kanban Vorteile

Vorteile sind unter anderem, dass die Reihenfolge von Aufgaben ständig geändert werden kann. Das führt zu einer extrem hohen Flexibilität. Ebenso ist der gesamte Prozess sehr „lean“, das heißt sehr schlank. Es gibt tägliche Standup-Meetings und unregelmäßig stattfindenden „Operations Reviews“ (eine Art Retrospektive). Fügt man diese beiden Meetings noch mit dem Begriff der „Root cause analysis“ (dem Beheben der Wurzel eines Problemes), so landet man direkt beim Kaizen.

Zusammenfassung

Zusammengefasst kann man sagen, dass Kanban sehr von der Flexibilität lebt, welche es bietet. Es ist ein sehr schlankes Vorgehensmodell der Softwareentwicklung und bietet eingespielten Teams sehr viele Möglichkeiten, die Workload zu optimieren. Für Teams, welche sich neu im Sektor der agilen Softwareentwicklung befinden, empfehle ich allerdings SCRUM. Dieses setzt auf ein paar mehr Regeln, besitzt ein etwas starreres Grundgerüst und gibt dadurch einen etwas strengeren Rahmen – für Anfänger ist es damit deutlich geeigneter, um erste Erfahrungen zu sammeln.

Schreibe einen Kommentar