Wasserfall -Projekte sind in der Vergangenheit oft gescheitert. Sie lieferten nicht den gewünschten Wert für das Unternehmen, kamen zu spät oder liefen aus dem Budget. Die gewählte Vorgehensmethode war meist der Sündenbock für das Scheitern. Aber wie immer im Leben ist es nicht schwarz oder weiß. Die Auswahl der richtigen Software-Prozessmethode hängt von der Umgebung des Projekts ab.

Die angepasste Stacey-Matrix

Angepasste Stacey-Matrix für Technologie / Softwareentwicklungsumgebung

Die ursprüngliche Stacey-Matrix unterstützt Entscheidungsfindungsprozesse, indem sie geeignete Managementaktionen vorschlägt und vier Bereiche definiert: einfach, kompliziert, komplex und chaotisch. Die vorgeschlagenen Aktionen hängen stark vom Kontext der Entscheidungsfindung ab.

Die Dimensionen der angepassten Matrix: WIE und WAS

Die x-Achse der angepassten Matrix beschäftigt sich mit dem WIE.  Wenn das Team die Technologie gut kennt und sie schon oft eingesetzt hat, sind wir auf der linken Seite. Andernfalls, wenn die Technologie für das Team völlig neu ist, befinden wir uns auf der rechten Seite der Dimension. Die y-Achse positioniert das WAS. Unten auf der Achse sind sich alle Stakeholder des Projekts über die Ziele einig und haben das gleiche Verständnis vom erwarteten Ergebnis. Oben ist das Gegenteil der Fall, keine vereinbarten Anforderungen und keine Übereinstimmung bei den Erwartungen. Der individuelle Mix des Projekts weist auf einen bestimmten Bereich mit einem Prozessmodellvorschlag in der angepassten Matrix hin.

Wasserfall …

Wasserfall ist eine traditionelle Projektmanagement-Methode mit sequentiellen Schritten und ohne Iterationen. Es wird massiv im Voraus geplant, bevor mit der Umsetzung begonnen wird. Wenn alle Ziele und Schritte klar sind, produziert Wasserfall konsistente Ergebnisse auf vorhersehbare und wiederholbare Weise. Die klar definierten Aufgaben führen zu einer optimierten Abfolge und optimalen Ressourcenzuweisung. Wasserfall optimiert die Ressourcen und den Return on Invest, wenn Ursache und Wirkung für jeden im Projektteam klar sind.

… vs. Agil

Agile steht für SCRUM-, Kanban- und LEAN-Methoden mit Blick auf Flexibilität, schnelle Reaktion und sich ständig ändernde Umgebungen. Sie beginnen schneller mit einem kleineren Umfang für das aktuelle Inkrement, wobei der Umfang wie ein rollendes Fenster ist. Die Ungewissheit der Projektziele erfordert eine schnelle Anpassung und Adaption während der gesamten Ausführung. Nur eine enge und häufige Zusammenarbeit mit allen Teammitgliedern macht agile Projekte erfolgreich. Wenn Ursachen und Wirkungen nicht klar sind, arbeitet agil in kleinen Schritten auf ein wertschaffendes und breit akzeptiertes Ergebnis hin.


Einfach bis chaotisch – von „known knowns“ zu „unknowables“

Einfach = leicht erfassbar, die „known knowns

Projekte im einfachen Bereich bergen nur wenige Überraschungen, Entscheidungen sind fakten- oder evidenzbasiert, der Fortschritt erfolgt in geordneten, sequentiellen Schritten und das WAS ist jedem klar. Projekte jeder Größe mit klaren Aktivitäten und wiederholbaren Ergebnissen passen in diese Kategorie. Es wurde bereits mehrfach durchgeführt und es existieren Best Practices als Benchmarks. Der Prozess ist einfach und könnte im Stil einer Checkliste abgearbeitet werden. Ein einfaches, vollständig vorhersehbares Projekt voranzutreiben bedeutet, es auf das Maximum zu reduzieren, um die einzelnen Teile leichter verständlich zu machen. Beispiele für einfache Projekte: Rezepte, Aufgaben an einem Fließband, checklistenbasiertes Arbeiten.

