Agile Prozesse ersetzen nicht eine notwendige Planung. Funktionierende Software, die Zusammenarbeit mit dem Kunden und das Reagieren auf Veränderung sind uns nur wichtiger als das Befolgen eines Plans.

Klassische IT-Projekte wurden nach dem Muster – Analyse -> Entwurf -> Realisierung -> Test -> Einführung -> Nutzung – durchgeführt. Von der Analyse bis zur ersten Nutzung vergingen oft mehrere Jahre. Nur rund 16 Prozent aller weltweiten IT-Projekte konnten im Jahr 1994 rechtzeitig, ohne Kostenüberschreitung und mit dem gewünschten Funktionsumfang abgeschlossen werden. Diese Projekte scheiterten oft an fehlender Zuarbeit durch den Kunden und an unvollständigen und sich häufig ändernden Anforderungen.

Agilität als Antwort auf ein komplexes Umfeld

Agile Prozesse wie Scrum sind auf diese Herausforderungen hin ausgerichtet. Eine komplexe Herausforderung wie ein großes IT-Projekt wird durch die Kombination von iterativen und inkrementellen Vorgehen in vereinfachte Teile zerlegt. Diese Teile werden in Iterationen von zwei bis vier Wochen – einem Sprint – umgesetzt.

Ein iteratives Vorgehen setzt auf der vorherigen Entwicklung auf, verbessert und entwickelt diese weiter. Die einzelnen notwendigen Funktionen werden nacheinander – inkrementell – entwickelt. Analyse, Entwurf, Realisierung, Test und Nutzung erfolgen nicht mehr in getrennten, aufeinander folgenden Schritten, sondern sind Bestandteil jedes Entwicklungsschritts. Nach jedem Sprint bekommt der Kunde ein vollständig getestetes, funktionierendes Gesamtprodukt, welches mit jedem Sprint Stück für Stück erweitert und verbessert wird.

Dieses empirische Vorgehen bedeutet: Man plant nicht aufgrund einer vollkommenen Analyse und Beweislage, sondern auf der Basis, was gerade passiert und was wir ändern können. Agile Prozesse begrüßen Änderungen, weil sie darauf ausgelegt sind durch ständige Feedbackschleifen den erreichten Stand zu betrachten und die nächsten Schritte zu planen.

Der Kunde wird sehr stark in die Entwicklung eingebunden, hat die Möglichkeit vor jedem Sprint Änderungen am Funktionsumfang vorzunehmen und sich das Ergebnis anzuschauen. Funktionierende Software am Ende jedes Sprints erlaubt es den Fortschritt genauer einzuschätzen und das Produkt bei Bedarf früher auszuliefern.

Interdisziplinäre Teams als Schlüssel zum Erfolg

„Wie wir bereits beim `A-Team´ oder bei `Ocean’s Eleven´ gesehen haben, braucht man für große Herausforderungen Teammitglieder mit unterschiedlichen sich gegenseitig ergänzenden Fähigkeiten“, Wie Arne und Stefan Roock kürzlich feststellten [1], haben diese interdisziplinären – cross-funktionalen – Teams alle Voraussetzungen, um diese Aufgaben zu meistern und innovative Lösungen zu finden.

Die Verantwortung für das “WIE” der Umsetzung liegt in der Hand des Teams. Nicht nur das Produkt, sondern auch das Team arbeitet mit einem empirischen Verbesserungs- und Lernprozess. Durch tägliches Feedback über den Fortschritt kann ein Team das Produkt und seine Arbeitsweise verbessern. Die große Eigenverantwortung und die Selbstorganisation in einem Team sorgen für ein gesteigertes Engagement, eine stärkere intrinsische Motivation und eine höhere Zufriedenheit der Mitarbeiter.

Durch den ständigen Verbesserungsprozess erhält der Kunde eine bessere Qualität, höhere Produktivität zu geringeren Kosten und ist am Ende mit dem Produkt und der Zusammenarbeit sehr zufrieden.

Planung und agil ist kein Widerspruch! In agilen Prozessen ist Planung kein abgeschlossener Schritt, sondern ein lebender – agiler – Prozess.

[1] Arne Roock und Stefan Roock: Wir lieben es, wenn ein Team funktioniert!, agile review (01/2013)