Blog

Anwendung des Little'schen Gesetzes in agilen Spielen

Pieter Rijken

Pieter Rijken

Aktualisiert Oktober 22, 2025
8 Minuten
Haben Sie schon einmal das Little'sche Gesetz benutzt, um zu erklären, dass niedrigere WiP-Grenzen (Work in Progress) zu kürzeren Zykluszeiten führen? Haben Sie schon einmal versucht, das Little'sche Gesetz in einem agilen Spiel zu veranschaulichen und festgestellt, dass es nicht zutrifft? Dann lesen Sie diesen Blog, um herauszufinden, dass es in agilen Spielen genau richtig ist und wie es wirklich funktioniert. Vor einiger Zeit habe ich einen Kanban-Workshop gegeben. Teil des Workshops war ein Spiel zum Falten von Papierfliegern, um den Arbeitsfluss zu veranschaulichen. Zur Veranschaulichung des Little'schen Gesetzes ermittelten wir den Durchsatz, die Zykluszeit und die unfertige Arbeit. Zu meiner Überraschung war das Gesetz nicht gültig. Nicht einmal annähernd. In diesem Blog möchte ich Ihnen erklären, warum es doch funktioniert!

Einführung

Es ist allgemein bekannt, dass die durchschnittliche Anzahl der in Bearbeitung befindlichen Artikel proportional zur durchschnittlichen Zykluszeit der abgeschlossenen Artikel ist. Die Proportionalität ist die durchschnittliche Inputrate (oder Durchsatzrate) der Arbeitsposten. Diese Beziehung ist als Little's Law bekannt. Sie wurde von Little in den 1960er Jahren entdeckt und hat viele Anwendungen gefunden. In Kanban-Teams wird diese Beziehung oft verwendet, um qualitativ zu argumentieren, dass es für den Arbeitsfluss günstig ist, nicht zu viel Arbeit parallel zu haben. Zu diesem Zweck werden WiP-Grenzen (Work in Progress) eingeführt. Je kleiner die WiP, desto kleiner ist die durchschnittliche Zykluszeit, was einen besseren Arbeitsfluss bedeutet. Ich war überrascht, dass diese Aussage genau richtig ist und auch unter sehr entspannten Bedingungen gilt.

Littlesches Gesetz

