Wasserfallmodell
Das Wasserfallmodell ist ein lineares und sequentielles Entwicklungsmodell für Softwareentwickler. Die Entwicklung nach dem Wasserfallmodell hat verschiedene Ziele für jede Entwicklungsphase.
Dabei sollte man sich das Modell wie einen Wasserfall an einem steilen Berg vorstellen: Sobald das Wasser über den Rand der Klippe geflossen ist und seine Reise den Berg abwärts begonnen hat, kann es nicht wieder zurückfließen. Die Softwareentwicklung nach dem Wasserfallmodell verhält sich ähnlich. Ist eine Entwicklungsphase abgeschlossen, tritt das Projekt in die nächste Phase ein und kann nicht wieder zurück.
Der Vorteil des Wasserfallmodells ist, dass es eine Aufteilung der Entwicklung erlaubt und das Programmieren erleichtert. So lässt sich ein Zeitplan mit Fristen für jede Entwicklungsstufe festlegen, so dass sich der Entwicklungsprozess in verschiedene Phasen unterteilt werden kann. Die Entwicklung bewegt sich dabei von der Konzept-, über die Design-, Implementierungs-, Test-, Installationsphasen bis zur Fehlersuche und endet beim Go-Live und der Wartung. Jede Phase des Entwicklungsprozesses funktioniert dabei nach strengen Vorgaben, ohne Überlappung oder iterative Schritte.
Der Nachteil des Wasserfallmodells ist, dass es keine Revisionen erlaubt. Sobald sich ein Programm in der Testphase befindet, ist es schwierig etwas zu ändern, dass bereits in der Konzeptphase erstellt wurde.
Alternativen zum Wasserfallmodell enthalten eine gemeinsame Anwendungsentwicklung (Joint Application Development, JAD), Rapid Application Development (RAD), Synchronisation, Stabilisierung, Build-and-Fix- und Spiralmodell.