Dlaczego tak
Najpierw trzeba ustalić, czego potrzebuje klient (analiza wymagań), następnie zaplanować, jak to zbudować (projekt architektury, danych i interfejsu), potem napisać kod, sprawdzić go testami i dopiero przetestowany system wdrożyć u klienta, po czym następuje utrzymanie. Projektowanie przed analizą wymagań oznacza projektowanie czegoś, czego zakresu jeszcze nie znamy. Wdrożenie przed testowaniem przenosi wykrywanie błędów na użytkowników.