In mathematischer Form wird das Gesetz oft wie folgt angegeben: (1) [ bar{N} = lambda bar{W} Hier ( bar{N} ) ist die durchschnittliche Anzahl der zu einem bestimmten Zeitpunkt in Bearbeitung befindlichen Workitems, und ( bar{W} ) ist die durchschnittliche Zykluszeit. ( lambda ) ist die durchschnittliche Inputrate (neue Arbeitsposten pro Zeiteinheit). In stabilen Systemen entspricht dies auch dem durchschnittlichen Durchsatz. In diesem Fall wird das Little'sche Gesetz oft wie folgt (neu) formuliert (2) [ frac{mathrm{Arbeit, in, Fortschritt}}{mathrm{Throughput}} = mathrm{Zykluszeit} ]

Bedingungen

In der Praxis betrachtet man das Little'sche Gesetz über einen endlichen Zeitraum, z.B. 6 Monate, 5 Sprints, 3 Runden in einem agilen Spiel. Auch in der Praxis arbeiten die Teams an Backlog-Elementen, die diskrete Elemente sind. Nachdem die Arbeit erledigt ist, ergibt sich daraus ein neues Produktinkrement. Unter den folgenden Bedingungen ist (1) exakt:
  • Das System wird über einen endlichen Zeitraum hinweg beobachtet,
  • Das System ist ein Warteschlangensystem.
Ein Warteschlangensystem ist ein System, das aus diskreten Objekten besteht, die in einem bestimmten Rhythmus ankommen, bedient werden und dann wieder gehen. Beispiele für ein Warteschlangensystem. Ein agiles Team arbeitet an Backlog-Elementen. Ein Kanban-Team, das an Produktionsvorfällen arbeitet. Ein Scrum-Team.

Agiles Spiel

Ein häufig verwendetes Spiel, um dem Team die Bedeutung des Flusses zu erklären, ist das Falten von Papierfliegern. Es gibt viele Formen dieses Spiels. Siehe z.B. [Heintz11]. Nehmen wir für diesen Blog ein Team, das Flugzeuge faltet. Der Rückstand ist ein Stapel weißes Papier. 3 Runden des Faltens werden durchgeführt. Flugzeuge, die gefaltet sind und mindestens 2 Meter weit fliegen, gelten als fertig. neues Dokument 5_1-1 Am Ende jeder Runde werden wir die folgenden Metriken sammeln:
  • Anzahl der fertiggestellten Flugzeuge
  • Anzahl der in Arbeit befindlichen und noch nicht fertiggestellten Flugzeuge.
Die Ergebnisse der 3 Runden sind rechts zu sehen. Am Ende von Runde 1 hat Team A 3 Flugzeuge fertiggestellt und hat 8 unfertige Flugzeuge. Ebenso hat Team B in Runde 3 4 Flugzeuge fertiggestellt, so dass es insgesamt 12 fertige Flugzeuge und 6 unfertige Flugzeuge gibt. Die Zykluszeit erhalten Sie, indem Sie die runde Nummer des Blattes Papier aufschreiben, wenn Sie beginnen, das Flugzeug zu falten. Wenn Sie fertig sind, schreiben Sie die runde Nummer des Papiers auf. Die Zykluszeit für einen Flieger erhalten Sie, indem Sie die beiden subtrahieren und 1 addieren.

Berechnung des Little'schen Gesetzes

Die Art und Weise, wie ich die Zahlen für die unfertigen Erzeugnisse, den Durchsatz und die Zykluszeit immer berechnet habe, war
  1. Durchschnittliche Zykluszeit für alle fertiggestellten Flugzeuge,
  2. den Durchschnittswert des Durchsatzes über alle Runden,
  3. die laufende Arbeit über alle Runden hinweg zu mitteln.
Bei der Berechnung am Ende von Runde 3 ergibt sich für Team A folgendes Ergebnis:
  • Durchschnittliche unfertige Erzeugnisse = (8+6+2)/3 = 16/3,
  • Durchschnittlicher Durchsatz = 10 (fertiggestellte Flugzeuge)/3 = 10/3,
  • Durchschnittliche Zykluszeit = 22/10 = 11/5
Mit (2) oben erhalten wir: 16/3 / (10/3) = 8/5. Das ist nicht gleich der durchschnittlichen Zykluszeit von 11/5. Nicht einmal annähernd. Wie kommt das?

Die Wahrheit

Die Interpretation von unfertiger Arbeit, Durchsatz und Zykluszeit habe ich aus der Arbeit mit kumulativen Flussdiagrammen. Es gibt viele Ressourcen, die diese erklären, siehe z.B. [Vega2011]. Der Schlüssel zur richtigen Interpretation ist die Wahl des Zeitintervalls, für das die Größen ( bar{W} ), ( lambda ) und ( bar{W} ) gemessen werden. Zweitens, die Verwendung der Eingangsrate anstelle des Durchsatzes. Drittens, am Ende des Zeitraums die noch nicht fertig gestellten Artikel einzubeziehen. Und schließlich berücksichtigen Sie bei der Berechnung von ( bar{N} ) alle Artikel, die das System durchlaufen haben. Wenn wir die Ergebnisse für die Teams A und B neu interpretieren, erhalten wir Mannschaft A
  • Durchschnittliche unfertige Arbeit In Runde 1 wurden 3 Flugzeuge fertiggestellt und 8 unfertig gelassen; insgesamt 11 für unfertige Arbeit (11 Flugzeuge wurden als Arbeit aufgenommen) In Runde 2 hat das Team 2 Flugzeuge fertiggestellt und 6 unfertig gelassen; insgesamt 8 In Runde 3 hat das Team weitere 5 Flugzeuge fertiggestellt und 2 unfertig gelassen; insgesamt 7 Über 3 Runden gemessen ergibt sich ein Durchschnitt von (11+8+7)/3 = 26/3
  • Durchschnittliche Inputrate Unter Verwendung der Inputrate: In Runde 1 hat das Team 11 neue Flugzeuge aufgenommen In Runde 2 hat das Team keine weiteren Flugzeuge aufgenommen In Runde 3 wurde ein neues Flugzeug aufgenommen. Eine durchschnittliche Inputrate von (11+0+1)/3 = 4 Flugzeuge pro Runde
  • Durchschnittliche Zykluszeit Am Ende der dritten Runde sind noch 2 Flugzeuge in Arbeit; eines wurde in der dritten Runde aufgenommen und hat eine Wartezeit von 1 und eines aus der ersten Runde hat eine Wartezeit von 3 Runden. Das ergibt eine Gesamtwartezeit von 22 + 3 + 1 = 26 Runden. Bei einem Durchschnitt von 12 Flugzeugen ergibt sich eine durchschnittliche Zykluszeit von 26/12 = 13/6 Runden pro Flugzeug.
Dividiert man die durchschnittliche unfertige Arbeit durch die durchschnittliche Eingangsrate, erhält man 26/3 geteilt durch 4 = 26/12(!). Dies entspricht genau der berechneten durchschnittlichen Zykluszeit! Team B In ähnlicher Weise lauten die neu interpretierten Ergebnisse für Team B:
  • Durchschnittliche unfertige Erzeugnisse = (13+14+10)/3 = 37/3 Flugzeuge,
  • Durchschnittliche Einsatzrate = (13+2+3)/3 = 6 Flugzeuge pro Runde,
  • Durchschnittliche Zykluszeit = (27 (abgeschlossene) + 10 (nicht abgeschlossene))/18 (Flugzeuge) = 37/18 Runden pro Flugzeug
Wenn wir die durchschnittliche unfertige Arbeit durch die durchschnittliche Eingangsrate teilen, erhalten wir 37/18 Runden pro Flugzeug, was wiederum genau der durchschnittlichen Zykluszeit oder Wartezeit entspricht! Anmerkung: Die Zykluszeit von 10 Tagen setzt sich zusammen aus (a) 1 Flugzeug aus Runde 1 (Zykluszeit von 3), 2 Flugzeugen, die in Runde 2 aufgenommen wurden (insgesamt 4 Runden), 3 Flugzeugen, die in Runde 3 aufgenommen wurden (insgesamt 3 Runden).

Was ist mit kumulativen Flussdiagrammen?

Da wir nun wissen, wie man die Größen im Little's Law berechnet, kehren wir zu den kumulativen Flussdiagrammen zurück. Warum funktioniert das Little'sche Gesetz in diesem Fall? Bei Teams, die Daten über die Zykluszeit, die unfertige Arbeit und den Durchsatz gesammelt haben, funktioniert das Little'sche Gesetz, wenn es wie im Abschnitt 'Berechnung des Little'schen Gesetzes' erklärt wird, denn:
  1. die Teams werden durch WiP-Limits in der linken Spalte ("To Do") stabil gehalten; dann ist der Durchsatz mehr oder weniger gleich der Eingangsrate,
  2. das Team eine relativ große Anzahl von Aufgaben erledigt hat. In diesem Fall kann die Wartezeit für nicht erledigte Aufgaben vernachlässigt werden,
  3. wenn sie über den (großen Teil des) Wertschöpfungsprozesses gemessen werden, können die abgeschlossenen Posten pro Zeitperiode bei der Berechnung der durchschnittlichen unfertigen Leistungen oft vernachlässigt werden.

Zusammenfassung

Das Little'sche Gesetz (1) gilt unter den Bedingungen, dass (a) das betrachtete System ein Warteschlangensystem ist und (b) die Beobachtung oder Messung über ein endliches Zeitintervall erfolgt. Es gilt dann unabhängig von der Stationarität der Wahrscheinlichkeitsverteilungen, der Warteschlangendisziplin und der Leere des Systems zu Beginn und am Ende des Zeitintervalls. Berechnen Sie die Größen ( bar{N} ), ( lambda ) und ( bar{W} ) wie folgt:
  • Durchschnittliche unfertige Arbeit ( Balken{N} ) Für jedes betrachtete Zeitintervall zählen Sie den Gesamtumfang der Arbeit im System und addieren alle in diesem Zeitintervall abgeschlossenen Posten hinzu.
  • Durchschnittliche Zykluszeit ( bar{W} ) Summen Sie die Zykluszeiten für alle abgeschlossenen Artikel und schließen Sie die Wartezeit für nicht abgeschlossene Artikel mit ein und teilen Sie durch die Gesamtzahl der Artikel.
  • Durchschnittliche Eingabequote ( lambda ) Addieren Sie die Gesamtzahl der Artikel, die in das System eingegeben wurden, und dividieren Sie durch die Gesamtzahl der Zeitintervalle.

Referenzen

[Little61] Little, J. D. C. 1961. Ein Beweis für die Warteschlangenformel: L = ãW. Oper. Res. 9(3) 383-387. [Heintz11] John Heintz, Juni 2011, Agile Airplane Game, GistLabs, https://gistlabs.com/2011/06/agile-airplane-game/ [Vega11] Vega Information System Services, Inc., September 2011, Grundlagen des Lesens von kumulativen Flussdiagrammen, https://www.vissinc.com/2011/09/29/basics-of-reading-cumulative-flow-diagrams/  

Verfasst von

Pieter Rijken

Contact

Let’s discuss how we can support your journey.