Kanban-Projektstart für die Desktop-App: Board, WIP-Limits, Pull und Serviceklassen
https://bildung.social/@oerinformatik/
https://oer-informatik.de/javafx-kanban-projektstart
Kanban, Kanban-Board, WIP-Limit, Pull-Prinzip, Serviceklasse, Expedite, Definition of Done, Akzeptanzkriterien, Scrum, JavaFX, Mitfahr-App
tl/dr; (ca. 24 min Lesezeit): Bevor die erste Zeile JavaFX entsteht, richtet das Team ein Kanban-Board ein: Aus den Wünschen von Fahrer*innen und Verwaltung werden Tickets mit Akzeptanzkriterien, jede Spalte bekommt eine Regel für den Eintritt und ein WIP-Limit, und wer frei ist, zieht sich die nächste Arbeit. Serviceklassen regeln, was schneller gehen darf. Zum Schluss vergleichst Du Kanban mit Scrum und ziehst das erste Ticket [AI-Assisted]. (Zuletzt geändert am 11.11.2026)
Dieser Artikel ist Teil einer Artikelreihe über eine Desktop-App mit JavaFX: Übersicht / Kanban-Projektstart / Projekt anlegen / FXML, Layouts und CSS / Properties, Bindings und MVVM / Backend anbinden / TableView für Buchungen / Formulare und Dialoge / Anmeldung mit Keycloak / Verwaltung und Diagramme / GUI-Tests mit TestFX / Abnahmetest und Kanban-Metriken / Paketieren mit jpackage
Schon fit in diesem Thema? Nutze die Kann-Liste und die Leitfragen unter dem Artikel als Checkliste, ob Du die relevanten Kompetenzen bereits hast.
Dieser Artikel baut auf der Kann-Liste des Artikels Eine Desktop-App mit JavaFX: das Mitfahrlabor für Fahrer*innen und Verwaltung auf.
Als Kanban-Grundlagen kann ich nach Durchlesen des Artikels…
… die Grundsätze und Kernpraktiken von Kanban nennen und an einem Board zeigen.
… Wünsche als Tickets mit Nutzen, Akzeptanzkriterien und Serviceklasse formulieren.
… für jede Spalte eines Boards eine Regel für den Eintritt (Definition of Done der Spalte davor) festlegen.
… erklären, was WIP-Limits und das Pull-Prinzip bewirken, und an einem Board-Zustand entscheiden, ob ein Ticket gezogen werden darf.
… die Serviceklassen Standard, Expedite, Fixed Date und Intangible unterscheiden und einem Ticket zuordnen.
… Kanban und Scrum an Takt, Rollen, Begrenzung der Arbeit und Kennzahlen unterscheiden.
Darüber hinaus kann ich als Kanban-Expertenwissen…
… aus einem Board-Zustand einen Engpass erkennen und Maßnahmen vorschlagen.
… WIP-Limits für ein Team begründet wählen und mit Littles Gesetz abschätzen, wie sie die Durchlaufzeit beeinflussen.
Am Anfang eines Projekts steht selten eine ordentliche Liste. Bei der Desktop-App des Mitfahrlabors ist es nicht anders: Thomas Becker, der das Projekt für die Schule leitet, hat eine Mail mit Wünschen der Fahrer*innen weitergeleitet, Andrea Wolf hat ihre Wünsche für die Verwaltung in einem Gespräch aufgezählt, und im Projektteam liegen Notizen zu Technik, Tests und Installation. Bevor die erste Zeile JavaFX entsteht, bringt das Team Ordnung in diese Sammlung: mit einem Kanban-Board.
Am Ende dieses Artikels sieht das Board so aus wie im Bild: fünf Spalten mit WIP-Limits, eine eigene Bahn für Eiliges, Tickets in vier Farben für vier Serviceklassen, und das erste Ticket ist gezogen.
Stand auf dem Board
Jeder Artikel der Reihe beginnt mit einem Blick auf das Board. Diesmal ist der Blick kurz, denn es gibt noch keins:
| vor diesem Artikel | nach diesem Artikel | |
|---|---|---|
| Board | ungeordnete Wunschliste | fünf Spalten mit Regeln, Expedite-Bahn |
| WIP-Limits | keine | Bereit 3, In Arbeit 2, Test 2 |
| Tickets | – | JFX-01 bis JFX-12 mit Serviceklasse |
| in Arbeit | nichts | JFX-01 „Projekt anlegen“ |
Im Team sind drei Personen: Du, Oksana Melnyk, die selbst ohne Auto pendelt und das Projekt von Anfang an begleitet, und eine weitere Person aus dem Projektteam. Thomas Becker entscheidet als Auftraggeber über die Reihenfolge, Andrea Wolf ist Ansprechpartnerin für alles, was die Verwaltung betrifft.
Kanban in Kürze: drei Grundsätze, sechs Praktiken
Der Artikel Kanban erklärt Herkunft und Theorie ausführlich. Für den Projektstart reicht ein kurzer Überblick. Die Kanban-Methode nach David J. Anderson beginnt mit drei Grundsätzen, die sagen, wie man Kanban einführt:
Beginne mit dem, was Du jetzt tust. Kanban ersetzt keinen Ablauf, sondern macht den vorhandenen sichtbar. Für uns heißt das: Wir bilden die Schritte ab, die wir sowieso gehen (vorbereiten, programmieren, testen), statt einen neuen Prozess zu erfinden.
Verändere in kleinen Schritten. Spalten, Limits und Regeln sind ein Startpunkt. Das Team ändert sie, wenn es merkt, dass etwas hakt.
Führung auf allen Ebenen. Jede Person darf Verbesserungen vorschlagen, nicht nur die Projektleitung.
Daraus folgen sechs Kernpraktiken. In der rechten Spalte steht, woran Du sie auf unserem Board erkennst:
| Praktik | Was sie bedeutet | Auf unserem Board |
|---|---|---|
| Visualisieren | Jede Aufgabe ist ein Ticket, jeder Arbeitsschritt eine Spalte. | Tickets JFX-01 bis JFX-12, fünf Spalten |
| Laufende Arbeit begrenzen | Jede Spalte hat ein Höchstmaß an gleichzeitigen Tickets (WIP-Limit, von Work in Progress). | Bereit 3, In Arbeit 2, Test 2 |
| Fluss steuern | Das Team achtet darauf, dass Tickets zügig durchlaufen, und misst, wie lange sie brauchen. | Datum „gezogen am“ und „fertig am“ auf jedem Ticket |
| Regeln explizit machen | Wann ein Ticket weiter darf, steht als Regel an der Spalte. | Eintrittsregel unter jeder Spaltenüberschrift |
| Feedback-Schleifen einrichten | Regelmäßige, kurze Treffen am Board. | Kanban-Meeting, Replenishment, Review |
| Gemeinsam verbessern | Änderungen am Ablauf auf Grundlage von Beobachtung und Daten. | Abschnitt „Änderungen an den Regeln“ in board.md |
Das Pull-Prinzip (ziehen statt zuteilen) steht nicht als eigene Praktik in der Liste, sondern ist die Folge der WIP-Limits: Wenn eine Spalte voll ist, kann man ihr keine Arbeit mehr hineinschieben, sondern nur Arbeit herausziehen, sobald Platz ist. Wie das im Alltag aussieht, zeigt der Abschnitt „Ziehen statt schieben“.
Vom Wunsch zum Ticket
Ein Wunsch wie „Ich will meine Buchungen sehen“ ist noch keine Arbeit, die jemand anfangen kann. Ein Ticket (auch Karte) macht daraus eine Aufgabe mit klaren Grenzen. Unsere Tickets haben immer dieselben Felder:
JFX-nn <Titel>
Serviceklasse: Standard | Expedite | Fixed Date (<Termin>) | Intangible
Sicht: Fahrer*in | Verwaltung | Technik
Nutzen: Als <Rolle> möchte ich <Ziel>, damit <Nutzen>.
Akzeptanzkriterien:
- Angenommen <Ausgangslage>, wenn <Handlung>, dann <Ergebnis>.
Gezogen am: <Datum> Fertig am: <Datum>
Der Nutzen ist als User Story formuliert: Rolle, Ziel und Nutzen. Die Akzeptanzkriterien im Muster „Angenommen … wenn … dann …“ sagen, woran man erkennt, dass das Ticket fertig ist; aus ihnen entstehen später die Abnahmetests. Das Präfix JFX steht für die Desktop-App und unterscheidet die Tickets von denen der anderen Reihen. Ein Ticket soll so klein sein, dass eine Person es in höchstens drei Projekttagen abschließen kann. Was größer ist, wird geteilt.
So sieht das Ticket für die Angebotsliste aus:
JFX-03 Angebotsliste mit ViewModel und Beispieldaten
Serviceklasse: Standard
Sicht: Fahrer*in
Nutzen: Als Fahrer*in möchte ich meine Angebote mit Datum, Uhrzeit,
Richtung, Haltepunkt und freien Plätzen sehen, damit ich weiß,
was ansteht.
Akzeptanzkriterien:
- Angenommen, Ben Richter hat zwei Angebote für den 19.10.2026,
dann zeigt die Liste beide, nach Abfahrtszeit sortiert.
- Das ViewModel ist ohne Fenster mit JUnit getestet.
Aus der Wunschsammlung entstehen so zwölf Tickets. Sie decken beide Sichten der App ab und dazu Arbeiten, die nur das Team betreffen (Sicht „Technik“). Die letzte Spalte zeigt, in welchem Artikel der Reihe das Ticket umgesetzt wird:
| Ticket | Titel | Sicht | Serviceklasse | Artikel |
|---|---|---|---|---|
| JFX-01 | Projekt anlegen, leeres Fenster startet | Technik | Standard | 02 |
| JFX-02 | Hauptfenster mit FXML und CSS | Fahrer*in | Standard | 03 |
| JFX-03 | Angebotsliste mit ViewModel und Beispieldaten | Fahrer*in | Standard | 04 |
| JFX-04 | Eigene Angebote aus der REST-API laden | Fahrer*in | Standard | 05 |
| JFX-05 | Buchungen zu einem Angebot anzeigen, bestätigen, ablehnen | Fahrer*in | Standard | 06 |
| JFX-06 | Angebot anlegen, ändern und absagen | Fahrer*in | Standard | 07 |
| JFX-07 | Anmelden über Keycloak, Sicht nach Rolle | beide | Standard | 08 |
| JFX-08 | Jede Fahrt absagen (Rolle ORGA) |
Verwaltung | Standard | 09 |
| JFX-09 | Haltepunkte anzeigen und pflegen | Verwaltung | Standard | 09 |
| JFX-10 | Auslastung der Haltepunkte als Diagramm | Verwaltung | Standard | 09 |
| JFX-11 | GUI-Tests mit TestFX in der Pipeline | Technik | Intangible | 10 |
| JFX-12 | Installationspaket für das Sekretariat | Verwaltung | Fixed Date (18.12.2026) | 12 |
Die Reihenfolge ist kein fester Plan. Sie zeigt, was nach heutigem Stand sinnvoll aufeinander aufbaut. Kommt ein neuer Wunsch dazu, wird er als Ticket ins Backlog gelegt und beim nächsten Auffüllen eingeordnet.
Die Spalten und ihre Regeln
Die Spalten bilden den Weg ab, den jedes Ticket geht. Wir starten mit fünf:
Backlog: alle notierten Wünsche, noch nicht geordnet und noch nicht ausgearbeitet.
Bereit: Tickets, die ausgearbeitet und in eine Reihenfolge gebracht sind. Von hier zieht sich das Team die nächste Arbeit.
In Arbeit: Eine Person programmiert. Die Spalte ist zweigeteilt in „läuft“ und „erledigt“. In „erledigt“ wartet ein Ticket, bis jemand Kapazität für den Test hat. Ohne diese Unterspalte sähe man nicht, ob ein Ticket noch bearbeitet wird oder nur auf den nächsten Schritt wartet.
Test: Eine zweite Person prüft die Akzeptanzkriterien und liest den Code (Review).
Fertig: Das Ticket ist abgeschlossen und kann ausgeliefert werden.
Wichtiger als die Namen sind die Regeln an den Spalten. Kanban verlangt, dass das Team ausdrücklich festhält, wann ein Ticket in eine Spalte darf. Diese Eintrittsregel ist zugleich die Definition of Done der Spalte davor: Sie beschreibt, was erledigt sein muss, bevor das Ticket weiterwandert. Scrum kennt eine Definition of Done für das ganze Inkrement, Kanban hat sie je Übergang.
| Spalte | Regel für den Eintritt |
|---|---|
| Backlog | Wunsch ist als Ticket mit Titel, Nutzen und Serviceklasse notiert. |
| Bereit | Akzeptanzkriterien stehen fest, Ticket ist klein genug für höchstens drei Projekttage, Reihenfolge ist abgestimmt. |
| In Arbeit – läuft | Eine Person hat das Ticket gezogen und ihren Namen eingetragen. |
| In Arbeit – erledigt | Code ist im Repository, Unit-Tests laufen lokal grün. |
| Test | Pipeline ist grün. |
| Fertig | Alle Akzeptanzkriterien sind geprüft, das Review hat keine offenen Punkte, der Stand ist im Hauptzweig. |
Die Regel für „Bereit“ verdient einen zweiten Blick. Sie verhindert, dass ein Ticket gezogen wird, bei dem noch unklar ist, was eigentlich verlangt ist. Wer mitten in der Arbeit erst fragen muss, was „übersichtlich“ heißen soll, blockiert einen Platz im WIP-Limit. Ein Ticket ohne Akzeptanzkriterien bleibt deshalb im Backlog, so wichtig es auch sein mag.
WIP-Limits festlegen
Ein WIP-Limit ist eine Zahl über der Spalte: Mehr Tickets dürfen dort nicht gleichzeitig liegen. Das klingt nach einer Einschränkung, und genau das ist es. Ohne Limit fängt jede Person an, was gerade wichtig erscheint. Nach einer Woche sind sieben Tickets „in Arbeit“, keines ist fertig, und niemand weiß, was als Nächstes kommt. Mit Limit gilt: Stop starting, start finishing. Erst wenn etwas fertig ist, darf etwas Neues anfangen.
Für die Startwerte gibt es keine Formel, aber Faustregeln:
In Arbeit: höchstens so viele wie Personen im Team, besser weniger. Mit drei Personen und einem Limit von 2 ist immer eine Person frei, um zu testen, zu helfen oder ein Expedite-Ticket aufzunehmen. Zusätzlich gilt: jede Person höchstens ein Ticket in „läuft“.
Test: so groß, dass Tickets nicht vor dem Test liegen bleiben, aber klein genug, dass Testen nicht auf später verschoben wird. Wir starten mit 2.
Bereit: so viele, wie das Team bis zum nächsten Auffüllen ungefähr schafft. Wir füllen einmal pro Woche auf und schaffen anfangs etwa drei Tickets pro Woche, also 3.
Backlog und Fertig: ohne Limit. Das Backlog ist ein Wunschspeicher, „Fertig“ das Ende des Wegs.
Warum lohnt sich das? Einen Zusammenhang zwischen den Größen beschreibt Littles Gesetz:
mittlere Durchlaufzeit = mittlerer WIP / mittlerer Durchsatz
Es gilt für Durchschnittswerte über einen längeren Zeitraum. Schafft das Team drei Tickets pro Woche (Durchsatz) und liegen im Mittel sechs Tickets zwischen „Bereit“ und „Fertig“ (WIP), dauert ein Ticket im Mittel zwei Wochen. Senkt das Team den WIP auf drei, ohne langsamer zu arbeiten, sinkt die Durchlaufzeit auf eine Woche. Wer also schneller Ergebnisse will, fängt weniger gleichzeitig an. Die Durchlaufzeit misst Du in Artikel 11 an echten Tickets.
Ziehen statt schieben: der erste Tag am Board
Beim Push-Prinzip teilt jemand Arbeit zu: „Mach Du bitte noch JFX-05.“ Beim Pull-Prinzip holt sich jede Person selbst die nächste Arbeit, und zwar nur dann, wenn sie frei ist und die Zielspalte Platz hat. Wer in welcher Reihenfolge gezogen wird, entscheidet die Reihenfolge in „Bereit“, nicht die lauteste Stimme.
Das tägliche Kanban-Meeting dauert zehn Minuten und geht das Board von rechts nach links durch: Was kann nach „Fertig“? Was wartet auf den Test? Erst danach wird gefragt, was neu begonnen werden kann. So zeigt die Reihenfolge der Fragen schon, worauf es ankommt: erst fertig machen, dann anfangen.
Ein Beispiel aus der zweiten Woche: JFX-01 ist fertig. JFX-02 und JFX-03 stehen in „In Arbeit“, JFX-02 schon in „erledigt“. In „Test“ liegen zwei kleine Tickets, die nachträglich dazukamen und noch niemand geprüft hat. Oksana Melnyk wird frei und möchte JFX-04 beginnen.
| Spalte (WIP-Limit) | Tickets | belegt |
|---|---|---|
| Bereit (3) | JFX-04, JFX-05 | 2 von 3 |
| In Arbeit – läuft (2, gemeinsam mit „erledigt“) | JFX-03 | 2 von 2 |
| In Arbeit – erledigt | JFX-02 | (zählt mit) |
| Test (2) | zwei kleine, nachträglich dazugekommene Tickets | 2 von 2 |
| Fertig | JFX-01 | – |
Darf sie JFX-04 ziehen? Nein. „In Arbeit“ hat mit JFX-02 und JFX-03 sein Limit von 2 erreicht.
Kann sie JFX-02 in den Test holen? Auch nicht, denn „Test“ ist mit zwei Tickets voll.
Was tut sie stattdessen? Sie hilft beim Test und prüft eines der beiden wartenden Tickets. Ist es fertig, hat „Test“ wieder Platz, sie zieht JFX-02 hinein, und „In Arbeit“ hat Platz für das nächste Ticket aus „Bereit“.
Das Board hat in diesem Moment einen Engpass sichtbar gemacht: Es wird schneller programmiert als getestet. Ohne WIP-Limit wäre JFX-04 einfach angefangen worden, und vor dem Test hätte sich ein immer größerer Stapel gebildet. Mit Limit staut sich die Arbeit sichtbar an einer Stelle, und das Team reagiert dort. Bleibt der Stau mehrere Tage, ist das ein Thema für das Review: Liegt es am Ablauf (zu große Tickets, zu viel Handarbeit beim Testen) oder an den Limits?
Neben dem täglichen Treffen gibt es zwei weitere Termine. Beim Replenishment (Auffüllen) ordnet Thomas Becker einmal pro Woche mit dem Team das Backlog und füllt „Bereit“ bis zum Limit auf. Im Review alle zwei Wochen schaut das Team auf den Ablauf selbst: Wie lange haben Tickets gebraucht, wo hat es gestaut, welche Regel sollte sich ändern?
Serviceklassen: nicht jedes Ticket ist gleich eilig
Bisher folgt alles einer einfachen Regel: Reihenfolge in „Bereit“, WIP-Limits beachten. Manche Aufgaben passen nicht in dieses Schema. Ein Installationspaket, das nach einem bestimmten Tag niemandem mehr nützt, braucht eine andere Behandlung als die Pflege von Abhängigkeiten, die irgendwann erledigt sein soll. Kanban fasst Tickets mit gleichen Regeln deshalb zu Serviceklassen (Classes of Service) zusammen.
| Serviceklasse | Wann | Regel auf unserem Board | Beispiel |
|---|---|---|---|
| Expedite | Ohne sofortige Bearbeitung entsteht ein Schaden, oder die App ist nicht nutzbar. | eigene Bahn, darf am WIP-Limit vorbei, höchstens eines gleichzeitig; wer frei wird, übernimmt es zuerst | Ein Haltepunkt fällt wegen einer Baustelle weg, und die REST-API kann Haltepunkte noch nicht ändern. |
| Fixed Date | Es gibt einen festen Termin, danach ist das Ergebnis wertlos oder teuer. | so früh nach „Bereit“ holen, dass es mit der üblichen Durchlaufzeit rechtzeitig fertig wird | JFX-12: Installationspaket bis 18.12.2026 |
| Standard | alle übrigen Wünsche | Reihenfolge nach Nutzen, im Replenishment abgestimmt | JFX-01 bis JFX-10 |
| Intangible | Arbeit ohne sofort sichtbaren Nutzen, die später teuer wird, wenn sie liegen bleibt | wird gezogen, wenn Luft ist; höchstens eines gleichzeitig in Arbeit | JFX-11: GUI-Tests in der Pipeline |
Das Expedite-Ticket braucht Disziplin. Die Regel „am WIP-Limit vorbei“ ist bequem, und wenn plötzlich jedes zweite Ticket eilig ist, hebelt das die Limits aus. Deshalb darf es nur eines gleichzeitig geben, und das Team prüft im Review, wie oft es nötig war. Ein Beispiel wird in dieser Reihe tatsächlich vorkommen: Die REST-API kann Haltepunkte bisher nur lesen. Muss die Verwaltung kurzfristig einen Haltepunkt ändern, weil eine Haltestelle wegfällt, kommt ein Ticket für die fehlenden Endpunkte in die Expedite-Bahn. Wie das abläuft, zeigt Artikel 09.
Für JFX-12 lohnt sich ein kurzer Blick auf den Kalender. Am Freitag, dem 18.12.2026, kurz vor den Weihnachtsferien, sollen die Rechner der Verwaltung das Installationspaket bekommen. Braucht ein Ticket im Mittel eine Woche und hat das Paket Abhängigkeiten zu allen anderen Tickets (es muss ja eine fertige App verpacken), muss es spätestens Anfang Dezember in „Bereit“ stehen, besser früher. Ein Fixed-Date-Ticket ist kein Expedite-Ticket: Es bekommt keinen Platz am Limit vorbei, sondern einen rechtzeitigen Platz in der Reihenfolge.
Kanban und Scrum: was anders ist
Den Flurmonitor entwickelt das Projektteam in der Reihe Flurmonitor mit Thymeleaf mit Scrum. Der Scrum-Projektstart des Flurmonitors und dieser Artikel lösen dieselbe Aufgabe, nämlich die Arbeit zu Beginn zu ordnen, aber auf verschiedene Weise. Das Bild stellt die beiden Abläufe gegenüber:
| Merkmal | Scrum | Kanban |
|---|---|---|
| Takt | Sprints fester Länge mit Planning, Review und Retrospektive | kein Takt; Termine (Kanban-Meeting, Replenishment, Review) unabhängig vom Fluss |
| Begrenzung der Arbeit | Umfang des Sprint-Backlogs | WIP-Limit je Spalte |
| neue Wünsche | warten in der Regel bis zum nächsten Sprint | jederzeit ins Backlog, beim nächsten Auffüllen eingeordnet; Eiliges als Expedite |
| Rollen | Product Owner, Scrum Master, Developers | keine vorgeschrieben; vorhandene Rollen bleiben |
| Definition of Done | eine für das Inkrement | eine Regel je Spaltenübergang |
| Auslieferung | Inkrement am Ende des Sprints | jedes fertige Ticket, sobald es fertig ist |
| Kennzahlen | Velocity, Burndown | Durchlaufzeit, Durchsatz, WIP |
Warum Kanban für die Desktop-App? Die App ergänzt ein System, das schon läuft. Neben geplanten Funktionen kommen Rückfragen der Verwaltung, Fehlermeldungen und Änderungen am Backend. Feste Sprints würden solche Anfragen bis zu zwei Wochen warten lassen oder den Sprint stören. Kanban nimmt sie über das Backlog und die Serviceklassen auf, ohne dass die übrige Arbeit liegen bleibt. Umgekehrt fehlt Kanban der feste Rhythmus, der ein neues Team zu regelmäßigen Ergebnissen und Rückblicken zwingt. Diese Aufgabe übernehmen bei uns das Review alle zwei Wochen und die Kennzahlen.
Das Board im Repository
Ein Board kann an einer Wand hängen, in einem Ticketsystem leben oder als Board in GitLab angelegt werden. Damit Du die Reihe ohne weitere Werkzeuge mitmachen kannst, steht die Workflow-Definition unseres Teams als Markdown-Datei im Repository: src/01-kanban/board.md. Sie enthält Team und Termine, Spalten mit Limits und Regeln, die Serviceklassen, die Ticket-Vorlage, alle Tickets mit ihrer Spalte und einen Abschnitt für Regeländerungen. Ein Ausschnitt aus dem Abschnitt „Spalten, WIP-Limits und Regeln“:
| Spalte | WIP-Limit | Regel für den Eintritt (Definition of Done der Spalte davor) |
|---|---|---|
| Backlog | – | Wunsch ist als Ticket mit Titel, Nutzen und Serviceklasse notiert. |
| Bereit | 3 | Akzeptanzkriterien stehen fest; Ticket ist klein genug für höchstens drei Projekttage; Reihenfolge im Replenishment abgestimmt. |
| In Arbeit – läuft | 2 (mit „erledigt“) | Eine Person hat das Ticket gezogen und ihren Namen eingetragen. |
...
Weitere Regeln:
- Gezogen wird nur, wenn die Zielspalte unter ihrem WIP-Limit liegt.
- Ist eine Spalte voll, hilft wer frei ist zuerst dort, wo es staut (von rechts nach links schauen).
- Jede Person hat höchstens ein Ticket in „läuft“.
- Ein blockiertes Ticket bekommt einen roten Punkt und den Grund; es zählt weiter zum WIP.Wenn Du lieber mit einem echten Board arbeitest: GitLab bietet unter „Plan > Issue boards“ Boards an, deren Spalten Labels entsprechen. Die Regeln für den Eintritt schreibst Du dann in die Beschreibung des Labels; ob sich WIP-Limits direkt an einer Spalte eintragen lassen, hängt von der GitLab-Fassung ab, sonst steht das Limit im Namen der Spalte. Wichtig ist nicht das Werkzeug, sondern dass die Regeln für alle sichtbar sind.
Nächster Schritt: das erste Ticket ziehen
Das Board steht, „Bereit“ ist gefüllt, und Du ziehst das erste Ticket: JFX-01 „Projekt anlegen, leeres Fenster startet“. Im nächsten Artikel, JavaFX-Projekt anlegen, legst Du das Projekt mit Gradle an, lernst den Lebenszyklus einer JavaFX-Anwendung kennen und schreibst einen Smoke-Test, der das Fenster startet. Erfüllt das Projekt beide Akzeptanzkriterien, wandert JFX-01 in den Test.
Zum Üben gibt es die Übungsaufgaben zum Kanban-Projektstart: Dort richtest Du ein Board für die Mitfahrgesuche ein und suchst den Engpass in einem Board, das schon eine Weile läuft.
Leitfragen
- Welche drei Grundsätze stehen am Anfang der Kanban-Methode, und was bedeutet „Beginne mit dem, was Du jetzt tust“ für das Board der Desktop-App?
Beginne mit dem, was Du jetzt tust; verändere in kleinen Schritten; Führung auf allen Ebenen. Für das Board heißt der erste Grundsatz, dass die Spalten die Schritte abbilden, die das Team ohnehin geht (vorbereiten, programmieren, testen), statt einen neuen Prozess zu erfinden. siehe Abschnitt „Kanban in Kürze“
- Welche Felder hat ein Ticket auf dem Board, und wozu dienen die Akzeptanzkriterien?
Nummer und Titel, Serviceklasse, Sicht, Nutzen als User Story, Akzeptanzkriterien sowie die Daten „gezogen am“ und „fertig am“. Die Akzeptanzkriterien legen fest, woran man erkennt, dass das Ticket fertig ist; aus ihnen entstehen die Abnahmetests. siehe Abschnitt „Vom Wunsch zum Ticket“
- Was ist die Regel für den Eintritt in eine Spalte, und wie hängt sie mit der Definition of Done zusammen?
Die Eintrittsregel legt fest, was erledigt sein muss, damit ein Ticket in die Spalte darf. Sie ist damit die Definition of Done der Spalte davor. Kanban hat sie je Übergang, Scrum eine für das ganze Inkrement. siehe Abschnitt „Die Spalten und ihre Regeln“
- Wie wählst Du ein WIP-Limit für die Spalte „In Arbeit“, und was sagt Littles Gesetz über die Wirkung?
Höchstens so viele Tickets wie Personen im Team, besser weniger, damit jemand für Test und Hilfe frei bleibt. Nach Littles Gesetz ist die mittlere Durchlaufzeit WIP geteilt durch Durchsatz; weniger gleichzeitige Arbeit verkürzt bei gleichem Durchsatz die Durchlaufzeit. siehe Abschnitt „WIP-Limits festlegen“
- Eine Person wird frei, aber die Spalte „In Arbeit“ ist voll. Was tut sie nach dem Pull-Prinzip?
Die Person beginnt kein neues Ticket, sondern hilft weiter rechts auf dem Board, etwa beim Test, damit dort Platz wird. Dann rückt ein Ticket aus „In Arbeit“ nach, und erst danach kann sie selbst ein neues Ticket aus „Bereit“ ziehen. siehe Abschnitt „Ziehen statt schieben“
- Worin unterscheiden sich ein Expedite-Ticket und ein Fixed-Date-Ticket?
Ein Expedite-Ticket ist sofort dringend, darf am WIP-Limit vorbei und wird zuerst übernommen; es darf nur eines gleichzeitig geben. Ein Fixed-Date-Ticket hat einen festen Termin, folgt aber den WIP-Limits; es wird nur so früh eingeplant, dass es rechtzeitig fertig wird. siehe Abschnitt „Serviceklassen“
- Nenne drei Unterschiede zwischen Scrum und Kanban.
Scrum arbeitet in Sprints fester Länge, Kanban ohne Takt im Fluss; Scrum begrenzt die Arbeit über den Sprint-Umfang, Kanban über WIP-Limits je Spalte; Scrum schreibt drei Rollen vor, Kanban keine; Scrum misst meist Velocity, Kanban die Durchlaufzeit. siehe Abschnitt „Kanban und Scrum: was anders ist“
- Woran erkennst Du auf einem Board einen Engpass?
Vor einer Spalte sammeln sich Tickets in „erledigt“ bzw. die Spalte bleibt an ihrem WIP-Limit, während die Spalten davor nicht weiterkommen und Personen nichts Neues ziehen dürfen. Bleibt das über mehrere Tage so, gehört der Engpass ins Review. siehe Abschnitt „Ziehen statt schieben“
Links und weitere Informationen
zum Weiterlesen: Kanban: Arbeit sichtbar machen und begrenzen
zum Vergleich: Scrum und Scrum-Projektstart des Flurmonitors
zum Ticket-Schreiben: User Stories
für den Einstieg: Szenario Mitfahrlabor mit Personas und Regeln
als Nachschlagewerk: The Kanban Guide (Kanban University)
als Nachschlagewerk: GitLab-Dokumentation: Issue boards
Hinweis zur Nachnutzung als Open Educational Resource (OER)
Dieser Artikel und seine Texte, Bilder, Grafiken, Code und sonstiger Inhalt sind - sofern nicht anders angegeben - lizenziert unter CC BY 4.0. Nennung gemäß TULLU-Regel bitte wie folgt: “Kanban-Projektstart für die Desktop-App: Board, WIP-Limits, Pull und Serviceklassen” von oer-informatik.de (H. Stein), Lizenz: CC BY 4.0. Der Artikel wurde unter https://oer-informatik.de/javafx-kanban-projektstart veröffentlicht, die Quelltexte sind in weiterverarbeitbarer Form verfügbar im Repository unter https://gitlab.com/oer-informatik/javafx/javafx-einstieg. Erstellt mit KI-Assistenz; von mir umfassend redaktionell überarbeitet, geprüft und freigegeben. Stand: 11.11.2026.
[Kommentare zum Artikel lesen, schreiben] / [Artikel teilen] / [gitlab-Issue zum Artikel schreiben]
