Einführung in KANBAN

Was ist das KANBAN-Prinzip?

Der aus dem Japanischen stammende Begriff „Kanban“ kann übersetzt werden mit Karte, Tafel, Beleg oder auch Behälter. Über ein solches Instrument oder eine solche Auszeichnung werden Informationen weitergegeben. Verbreitet ist das 1947 von Taiichi Ohno, dem Erfinder des Toyota-Produktionssystems (TPS), entwickelte Vorgehen in der industriellen Produktion bzw. Fertigung. Umgesetzt wird damit das als Pull- oder Hol-Prinzip bekannte Steuerungsverfahren.

Prinzipien des KANBAN-Prinzips

Kanban beruht auf sechs einfachen Prinzipien. Wer Kanban als Methode des Lean Managements umsetzen möchten, sollte sie beachten, um alle Vorteile nutzen zu können.

  1. Klare Regeln: Alle Vorgaben und Vorgehensweisen müssen transparent kommuniziert werden, damit alle Beteiligten sie verstehen und umsetzen können.
  2. Aufgabenlimit: Die Anzahl der Kanban-Karten muss überschaubar und auf die Anzahl der Aufgaben abgestimmt sein.
  3. Workflow: Der Wertstrom muss fließen – es müssen also immer Kanban-Karten mit dem Status „In Progress“ vorhanden und damit Aufgaben in Bearbeitung sein.
  4. Kontinuierlicher Verbesserungsprozess (KVP, Kaizen): Alle Kanban-Prozesse sind immer wieder zu hinterfragen, zu analysieren und zu bewerten, um unproduktive Vorgehensweisen aufzudecken und zu eliminieren und so die Effizienz zu erhöhen.
  5. Leadership: Vorgesetzte müssen die Beschäftigten so führen, dass diese sich dafür verantwortlich fühlen, den Workflow aufrechtzuerhalten, und sich aktiv für die Optimierung von Abläufen einsetzen.
  6. Modelle: Die modellhafte Darstellung von Abläufen führt zu einem besseren Verständnis der Prozesse und kann effizientere Lösungen sichtbar machen.

Wie passt das Kanban-System in den agilen Ansatz der IT-Projekte?

Kanban kann als System oder Framework unter dem breiten Dach der agilen Softwareentwicklung eingesetzt werden. Es besteht eine natürliche Kompatibilität, da sowohl Agile als auch Kanban darauf abzielen, Teams dabei zu helfen, ein optimales Gleichgewicht zwischen Disziplin und Anpassungsfähigkeit zu finden, um die Anforderungen des Marktes möglichst effektiv zu erfüllen. Es gibt eine konzeptionelle Debatte darüber, ob Kanban „Agil“ ist oder nicht. Auf diese Debatte wollen wir hier nicht eingehen, und sie interessiert uns auch nicht besonders. Kanban wird allgemein als eine der zahlreichen agilen Methoden oder Systeme akzeptiert. Sie alle verfolgen das zentrale Ziel, auf Veränderungen anpassungsfähiger und reaktionsfähiger zu werden und dadurch die Effizienz des Teams und die Qualität der Ergebnisse zu steigern. Obwohl Anderson Kanban als Softwareentwicklungssystem populär gemacht hat, lehnt er die Interpretation als Softwareentwicklungsprozess ab. Er zieht es vor, Kanban im weiteren Sinne als eine Methode zur Verwaltung, Gestaltung und Verbesserung von Flow-Systemen für Wissensarbeit zu definieren, um einen besseren Wert für die Verbraucher zu schaffen.

Kanban und DevOps

Die Kanban-Methode wird auch als kompatibel und ergänzend zu DevOps angesehen. Das ist möglich, weil DevOps, wie Agile, eine Kultur oder Denkweise ist, während Kanban eine Methode, ein Rahmen oder ein System ist. Auch hier gibt es Vermutungen und Debatten, aber am einfachsten lässt sich DevOps als Erweiterung des agilen Ansatzes auf ein „neues Publikum“ beschreiben – den IT-Betrieb.DevOps vereint Entwicklungs- und Betriebsteams als ein einziges agiles Softwareentwicklungsteam mit einem gemeinsamen Ziel – bessere Software, die einen höheren Mehrwert für die Benutzer bringt. Außerdem tragen sie gemeinsam die Verantwortung für die Verwirklichung dieses Ziels. Kanban ist eines der Systeme, die implementiert werden können, um einem Softwareentwicklungsteam dabei zu helfen, die Effizienz bei der Bereitstellung dieses Mehrwerts zu visualisieren und zu verbessern. Als System/Methode arbeitet Kanban mit der Agile- und DevOps-Kultur/Mentalität zusammen.

Scrum und Kanban

Scrum und Kanban sind alternative agile Methoden oder Systeme, die lediglich unterschiedliche Wege mit eigenen Routinen und Ritualen, aber demselben Ziel vorgeben. Kurz gesagt, ein Scrum-Team arbeitet in einer Reihe von Sprints mit einem klar definierten Anfang und Ende. Im Gegensatz dazu ist Kanban ein kontinuierlicher Prozess, es gibt also kein Sprint Backlog. Beide Methoden sind in der modernen Softwareentwicklung beliebt und haben ihre jeweiligen Stärken und Schwächen. Eine hybride Methode, die Elemente von Scrum und Kanban kombiniert, Scrumban, wird von Softwareentwicklungsteams sogar noch häufiger verwendet als Kanban als alleinstehendes System.

Kanban-Board

Das Kanban-Board und die Kanban-Karten Das Kanban-Board ist für die meisten Praktiken des Systems von zentraler Bedeutung, vor allem für die Visualisierung der Arbeit, die Begrenzung der laufenden Arbeiten (WIP) und die Steuerung des Workflows. Das Kanban-Board kann physisch sein, wird aber in Software-Entwicklungsteams meist digital verwendet, vor allem, wenn die Teammitglieder zeitweise oder ganz an anderen Orten arbeiten. Arbeit in Form von Aufgaben (bei agilen Entwicklungsteams oft als User Stories definiert) wird auf das Kanban-Board gezogen und visuell durch farbige Karten dargestellt. Die Anzahl der auf das Kanban-Board gezogenen Aufgaben sollte der Kapazität des Entwicklungsteams entsprechen und den WIP entsprechend begrenzen.

Die Boards sind in Spalten unterteilt, die verschiedene Stadien der Fertigstellung einer Aufgabe darstellen. Die einfachste Kanban-Boardstruktur hat nur wenige Spalten: