SCRUM | Wasserfall – Projektorganisation klassische und agile Methoden

Einführung in die Projektorganisation mit Wasserfall

Zwei starke Methoden der Projektorganisation im Vergleich.

Projektorganisation klassische und agile Methoden — was steckt dahinter? Dieser Artikel beschäftigt sich inhaltlich mit den wesentlichen Aspekten von Projekten und in diesem Sinne mit den Modellen „Wasserfall“ und „SCRUM“ als projektorganisatorische Methoden. Generelle Vorgehensweisen und Charakteristika werden hierbei dargestellt und in den projektbezogenen Kontext gestellt.

Nicht nur wir bei Inpsyde erleben eine Veränderung in unserer Projektorganisation. War in der Vergangenheit die “Wasserfallmethode” das Kernmodell aller projekttechnischen Organisationsstrukturen, so treten seit ein paar Jahren immer mehr agile Modelle in den Vordergrund. Angefangen mit „KANBAN“ und dem heutigen „SCRUM“ existieren zwei Standardmodelle agiler Projektorganisation.

Für das operative Projektgeschäft interner und externer Projekte ist eine Wahl häufig schwierig, da ein gewisses Mindset in einer Organisation vorherrscht und selbiges sich gerade wandeln muss.

Das Prozessmodell „Wasserfall“ ist ein sehr Projektmanager-gelenktes Instrument. Im Vergleich zu agilen Ansätzen ist es sehr „starr“ und im Sinne der „Nachjustierung“ durchaus kritisch zu betrachten. Agile Methoden widerrum verlangen von einem Projektteam ein großes Maß an Selbstorganisation und Mündigkeit aller beteiligten Personen fernab der jeweiligen Projektrolle.

Dimensionale Eigenschaften von Projekten

Bevor auf die Projektorganisation als solches eingegangen werden kann ist es wichtig, Projekte als solche zu beleuchten. Was sind Projekte? Was verstehen wir (Inpsyde und die Allgemeinheit) darunter?

Projekte zeichnen sich durch folgende Charakteristika aus:

  1. Einmaligkeit
  2. Begrenzte Ressourcen
  3. Fester Zeitrahmen
  4. Projektspezifische Organisation und Koordination
  5. Neu- und Einmalig
  6. Ein variabler Anteil bezüglich individueller Komplexität

Beispiel

  • Software soll für den Kunden auf die speziellen Anforderungen A angepasst werden
  • Der Kunde stellt für diesen Umfang Summe Z als materielle Ressourcen zur Verfügung
  • Der Projektabschluss soll zum Datum D erfolgen
  • Die Organisation O des Projektes wird vom Auftragnehmer gestellt und koordiniert
  • Das Projekt P ist einmalig und wird in dieser Form/Ausprägung F nur singulär umgesetzt
  • Diese Anforderungen, sei es bzgl. des kompletten Projektes oder nur für Teilaspekte, sind neuartig und weisen einen gewissen Komplexitätsgrad KG auf

Die Einflussfaktoren werden von den entsprechenden Projektbeteiligten und dem Umfeld federführend beeinflusst:

  • Auftragnehmer
  • Externe Stakeholder (z.B. Kunden, staatliche Institutionen, „Kunden des Kunden“ oder Konkurrenzunternehmen, Marktumfeld oder -Trends)

In einer Projektstruktur sind zwei Projektorganisationsformen geläufig, um die wesentlichen Handlungsabläufe einer Projektorganisation gewährleisten und damit Projekte möglichst erfolgreich umsetzen zu können. Diese sind grundsätzlich „Wasserfall“ und das agile „SCRUM“. Beides sind Phasenmodelle, deren Ausprägungen höchst unterschiedlich sind und dementsprechende Einsatzzwecke aufweisen.

Einführung in die Methode „Wasserfall“ der Projektorganisation

Typische Phasen des „Wasserfalls“:

  • Systems Engeneering
  • Analysis
  • Design
  • Coding
  • Testing
  • Maintenance

Im „Wasserfallmodell“ werden diese Projektphasen stufenweise und strikt durchlaufen. Der Zweck dieser Herangehensweise besteht darin, dass in den ersten Phasen alle Anforderungen eines Projektes in Gänze erfasst und analysiert werden. Daraus werden die Handlungen (Design/Coding) abgeleitet und das Projekt final durch (Kunden-)Tests und Maintenance produktiv gemacht. Im „Wasserfallmodell“ wird alles streng hierarchisch „abgearbeitet“. Dabei bilden klar definierte Projektphasen unter der Beachtung aller Anforderungen bzgl. des zu bearbeitenden / umzusetzenden Projekts den Grundtenor des Modells. Jede Phase hat einen strikten Anfangs- und Endzeitpunkt und baut aufeinander auf.

