Analiza wymagań użytkownika Projektowanie Implementacja Testy i wdrożenie Konserwacja i reengineering
Fazy te mogą po sobie następować wg różnych cyklów, np. kaskadowego, kaskadowego z powrotami, spiralnego, itp.