Разница между итеративной разработкой и каскадным подходом заключается в следующем:
Итеративная разработка предполагает разбиение проекта на несколько итераций, в ходе которых выполняются практически все типы работ. 1 В результате создаётся реально работающая система с постоянно совершенствующимися функциональными возможностями. 1 Практически во всех итерациях выполняется и анализ требований, и проектирование, и тестирование. 1
Каскадный подход подразумевает, что разработка делится на фазы, каждая из которых характеризуется своим набором работ. 1 Сначала происходит выявление всех требований к проекту и их анализ. 1 Затем проектная группа приступает к проектированию системы (чаще всего сверху вниз, разбив создаваемую систему на подсистемы и далее детализируя их до уровня программных процедур и функций). 1 После этого начинаются разработка кода и модульное тестирование. 1 Затем наступает очередь сборки и системного тестирования. 1 И так далее — вплоть до передачи системы заказчику. 1
Таким образом, итеративная разработка ориентирована на поэтапное улучшение и гибкость, в то время как каскадный подход сосредоточен на полном завершении каждого этапа перед переходом к следующему. 3