Einführung in die Methode „SCRUM“ der Projektorganisation

Einführung in Scrum als Methode der Projektorganisation

“SCRUM“ hingegen verfolgt einen „kleinteiligen“ Ansatz in der Softwareentwicklung. Hierbei handelt es sich um einen agilen Ansatz, der die „Beweglichkeit“ einer Projektumsetzungsstruktur als den Kernpunkt aller Aktivitäten darstellt. Es fußt auf dem konstanten Informationsfluss und stellt in der Theorie ein „geordnetes Chaos“ her.

Das Gesamtprojekt wird auf einzelne Fragmente heruntergebrochen, um selbige innerhalb von kurzer Zeit (Sprints 1- 4 Wochen für gewöhnlich) zu entwickeln. Dies hat zur Folge, dass alle Projektaufgaben und Anforderungen klar umrissen werden. Im Anschluss beginnt das Team bereits mit einer operativen Entwicklung. Dies bedeutet auch, dass das Team in der Projektorganisation im „SCRUM“ flexibel auf Unklarheiten oder auch neue Herausforderungen reagieren kann, bevor aufwändige Nacharbeiten an einem Gesamtsystem notwendig werden.

“Wasserfall” vs. “SCRUM” Phasen

Im „Wasserfallmodell“ werden die sechs Phasen hierarchisch nach und nach abgearbeitet. Bevor eine Phase anfangen kann, muss die vorherige bereits abgeschlossen sein. Dies ermöglicht und bedingt zeitgleich eine komplette Anforderungsaufnahme im Sinne des Gesamtprojekts. Weiterführend bedeutet ein Abschluss einer Phase zeitgleich eine Form der „Unveränderlichkeit“ bzgl. der Phase.

Als Beispiel soll hierbei die Designphase dienen:

Sobald ein System designed ist und von allen internen als auch externen Stakeholdern beschlossen wurde, werden keinerlei Änderungen mehr eingeplant. Dies hat zur Folge, dass der Weg der ersten drei Phasen gerade in komplexen Projekten durchaus „ausufern“ kann und diese Phasen in einer zeitlichen Verteilung von ~50% des Gesamtprojektes veranschlagt werden können.

Die Praxis zeigt jedoch, dass Änderungswünsche auch im weiteren Projektverlauf sehr wohl einfließen müssen. Das passiert z.B. durch neue Versionierung von Teilimplementationen oder (neu auftretende) kundenspezifische Wünsche. Dieser Umstand bedeutet in einem „Wasserfallmodell“, dass Nachplanungen erforderlich werden. Diese beeinflussen wiederum das System-Design und damit die Projektzeit teils empfindlich, da alle Phasen erneut angepasst und durchlaufen werden müssen.

Um Änderungen oder auch Planungszeiten zu verkürzen bzw. optimaler ausnutzen zu können, bietet sich eine agile Prozessorganisation an. Die gängigste hierbei ist „SCRUM“. Im „SCRUM“ laufen die Projektphasen teils parallel zueinander. Planungen sind, wie beschrieben, im „SCRUM“ Sprintweise organisiert, die je nach Projektkomplexität und Ausgestaltung zwischen 1 – 4 Wochen betragen.

Die Grundhaltung des „SCRUM“ bzw. Zielführung ist dabei auf einen Satz zu beschränken:

“SCRUM ist die Grundhaltung den bestmöglichen Output zu den gesetzten Bedingungen zu erbringen.“

Bezüglich den gesetzten Bedingungen ist hierbei die Gesamtprojektlänge im Verhältnis zu den zu erbringenden Ergebnissen und der Anzahl der Sprints zu verstehen. Jeder Sprint enthält Fragmente des Gesamtprojektes und soll so gewählt werden, dass sie innerhalb eines Sprints produktiv abgenommen werden können. Da Planungsrunden und Ergebnisse jeweils zum Anfang/Ende eines Sprints erhoben werden, können auch sich verändernde Projektanforderungen in die aktive Entwicklung einbezogen werden.

„Wasserfall“ vs. „SCRUM“ Vor- und Nachteile

