Waterfall to sekwencyjne, sterowane planem podejście: zbierz wszystkie wymagania, zaprojektuj, zbuduj, przetestuj, a następnie wydaj — każda faza kończy się przed rozpoczęciem następnej. Agile to iteracyjne i adaptacyjne: dostarczaj małe fragmenty roboczego oprogramowania wielokrotnie i dostosowuj na podstawie informacji zwrotnych. Żaden z nich nie jest uniwersalnie "lepszy"; pasują do różnych kontekstów.
