• Home
  • |
  • Blog
  • |
  • Software Engineering Tutorial #3 – Das Wasserfallmodell

Software Engineering Tutorial #3 – Das Wasserfallmodell

Zuletzt aktualisiert: April 20, 2025

Das Wasserfallmodell

Heute werden wir das sogenannte Wasserfallmodell unter die Lupe nehmen. Was dieses Vorgehensmodell ausmacht und warum es stark kritisiert wird, erfährst du in diesem Beitrag.

Inhaltsverzeichnis

1. Was wirst du in diesem Beitrag lernen?

Zunächst werden wir uns anhand einer Grafik ansehen, was das Wasserfallmodell ist und wie es funktioniert. Am Ende befassen wir uns dann mit den Kritikpunkten zu diesem Modell.

2. Was ist das Wasserfallmodell?

Im vorherigen Beitrag haben wir bereits den Software-Lebenszyklus kennengelernt. Dabei haben wir gesehen, dass sich dieser aus den folgenden 6 Phasen zusammensetzt, die in der Softwareentwicklung stets berücksichtigt werden müssen: 

1  Anforderungsanalyse
2  Design und Entwurf
3  Implementierung
4  Testphase
5  Abnahme und Einführung
Wartungsphase

Das Wasserfallmodell ist ein Vorgehensmodell, das zeigt, wie man diese Phasen nacheinander durchlaufen kann. 

Um das Ganze zu veranschaulichen, werfen wir an dieser Stelle einen Blick auf die folgende Grafik. Du wirst feststellen, dass sie im Grunde fast genauso aussieht wie die Grafik aus dem letzten Beitrag, mit dem Unterschied, dass sich hier zwischen den Phasen Stufen befinden.

Eine Grafik, auf der das Wasserfallmodell zu sehen ist

Das Wasserfallmodell ist ein lineares Modell, was bedeutet, dass die Phasen zeitlich aufeinanderfolgen.

Anders gesagt: Es ist nicht möglich, mehrere Phasen parallel laufen zu lassen. Beispielsweise kann die Anforderungsanalyse nicht gleichzeitig mit der Testphase stattfinden. In diesem Vorgehensmodell durchläuft man die Phasen nacheinander, weshalb es als linear bezeichnet wird.

3. Die Phasen des Wasserfallmodells

In jeder Phase des Wasserfallmodells werden zu Beginn Meilensteine festgelegt, die erreicht werden müssen. Außerdem wird ein klarer Endpunkt definiert.

Sobald dieser Endpunkt erreicht ist, geht man automatisch in die nächste Phase über. Genau deshalb nennt man es das Wasserfallmodell, denn der Ablauf von Phase zu Phase erinnert bildlich an einen Wasserfall, der stufenweise nach unten fließt.

Das bedeutet, wir beginnen mit der Anforderungsanalyse, in der wir alles planen und die Meilensteine festlegen, die das Ziel dieser Phase definieren. Sobald alle Ziele erreicht sind und die Anforderungsanalyse abgeschlossen ist, geht es weiter in die Design- und Entwurfsphase. Hier erstellt man das gesamte Software-Design.

Erst wenn auch diese Phase vollständig abgeschlossen ist, geht es in die Implementierungsphase, in der die eigentliche Programmierung stattfindet. Nach der Programmierung endet dieser Abschnitt und wir gehen in die Testphase über. Danach folgen die Abnahme- und Einführungsphase und schließlich die Wartungsphase

4. Die Vorteile des Wasserfallmodells

Alles läuft dabei strikt zeitlich hintereinander ab – also sequenziell, ohne dass Phasen parallel verlaufen. Das bringt einige Vorteile mit sich. Zum einen sind die Phasen klar voneinander abgegrenzt, was es ermöglicht, für jede Phase individuelle Ziele festzulegen. Durch diese klare Trennung können in jeder Phase viele Meilensteine definiert werden, wodurch der Fortschritt gut kontrollierbar ist.

