Menschliche Systeme wie z.B. Softwareentwicklungsteams organisieren sich selbst ohne jegliches zutun – schon immer. Dieses Selbstorganisation genannte Phänomen ist das natürliche Verhalten aller komplexer Systeme. Die spannende Frage ist dabei jedoch, ob das zu Tage tretende Verhalten gewünscht oder unerwünscht ist.
Viele Jahre lang haben Führungsrkräfte versucht, das Verhalten durch möglichst detaillierte Vorgaben, Anweisungen und Regeln zu beeinflussen – ein Vorgehen, dass den Anleihen des Taylorismus geschuldet zu sein scheint. Das funktionierte mal mit mehr, mal mit weniger Erfolg.
Ein Trick in der Interaktion mit komplexen Systemen ist: Entscheidungen und Verantwortung werden dorthin gegeben, wo die Informationen präziser und kleiner sind. In der Regel ist das eine Delegation weiter „nach unten“. So werden die Entscheidungen besser und auch eher mitgetragen. Rahmenbedingungen helfen dabei, wichtige Entscheidungsaspekte zu berücksichtigen.
Komplexe Systeme haben emergente Eigenschaften: Das Verhalten des Systems kann nicht alleine durch das Verhalten der einzelnen Teile des Systems bestimmt werden. Ein Team ist mehr als die Summe seiner Mitglieder.
Als Konsequenz daraus verwendet man in agilen Vorgehensweisen die Intelligenz der Gruppe an allen wichtigen Stellen: Planung, Schätzungen, Reviews, Retrospektiven. Keine dieser Tätigkeiten kann von einer Person alleine in hoher Qualität geleistet werden, denn dafür sind zu wenige Informationen in der gedanklichen Abbildung jedes Einzelnen. Wer einmal bei einer Planning Poker Sitzung dabei war, kann dies dort leicht erkennen: Abweichende Schätzwerte sind immer in einem unterschiedlichen Wissenstand begründet. Hier wird aus den Einzelinformationen ein Gruppenmodell, dass die Komplexität einer Anforderung besser wiederspiegelt.
Aus dem selben Grund delegiert man – wie oben geschrieben – also auch möglichst viel Kontrolle an die Teams selbst: Sie haben das vollständigste Model zur Verfügung, um ihr eigenes System zu steuern. So steigt die Stabilität des Gesamtsystems Abteilung und Organisation.
Wir Ingenieure finden die Betrachtung, dass die Welt kausal funktioniert, irgendwie einleuchtend. Ich werfe Geld in den Fahrkartenautomaten und er druckt ein Ticket aus. Tut er das nicht, ist der Drucker vielleicht defekt oder das System muss neu gestartet werden. Aber nicht nur Ingenieure, die meisten Menschen sind der Meinung, dass es in der Regel einen Grund für ein Verhalten oder eine Situation gibt. Manchmal findet man ihn vielleicht einfach nicht so leicht. Oder?
Dieses Kausalität genannte Phänomen hat unsere Managementkultur stark geprägt. Führungskräfte versuchen in chaotischen Zuständen oder bei drohenden Fehlschlägen regelmäßig, die Kontrolle über die Situation zurückzugewinnen und die vermeintlich verantwortlichen Faktoren in die gewünschte Richtung zu beeinflußen. Im schlimmsten Fall gibt es die Suche nach einen Schuldigen.
Kausalität leistet der Wissenschaft einen unschätzbaren Dienst: Siedepunktberechnungen und Konstruktionspläne, vorhersagbare Flugbahnen von Raketen werden möglich. Und doch gibt es genügend Fragen, die wir nicht beantworten können: Wird unser Softwareprojekt wie geplant mit den definierten Funktionen fertig werden? Wie wird das Wetter in drei Wochen sein? Komme ich pünktlich zu meinem Termin am Freitag Abend durch die Münchener Innenstadt?
Wieso können wir diese Fragen nicht exakt beantworten? Was ist anders an ihnen?
Die Antwort ist die Komplexität. Damit ist nicht gemeint, wie man schnell denken könnte, dass es unüberschaubar viele Faktoren in einer Fragestellung gibt, sondern das unvorhersagbares Verhalten eines Systems. Dies zeigt uns zum Beispiel das Eulersche Dreikörperproblem von nur drei simplen Wassermolekülen: Die Zutaten sind simpel, das Systemverhalten komplex.
Solche Gegebenheiten blieben auch unseren Forschern nicht verborgen: Mittlerweile gibt es eine ganze Wissenschaft, die sich mit solchen Zusammenhängen beschäftigt, genannt die Disziplin der Komplexitätstheorie.
Wenn wir aufhören, kausales und lineares Denken auf komplexe Systeme wie Softwareprojekte und Teams anzuwenden und stattdessen auf die Komplexitätstheorie setzen, bedienen wir uns eines Modells, dass deutlich nützlicher ist und uns Antworten auf Fragen ermöglicht, die wir sonst nicht erhalten. Die Anwendung dieses Ansatzes auf die Führung von Scrum- und Kanban-Teams heißt „Agiles Management„.