Thema
- #Wasserfallmethode
- #Festgelegte Anforderungen
- #Dokumentation
- #Sequenzieller Ablauf
- #Softwareentwicklung
Erstellt: 2024-05-14
Erstellt: 2024-05-14 09:50
Wasserfall-Entwicklungsmethode
Der Wasserfall-Entwicklungsansatz (Waterfall Model) ist eine der ältesten Methoden in der Softwareentwicklung und bezeichnet einen Ansatz, bei dem Projekte in aufeinanderfolgenden Schritten durchgeführt werden. Dieses Modell ist so aufgebaut, dass man erst dann zum nächsten Schritt übergeht, wenn der vorherige vollständig abgeschlossen ist. Es ähnelt dem Ablauf eines Wasserfalls (waterfall), der von oben nach unten fließt, und zeichnet sich durch eine schrittweise Vorgehensweise aus. In diesem Artikel werden wir uns eingehend mit der Definition des Wasserfall-Entwicklungsansatzes, seinen Hauptmerkmalen, Vor- und Nachteilen sowie Anwendungsbeispielen befassen.
Der Wasserfall-Entwicklungsansatz ist eine Methodik, bei der die einzelnen Phasen des Softwareentwicklungslebenszyklus (SDLC: Software Development Life Cycle) nacheinander durchlaufen werden. Dieses Modell wurde erstmals in den 1970er Jahren von Winston W. Royce vorgestellt und wird seitdem in vielen Projekten eingesetzt. Das Wasserfallmodell umfasst folgende Schritte:
1. Anforderungsanalyse (Requirements Analysis): In dieser Phase werden die Anforderungen des Projekts erhoben und präzise definiert.
2. Design (Design): In dieser Phase wird die Architektur und die detaillierte Planung der Software durchgeführt.
3. Implementierung (Implementation): In dieser Phase wird der eigentliche Code geschrieben und die Software entwickelt.
4. Test (Test): In dieser Phase wird die entwickelte Software getestet, um Fehler zu finden und zu beheben.
5. Bereitstellung (Deployment): In dieser Phase wird die Software in die reale Betriebsumgebung bereitgestellt.
6. Wartung (Maintenance): In dieser Phase wird die bereitgestellte Software gewartet und verbessert.
Wie in der obigen Abbildung dargestellt, wird nach der Fertigstellung der Planung und der Freigabe mit dem Design begonnen. Nach Abschluss des Designs und der Freigabe folgt die nächste Entwicklungsphase. Nach Abschluss der Entwicklung und Freigabe erfolgt der Test, und wenn keine Fehler vorliegen, erfolgt der Start. Innerhalb der Planungsphase können mehrere Änderungen vorgenommen werden, ebenso wie innerhalb der Designphase.
Sobald die Entwicklung jedoch gestartet ist, werden die Planung nicht mehr geändert, es sei denn, es wird die Entwicklung ebenfalls geändert. Es werden keine Änderungen an der Planung vorgenommen, die zu Änderungen an der Entwicklung führen.
1. Klare Struktur: Die einzelnen Phasen sind klar voneinander getrennt, sodass der Fortschritt leicht nachverfolgt werden kann.
2. Dokumentation: Durch die sorgfältige Dokumentation in jeder Phase ist es einfach, den Projektfortschritt und die getroffenen Entscheidungen nachzuverfolgen.
3. Leichte Verwaltung: Planung und Zeitmanagement sind einfach, und für jede Phase lassen sich klare Ziele festlegen.
1. Schwierige Änderungen: Da die Anforderungen in der Anfangsphase festgelegt werden, sind spätere Änderungen an den Anforderungen schwierig und kostenintensiv.
2. Abhängigkeit der Phasen: Bevor eine Phase abgeschlossen ist, kann nicht mit der nächsten begonnen werden, was zu Verzögerungen führen kann.
3. Geringe Kundenbeteiligung: Nach der Anfangsphase ist die Kundenbeteiligung begrenzt, daher kann das Endergebnis möglicherweise nicht den Erwartungen des Kunden entsprechen.
Es ist ein Begriff, der im Zusammenhang mit Entwicklungsansätzen verwendet wird und bedeutet, dass die Entwicklung schrittweise und in festgelegten Schritten erfolgt.
❗Zusätzliche Informationen, die hilfreich sein könnten
Ein gegensätzlicher Ansatz ist der Agile AnsatzDabei wird ein Prototyp gestartet und die Probleme und Verbesserungen werden kontinuierlich und ohne Unterbrechung behoben und die Funktionen werden hinzugefügt. Diese Methode wird häufig bei der Entwicklung eigener Dienste verwendet, da sie es ermöglicht, die Vollständigkeit des Dienstes zu verbessern und die Fähigkeit zu haben, ihn kontinuierlich zu ändern und zu verbessern.
Wenn der Agile Ansatz für die Entwicklung von Dienstleistungen für Kunden (SI-Outsourcing) verwendet wird, müssen die Personalkosten und Gemeinkosten (Monatsmiete, Nebenkosten usw.) vom Kunden monatlich bezahlt werden. In der Realität werden die Entwicklung jedoch meist in einem festgelegten Zeitraum (z. B. 2 Monate Entwicklung, 5 Monate Entwicklung) abgeschlossen. Es ist daher eher ungewöhnlich, dass die Kosten in Form einer monatlichen Zahlung ohne festgelegtes Ende erfolgen.
Kommentare0