Ein weiterer großer Vorteil des Wasserfallmodells ist die frühe Klarheit über die Kosten und die voraussichtliche Dauer des Projekts. Sobald alles einmal geplant ist, lassen sich diese Faktoren gut abschätzen. Da man für jede Phase klare Ziele und Meilensteine definiert, kann man von Anfang an genau berechnen, welche Kosten anfallen und wie lange jede Phase dauern wird. Durch die strukturierte und sequenzielle Vorgehensweise hat man von Beginn an also einen genauen Überblick über den Projektverlauf.

5. Die Nachteile am Wasserfallmodell

Jetzt kommen wir allerdings zum großen „Aber“, denn das Wasserfallmodell bringt auch einige Nachteile mit sich. Sehen wir uns die Kritikpunkte nun also mal genauer an.

5.1 Es gibt kein Zurück mehr

Der erste Punkt ist, dass es in der Praxis oft schwierig ist, wenn nicht sogar unmöglich, die Phasen klar voneinander abzugrenzen.

Stell dir vor, wir befinden uns nach der Implementierungsphase in der Testphase und in dieser Phase werden jetzt Fehler entdeckt, wodurch an mehreren Stellen nachgebessert werden muss. 

Eigentlich müssten wir diese Probleme beheben. Doch wenn man streng nach dem Wasserfallmodell arbeitet, ist die Implementierungsphase bereits abgeschlossen und ein Rücksprung zu einer vorherigen Phase ist laut diesem Modell nicht vorgesehen.

Das bedeutet, dass man nichts mehr programmieren dürfte, wenn man sich strikt an das Modell halten würde. Hier zeigt sich bereits, dass es kaum möglich ist, die Phasen so klar voneinander zu trennen.

In realen Softwareprojekten ist es oft notwendig, mehrere Phasen erneut zu durchlaufen, um am Ende ein gutes Ergebnis zu erzielen. Das steht jedoch im Widerspruch zum Wasserfallmodell.

5.2 Keine Flexibilität

Ein weiterer Kritikpunkt ist der Verlust der notwendigen Flexibilität. Stell dir vor, du stehst vor der Aufgabe, ein System zu programmieren und es gibt von Anfang an zwei oder drei kritische Stellen, bei denen unklar ist, ob sie so umgesetzt werden können wie geplant. 

In der Praxis beginnt man oft mit den kritischsten Aspekten eines Systems, denn wenn diese nicht funktionieren, lohnt sich die restliche Arbeit nicht. Das Wasserfallmodell steht allerdings auch im Widerspruch zu diesem Ansatz, da man streng den Phasen folgen muss. 

Ich hatte vorhin bei den Vorteilen erwähnt, dass die Kosten und die voraussichtliche Dauer des Projekts von Beginn an festgelegt werden. Das gilt jedoch nur, wenn die Anforderungen an das zu entwickelnde System während des gesamten Prozesses stabil bleiben. Das bedeutet, dass sich während der gesamten Entwicklungs- und Projektlaufzeit nichts an den Anforderungen ändert

Auch danach, in der Wartungsphase, sind Änderungen kaum möglich, da ein Rücksprung zu früheren Phasen im Wasserfallmodell nicht vorgesehen ist.

Wenn sich am Ende des Projekts eine Anforderung ändert – sei es durch neue Technologien, veränderte Geschäftsmodelle oder Konkurrenz durch innovative Start-ups – muss man entsprechend reagieren und das System anpassen. Dazu wären Rückschritte nötig, um neue Anforderungen zu definieren und das System entsprechend umzubauen. 

6. Warum das Wasserfallmodell kaum noch anwendbar ist

In der Praxis sind Anforderungen also nie wirklich stabil. Genau deshalb ist das Wasserfallmodell in modernen und oft komplexen Softwareprojekten kaum noch anwendbar. Dennoch ist es ein grundlegendes Modell, das man kennen sollte. In der heutigen Softwareentwicklung wird es allerdings nur noch selten eingesetzt.

Wir werden in den kommenden Beiträgen selbstverständlich noch andere Vorgehensmodelle kennenlernen, die heute weit verbreitet und sehr relevant sind.