Один из более обширно применяемых и узнаваемых способов разработки программного обеспечения — методология Waterfall. Эта поочередная модель разработки, предполагающая процесс разработки в несколько шагов, начиная с планирования и заканчивая сопровождением продукта. Разработка по модели каскадной разработки является противоположностью гибкой методологии Agile, и хотя у Waterfall есть свои достоинства, она также критикуется за свою твердость и недочеты в стремительно меняющемся мире IT.
Основными шагами разработки Waterfall являются определение требований, проектирование, реализация, тестирование и поддержка. Принципиальным принципом Waterfall является последовательность выполнения этих шагов, при которой каждый последующий начинается только после окончания предшествующего. Это позволяет четче структурировать процесс разработки и держать под контролем его выполнение, но может замедлить адаптацию к изменениям в проекте либо требованиях юзера.
Сравнивая Waterfall и Agile, можно отметить, что хотя каскадная модель разработки подходит для неких проектов, быстрорастущие компании и команды в IT все почаще обращаются к гибким методологиям. Кандидатуры Waterfall, такие как Agile, Scrum либо Kanban, предлагают более гибкие решения для адаптации к изменениям, увеличения продуктивности и улучшения взаимодействия снутри команды и с заказчиком.