Kompliziert = nicht einfach, aber dennoch vorhersehbar, die „known unknowns“

Der komplizierte Bereich unterteilt sich in gesellschaftlich und politisch kompliziert und technisch kompliziert. Kompliziert bedeutet weniger einfach, aber immer noch einigermaßen vorhersehbar.

In sozial/politisch komplizierten Umgebungen können sich die Leute nicht auf den Zweck des Projekts einigen und die Erwartung an die Ergebnisse ist nicht klar. Die Anforderungen sind unter den verschiedenen Stakeholdern widersprüchlich, was mit Wasserfall gelöst werden könnte, um Klarheit über das WARUM vor dem WAS vor dem WIE zu erhalten. Auf der anderen Seite kann die Anwendung agiler Techniken helfen, die Stakeholder davon zu überzeugen, sich auf die bereits erreichten Ergebnisse zu einigen und die weitere Anforderungsdiskussion zu entzerren. Das Projektteam muss besonders darauf achten, dass eine frühzeitige Einigung zwischen den Stakeholdern zustande kommt. Politisch/sozial kompliziert ist z.B., wenn die Beziehung zwischen Ursache und Wirkung nicht klar genug ist oder widersprüchliche Meinungen zwischen verschiedenen Interessengruppen bestehen.

In technisch komplizierten Zusammenhängen ist das WARUM und WAS zu erreichen ist, klar. Doch das WIE ist nicht klar. Ein agiles, iteratives Vorgehen hilft dabei, Feedback vom Projektteam über das Erreichte zu bekommen, was Anpassungen ermöglicht.
In einem komplizierten Projekt voranzukommen bedeutet auch, es auf das Maximum zu reduzieren, um die einzelnen Teile leichter verständlich zu machen. Technisch kompliziert ist z.B. der erstmalige Einsatz einer bestimmten Technologie.

Komplex = nicht vollständig wissbar, aber einigermaßen vorhersehbar, die „unknown unknowns“

Der Komplexitätsbereich steht für hohes Risiko und Unsicherheit und erfordert eine hohe Rückkopplungsfrequenz. Weder Anforderungen noch die Ausführung sind klar. Ganzheitlich definierte Prozessmethoden funktionieren nicht mehr. Der Kontext verlangt nach einem explorativen Vorgehen mit Transparenz, häufiger Überprüfung und Anpassung. SCRUM als Prozessmethode im Werkzeugkasten des agilen Mindsets ist die Methode der Wahl. Sie erhöht die Transparenz mit kleinen Iterationen und häufigen Kontrollpunkten, die kostengünstige Anpassungen ermöglichen. Die Teamplanung ist der Startpunkt für jede neue Iteration und erlaubt sofortiges Feedback von Stakeholdern an die Teams, um die nächste Iteration anzupassen.
Komplexität kann nicht reduziert werden . Ein gewisses Verständnis kann erreicht werden, Komplexität kann jedoch nicht geplant werden, sie wächst einfach. Ein gutes Beispiel für ein komplexes Projekt ist die Softwareentwicklung im Allgemeinen. Die Anforderungen sind selten gleich zu Beginn vollständig definiert und es ist selten klar, welche architektonischen Lösungen anderen überlegen sind.

Chaotisch = weder wissbar noch vorhersehbar, die „unknowns“

Im chaotischen Bereich sind sowohl die Anforderungen als auch der Ausführungspfad undefiniert und das Risiko ist hoch. Kanban als die flexibelste Projektmanagement-Methode ist das Werkzeug der Wahl. Ohne Struktur wie Sprints und mit dem einzigen Fokus auf Work in Progress (WIP) konzentriert sich Kanban auf das kontinuierliche Liefern von Ergebnissen, um weitere Änderungen in der Richtung und den Backlog-Elementen zu ermöglichen.


Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert