Unsere mehrteilige Kanban-Serie beschäftigt sich mit der Einführung eines Aufgabenverwaltungssystems in die Unternehmensorganisation der ADACOR.
In diesem Beitrag beschreiben wir die aktuelle Arbeit unseres Entwicklungsteams an Methoden zur Optimierung von Prozessen, Abteilungs-Boards und Tasks. So wird die Positionierung einer Karte innerhalb einer Spalte beispielsweise über ein Punktesystem realisiert.
Für Anfang des Jahres war die Einbettung der Kanban-Software in die prozessunterstützenden Systeme der ADACOR (z. B. Ticket-System und Incident-Management) geplant. Aus zeitlichen Gründen wurde dieser Schritt auf die Jahresmitte verlegt.
Aktuell liegt die Priorität auf diversen Optimierungsaufgaben.
Prozessoptimierung in der Auftragsabwicklung
Bei umfangreichen Aufträgen stellt sich die Herausforderung, dass der Aufgabenumfang auf einer Karte begrenzt sein soll. Aus diesem Grund realisierten die ADACOR-Entwickler in den letzten sechs Monaten etliche Veränderungen innerhalb der prozessualen Abläufe sowie bei den technischen Möglichkeiten der Software. Ein Beispiel: Die ADACOR betreut ein Projekt, das aus zwei Modulen besteht. Nach der Kundenfreigabe wird der Gesamtauftrag in einzelne Teilaufgaben zerlegt. Daraus entstehen vier Unteraufträge, die auf verschiedene Kanban-Karten verteilt werden.
Hierzu wurde eine separate Maske erstellt, über die aus einem Auftrag mehrere Karten erstellt werden können. Die einzelnen Abhängigkeiten zwischen den Karten werden mit Pfeilen festgelegt. Die Übersicht sieht aus wie eine Kette oder ein Baum: Eine Karte folgt der nächsten und erst wenn eine Karte erledigt ist, kommt die nächste an die Reihe.
Über eine weitere Funktion lassen sich die Karten gruppieren. Dafür legt man im System eine Gruppe an und führt die Karten darin zusammen. Mithilfe dieser Anordnung erreicht man, dass Karten in einer definierten Spalte des Boards aufeinander warten. So kann man zum Beispiel in der Softwareentwicklung alle Karten einer Gruppe in der Testing-Spalte sammeln. Sobald alle Karten eingetroffen sind, wird der Test ausgeführt. Damit erreicht man einen strukturierten Prozess, bei dem zusammenhängende Tasks auch zusammen bearbeitet werden.
Das System stellt die Karten einer Gruppe überlappend dar, wohingegen einzelne Karten als Vierecke untereinander stehen.
Aufspaltung des Entwicklungs-Boards in Konzeptions- und Arbeits-Board
Bereits kurz nach der Implementierung des Kanban-Systems in der Softwareentwicklung, stellte sich die Herausforderung die zahlreichen Konzeptions- und Entwicklungsschritte übersichtlich auf einer Tafel darzustellen. Wurden die einzelnen Konzeptionsschritte vor dem Rollout manuell durchgeführt, waren sie danach in das Entwicklungs-Board eingegliedert. Allerdings nutzte nur ein Teil der Mitarbeiter die gesamte Tafelansicht, für den anderen Teil waren zahlreiche unwichtige Spalten dabei. Um das Dilemma zu lösen, teilte man das Entwicklungs-Board in ein Konzeptions- und ein Arbeits-Board.
Um beide Boards miteinander verbinden zu können, wurde eine neue Regelfunktion erstellt. Diese lautet: „Automatisch in anderes Board verschieben“. Das heißt, der Task durchläuft zunächst das komplette Konzeptions-Board. Sobald die Aufgabe mit einer Zeitschätzung versehen, durch den Stakeholder (interner oder externer Kunde) freigegeben und in „Erledigt“ geschoben wurde, wandert sie automatisch in die Backlog-Spalte des Entwicklungs-Boards.
„Die Trennung des Gesamtprozesses in zwei separate, aber miteinander verknüpften Boards, war für uns ein Proof of Concept. Wir haben damit bewiesen, dass die Arbeit mit einem Konzeptions- und einem Work-Board funktioniert. Diese wichtige Erkenntnis könnte in Zukunft auch für andere Unternehmensbereiche interessant sein“, fasst Sebastian Krack, Teamleiter Softwareentwicklung bei der ADACOR, als Quintessenz zusammen.
Von Prioritäten, Fälligkeiten und Karten, die warten
In den letzten Monaten galt es ein weiteres Thema in den kontinuierlichen Verbesserungsprozess aufzunehmen: Das Vorgehen bei wartenden Aufgaben, welche noch nicht abgeschlossen sind. Im Fokus stand dabei die Frage, wie man wartende Karten im Board darstellen kann, ohne dass diese auf der einen Seite den Arbeitsfluss behindern und auf der anderen Seite komplett vergessen werden. Die Entwickler hatten zuerst die Idee, eine Spalte „Warten“ in das Board zu integrieren. In diese Rubrik sollten alle Karten fließen, die von ihrem Status her on hold standen. Allerdings gab es Zweifel, ob die Aufgaben in einer separaten Spalte nicht untergehen würden. Also entschied man sich für eine andere Herangehensweise: Karten, die warten, bleiben weiterhin in der Spalte „In Bearbeitung“. Denn dort bleiben Sie im Blickfeld. Infolgedessen wurde ein neuer Kartentyp definiert: „Warten“. In diese Kategorie lässt sich jeder beliebige Kartentyp umwandeln. Karten dieses Typs sind mit einem Punktabschlag von 50 Punkten in der Priorisierungsberechnung versehen und ordnen sich daher erst einmal am Ende der Spalte „In Bearbeitung“ ein.
Punktwertsystem für Priorität, Fälligkeit und Kartentyp
Ein Punktwertsystem für Priorität, Fälligkeit und Kartentyp sorgt für die Positionierung einer Karte innerhalb einer Spalte. Darüber hinaus kann eine Karte (z. B. pro Woche) weitere Punkte sammeln. Da die Punkthöhe die Reihenfolge der Karte in einer Spalte bestimmt, erreicht man, dass sie in ihrer Priorität in der Spalte immer weiter nach oben wandern. Bis sie nach einiger Zeit für den entsprechenden Mitarbeiter wieder so präsent ist, dass sich dieser mit der Aufgabe beschäftigen muss.
Dieses Vorgehen unterstützt die richtige Einsortierung der Karten in den Spalten und sorgt dafür, dass man nicht nur von der Priorität einer Karte abhängig ist. Aufgaben nur nach zeitlichen Vorgaben zu beurteilen, kann schnell zum Nachteil geraten. Spätestens dann, wenn 20 Karten dieselbe Priorität haben und es innerhalb der Priorisierung keine Abstufung mehr gibt. Sebastian Krack zeigt sich experimentierfreudig, was das System anbetrifft: „Da wir das Kanban-System selbst konzipiert und entwickelt haben, können wir verschiedene Funktionen flexibel ausprobieren. Speziell mit den Kartentypen, dem Punktwertsystem und den damit verbundenen Regeln haben wir seit der unternehmensweiten Einführung viele Experimente angestellt.“
Blinkendes Uhrsymbol signalisiert Erinnerung
Grundsätzlich soll im Taskmanagement jede Aufgabe mit einem Enddatum versehen werden. Wird das Datum überschritten, beginnt ein Uhrsymbol, das anzeigt, dass eine Karte einen Endtermin hat, zu blinken. Im Entwicklungsteam gibt es eine Prozessregel, die besagt, dass eine Aufgabe nie blinken darf. Blinkt sie trotzdem, zum Beispiel weil ein Mitarbeiter auf die Rückmeldung eines Kunden oder auf eine interne Zuarbeit wartet, muss er sich sofort mit dem Task beschäftigen. Er könnte beispielsweise dem Kunden eine Erinnerungsmail schicken, den Kollegen nach dem Stand der Dinge fragen und im Zweifel ein neues Enddatum eintragen.
Übrigens beeinflusst auch das Enddatum den Punktwert einer Karte. Je näher ein Termin rückt oder je länger er schon überschritten ist, umso höher ist die Punktvergabe. Das heißt, wenn eine Aufgabe nach Änderung des Endtermins nicht mehr vorgestern fällig war, sondern erst in einem Monat wieder fällig wird, wandert die Karte in der Spalte nach unten. Dieser Prozess gewährleistet, dass tatsächlich nur die relevanten Karten oben stehen. Um das Überfrachten der Spalten mit Karten zu vermeiden, plant das Entwicklungsteam die Einführung von Limits. Diese sollen zukünftig dafür sorgen, dass sich in einer Spalte nur eine bestimmte Anzahl an Karten oder definierten Stundenwerten befinden dürfen.
Kleine Aufgaben sofort abarbeiten
Je aufwendiger ein Task ist, umso mehr lohnt sich der Einsatz des Taskmanagements. Kleine Aufgaben werden daher in der Regel abgearbeitet, ohne den Weg über das Kanban-System zu gehen. Der Aufwand, der sonst durch die Erstellung einer Karte entstünde, wäre zu hoch. Speziell in Abteilungen wie der Softwareentwicklung lohnt sich der Mehraufwand fast durchgängig. Dafür hat man den Task richtig positioniert und kann ihn rechtzeitig abarbeiten. Ob groß oder klein, in der Entwicklung wird ohnehin jeder Task über das Kanban-Board abgewickelt. Schon allein, um alle relevanten Prozessschritte wie Testing, Deployment und Kontrolle einzuhalten.
Im Konzeptionsbereich hingegen durchlaufen nur umfangreiche Aufträge das gesamte Board. Für kleine Aufträge mit geringem Zeit- und Arbeitsaufwand (z. B. eine Textkorrektur auf der Homepage) wäre ein solcher Durchlauf zu aufwendig. Solche Kleinaufträge werden direkt im Entwickler-Board ins Backlog gesetzt und darüber abgearbeitet. Auch im Betrieb brauchen die Systemadministratoren nicht jeden kleinen Auftrag als Kanban-Karte anzulegen. Eine solche Miniaufgabe wäre z. B. die Änderung einer Benutzerberechtigung. Der Administrator benötigt nur wenige Minuten, um sich im System einzuloggen, die neue Berechtigung zu setzen und den Zeiteintrag mit dem Changelog-Eintrag zu erfassen. Auch im Management, in der Verwaltung und im Marketing werden nur größere Aufgaben mit Projektcharakter über das jeweilige Kanban-Board abgewickelt. ADACOR-CIO Andreas Bachmann erklärt, wie er das Tool persönlich nutzt: „Ich erhalte neue Aufgaben entweder aus Meetings oder per E-Mail. Ich habe mir angewöhnt, alle Aufgaben aus Meetings ins Kanban-Board zu übertragen. Das gilt auch für Arbeitsaufträge, die ich per E-Mail erhalte, es sei denn sie sind so klein, dass ich sie schnell direkt erledigen kann.“
Integration des Kanban-Tools in das Ticket-System
Der nächste Schritt in Sachen Kanban ist die Einbindung des Taskmanagements in das Ticket-System der ADACOR. Im Fokus steht dabei die Frage: Wie schafft man es, aus einem Ticket eine Kanban-Karte zur erzeugen? Diese Herausforderung ist nicht ganz trivial, weil aus vielen Tickets gar keine Karten werden sollen. Teilweise beinhaltet ein Ticket sehr viele Informationen, die nichts mit der eigentlichen Umsetzung zu tun haben. Hierbei kann man nicht einfach den Inhalt extrahieren und daraus eine Karte machen. Die Krux besteht vielmehr darin, aus einem umfangreichen Ticket, den einen wichtigen Arbeitsauftrag zu identifizieren und daraus eine Karte zu erzeugen. Eine mögliche Herangehensweise an diese Aufgabe könnte die Installation eines Plug-Ins in das Ticket-System sein. Das Modul würde dafür sorgen, dass man über das Ticket-System verschiedene Optionen ansteuern kann (z. B. Kanban-Karte erzeugen, Board, Kartentyp oder Priorität bestimmen), um die Weiterverarbeitung einer Aufgabe im Kanban-System anzustoßen.