Der wesentliche Vorteil von „Wasserfall“ gegenüber „SCRUM“ liegt in der Planungssicherheit und bedeutet als Abgrenzung zwischen einander auch gleichzeitig den Vorteil des „SCRUM“ gegenüber dem „Wasserfall“. Während das sehr hierarchisch anmutende „Wasserfall“ sehr fokussiert auf die strukturelle Planungsarbeit ist, wird im „SCRUM“ eher „häppchenweise“ gearbeitet, was durch die freiere Planungsform bei sich ständig ändernden Umfängen von Vorteil ist.

Des Weiteren ist der unterschiedlich anmutende hierarchische Ansatz ein Kernpunkt der entsprechenden Projektorganisation. Während in einem „Wasserfall“ die Anforderungen und demnach die entsprechenden Umsetzungen von „oben herab“ in das Entwicklungsteam gelangen, ist der Ansatz im „SCRUM“ eine möglichst freie Entfaltung und Einflussnahme aller beteiligten Projektmitglieder.

“SCRUM“ lässt sich durchaus schnell einführen, verlangt jedoch eine hohe Eigenmotivation und das Mitgestaltungsbedürfnis aller Projektbeteiligten. Eine Kernthese des „SCRUM“ ist, dass sich das entsprechende Projektteam nach Möglichkeit selbst verwaltet und Anforderungen durch Entwickler mit aufgenommen und in ein System-Design umgesetzt werden. Die zusätzliche Komponente des SCRUM-Masters ist hierbei, dass es dem Entwicklungsteam ermöglicht wird, nach Möglichkeit barrierefrei im Sinne von fachlichen oder auch menschlichen Hindernissen arbeiten zu können. Kurz gesagt, soll sich ein SCRUM-Master mittelfristig selbst „überflüssig“ machen. Er ist der prozessuale Kopf des Teams.

Der Product-Owner nimmt die Anforderungen auf, verarbeitet sie und gestaltet/steuert sie entsprechend mit dem gesamten Team. Im „Wasserfall“ fällt diese Rolle, für gewöhnlich, dem Projekt-Manager zu. Dieser nimmt nicht nur Anforderungen auf, sondern gibt zeitgleich auch ein konkretes Entwicklungsziel vor, sodass ein entsprechendes Entwicklerteam lediglich die „punktgenaue“ Umsetzung der Anforderungen zu gewährleisten hat.

Der sich unterscheidende Fokus bzgl. des System-Designs vs. der stetigen Entwicklung kann je nach Projekt eines der beiden Systeme begünstigen.

Zusammenfassung

Während „Wasserfall“ das gesetztere Projektmodell ist, setzen immer mehr Projektleiter auf „SCRUM“. Das kundenbezogene Individualisierungs- und Transformationsbedürfnis führt dazu, dass Planungssicherheiten immer mehr abhanden kommen. Um diesem Rechnung zu tragen ist „SCRUM“ als agiler Projektorganisationsansatz das geeignete Mittel, welches jedoch auch an seine Grenzen kommen kann.

Wenn Projekte von Anfang bis Ende ein festes Ziel, eine entsprechende Ausgestaltung im Sinne der Anforderungen und „Unklarheiten“ aufweisen, ist eine Projektorganisation mittels „Wasserfall“ zu präferieren. Gerade in sehr komplexen Systemen, die sich z.B. modular gegenseitig bedingen ist eine Implementierung mittels „SCRUM“ oftmals weniger angebracht, da dass Zusammenfügen von Spring-Fragmenten durchaus seine Tücken haben kann – im Sinne der gegenseitigen Wechselwirkungen. Dieses gilt vor allem bei sehr großen und/oder sicherheitkritischen Projekten.

Eine Stigmatisierung von „Wasserfall“ oder „SCRUM“ sollte als kritisch angesehen werden, da beide ihre Daseinsberechtigung aufweisen. Entsprechend je nach Projekt sollte das „passende“ Modell im Sinne einer zielführenden Projektorganisation ausgewählt werden. Es gibt wenig Grundregeln im Sinne des „was“ wird „wann“ eingesetzt. Aus der Praxis von Inpsyde heraus wird jedoch immer klarer, dass der Trend bzw. Transformationsprozess immer mehr in Richtung agiler Methoden geht, jedoch je nach Projekt auch „Wasserfall“ seinen Einsatz findet.

Dies ist der wahre Kern für erfolgreiche Projekte, methodisches Wissen auf ein bestehendes Problem anwenden zu können. Dabei spielt es heutzutage eine große Rolle die geeignete Projektorganisation für ein entsprechendes Projekt bzw. Problem auszuwählen.

“Pläne sind nichts, Planung ist alles.”

Dwight D. Eisenhower