model wodospadu jest liniowym, sekwencyjnym podejściem do cyklu życia oprogramowania (SDLC), które jest popularne w inżynierii oprogramowania i rozwoju produktów. Model wodospadu podkreśla przebieg kroków. Podobnie jak kierunek przepływu wody przez krawędź klifu, dla każdej fazy rozwoju wyznaczane są odrębne punkty końcowe lub cele i nie można ich ponownie ustalić po zakończeniu. Termin został po raz pierwszy wprowadzony w pracy opublikowanej w 1970 roku przez Dr. Winstona W., Royce i nadal znajduje zastosowanie w zastosowaniach Wzornictwa Przemysłowego.
metodologia waterfall składa się z siedmiu nie nakładających się etapów:
- wymagania: potencjalne wymagania, terminy wytyczne dla projektu są analizowane i umieszczane w specyfikacji funkcjonalnej. Ten etap zajmuje się definiowaniem i planowaniem projektu bez wspominania o konkretnych procesach.
- Analiza: Specyfikacje systemu są analizowane w celu wygenerowania modeli produktów, a biznes poprowadzi produkcję. Dzieje się tak również wtedy, gdy zasoby finansowe i techniczne są kontrolowane pod kątem wykonalności.,
- projektowanie: dokument specyfikacji projektu jest tworzony w celu zarysowania wymagań technicznych projektowych, takich jak język programowania, sprzęt, źródła danych, architektura i usługi.
- kodowanie / implementacja: źródło opracowane przy użyciu modeli, wymagań logicznych wyznaczonych na wcześniejszych etapach. Zazwyczaj system jest projektowany w mniejszych komponentach lub jednostkach, zanim zostanie wdrożony razem.
- Testowanie: to miejsce, w którym odbywają się testy jakości, testy jednostkowe, beta w celu zgłaszania problemów, które mogą wymagać rozwiązania. Może to spowodować wymuszone powtórzenie etapu kodowania w celu debugowania., Jeśli system przejdzie testy, wodospad kontynuuje do przodu.
- operacja/ wdrożenie: produkt lub aplikacja są uważane za w pełni funkcjonalne i są wdrażane w środowisku rzeczywistym.
- Konserwacja: Konserwacja korekcyjna, adaptacyjna i doskonaląca jest przeprowadzana w nieskończoność w celu ulepszenia, aktualizacji i ulepszenia produktu końcowego. Może to obejmować wydanie lub wydanie nowych wersji.,