Waterfall je sekvencijalni, plan-vođeni pristup: skupi sve zahtjeve, dizajniraj, gradi, testiraj, zatim objavi — svaka faza se završava prije nego što počne sljedeća. Agile je iterativan i prilagodljiv: isporući male radne dijelove ponavljajući se i prilagodi se prema povratnim informacijama. Niti jedan nije univerzalno "bolji"; oni se poklapaju s različitim kontekstima.
