Retraité

Kürzlich sprach ich mit einem Abteilungsleiter darüber, woher das Geld für seine Abteilung kommt und wie er die Einnahmen steigern könnte. Seine Abteilung wird im wesentlichen dafür bezahlt, Change Requests zu einem existierenden Softwareprodukt zu realisieren. Je mehr solche Requests seine Leute schaffen, desto besser. Also ein Durchsatzproblem.

Der Abteilungsleiter plante allerdings die Change Requests anhand von Schätzungen auf einem Zeitstrahl und ordnete sie den verfügbaren Entwicklern in seiner Abteilung zu, zeitlich möglichst dicht an dicht gepackt, um die verfügbare Kapazität gut zu nutzen. Wenn ein Entwickler frei wird, bekommt er ein neues Change Request zugeteilt. Der Abteilungsleiter wusste, dass Dinge manchmal etwas länger dauern und rechnete deshalb 25% Pufferzeit hinzu, bevor er den Kunden versprach, welche Change Requests wahrscheinlich im nächsten Release umgesetzt sein würden. Seine Annahme war anscheinend: je besser die Leute ausgelastet sind, desto höher der Durchsatz, desto höher die Einnahmen der Abteilung.

Aus Sicht des Durchsatzes eine schlechte Idee! Ich sagte ihm, er solle doch die Aufträge an seine Leute nicht so dicht packen und stattdessen kleine Puffer lassen, um zu vermeiden, dass sich Warteschlangen auf den Schreibtischen bilden. Jeder Mitarbeiter, der frei wird, soll sich am besten selbst seinen nächsten Auftrag holen (Pull-Systeme wie Kanban tun genau das). Er tolerierte durch die hohe Auslastung implizit, dass teilweise fertige Arbeit Zeit in Warteschlangen verbringt und Geld kostet, weil die Menschen inzwischen vergessen, was sie getan haben, Fehler verursachen und dann die Arbeit zum Teil noch einmal tun müssen.

Die mathematischen Gesetzmäßigkeiten hinter diesem Problem sind interessant. Es gibt nämlich einen stark nichtlinearen Zusammenhang zwischen Auslastung der Leute und der Bildung von Warteschlangen. Nehmen wir an, jemand schafft 10 Dinge im Monat. Wenn man ihm 8 Dinge pro Monat gibt, ist er zu 80% ausgelastet. Wenn man nun etwas von ihm will, ist die Wahrscheinlichkeit, dass er es sofort tun kann, nur 20%. In 80% aller Fälle wird er die neue Arbeit zunächst in eine Warteschlange legen und später erledigen.

In der Warteschlangentheorie bezeichnet man die Ankunftsrate neuer Arbeit mit dem griechischen Buchstaben 𝜆, die Servicerate für existierende Arbeit mit dem Buchstaben 𝜇. Den Quotienten, die Auslastung, bezeichnet man mit 𝜌:

\rho=\frac{\lambda}{\mu}

Die Länge der Warteschlange ergibt sich dann als Funktion der Auslastung der Leute (Formel von Allen-Cunneen):

L_q=\frac{\rho^2}{1-\rho}\cdot\frac{C_{\lambda}^2+C_{\mu}^2}{2}

Die beiden Koeffizienten C sind die Schwankungen in der Ankunftsrate und der Servicerate. Sie liegen zwischen 0 und 1 und ergeben sich durch Division der Standardabweichung durch den Mittelwert. Im Umfeld der Softwareentwicklung kann man beide Schwankungen getrost mit 1 (also 100%) annehmen (das entspricht einer Exponentialverteilung).

Der Abteilungsleiter, der versucht, seine Leute zu 100% auszulasten und die Verzögerungen durch einen großen Puffer auszugleichen, tut sich aus Sicht von Flow keinen Gefallen: Es bilden sich lange Warteschlangen zwischen den Mitarbeitern, die gar nicht sein müssten. Beispiel: Wenn ein Mitarbeiter zu 95% ausgelastet ist, ist seine Warteschlange 8 bis 9mal so lang wie bei jemandem, der zu 75% ausgelastet ist. Und: Die Länge der Warteschlange schwankt bei einem zu 95% ausgelasteten Mitarbeiter 25mal so stark  wie bei einem 75% ausgelasteten Mitarbeiter! Kein Wunder, dass der Abteilungsleiter ständig Probleme hatte, seine versprochenen Termine einzuhalten.

Also: Mitarbeiter am besten nur so hoch auslasten, dass sich keine Warteschlangen bilden. Am einfachsten geht das so: Die Warteschlangenlänge rigoros begrenzen (z.B. mit Hilfe eines Kanban-Systems) und die Mitarbeiter verpflichten, selbst dafür zu sorgen, dass ihre fertige Arbeit zuerst weitergereicht oder ausgeliefert wird, bevor sie neue Arbeit angehen. Das reduziert die Auslastung, doch spart es Kosten für Warteschlangen und macht den Kunden zufriedener, weil die versprochenen Termine aufgrund der geringeren Schwankungen leichter eingehalten werden können.

Insgesamt könnte der Abteilungsleiter damit günstiger arbeiten und mit seinen Leuten mehr Geld verdienen als zuvor.

P.S.: Solche Dinge lernen Sie in meinem Flow-Seminar. In 2012 gibt es dafür wieder neue Termine.