Коскадная модель

Mudeli ajalugu

Принцип работы Waterfall изобрел ученый-информатик Уокер Ройс. Модель получила название в 1976 году благодаря Томасу Тейеру и Томасу Беллу. В первые годы существования каскадная модель использовалась в любых видах программного обеспечения. Сейчас она применяется в технических, финансовых и медицинских секторах.

Etapid ja skeemid

В 1970 году в своей статье Ройс описал в виде концепции то, что сейчас принято называть «каскадная модель», и обсуждал недостатки этой модели. Там же он показал, как эта модель может быть доработана до итеративной модели.

В исходной каскадной модели следующие фазы шли в таком порядке:

  1. Определение требований
  2. Проектирование
  3. Конструирование (также «реализация» либо «кодирование»)
  4. Воплощение
  5. Тестирование и отладка (также «верификация»)
  6. Инсталляция
  7. Поддержка

5 tk plussid

Простота управления проектом.Каскадная модель предоставляет четкий и легко управляемый процесс разработки. Фазы выполняются последовательно, что облегчает контроль за жизненным циклом проекта;+

Прозрачность. Весь процесс разработки представлен в виде четких этапов, что делает проект прозрачным и для разработчиков, и для заказчиков;+

Фиксированные требования. Требования к проекту четко определены на начальном этапе, что предотвращает изменения в процессе разработки;+

Проектная документация. Создается подробная документация на каждой фазе разработки, что удобно для последующего сопровождения и поддержки программного продукта.

Высокий риск ошибок в планировании. Поскольку каскадная модель предполагает тщательное планирование на начальном этапе, ошибки в требованиях или оценках могут повлиять на все последующие этапы. Любые пропущенные детали могут стать проблемой на более поздних стадиях, требуя значительных усилий на исправление.

Сложности с учетом изменений в технологии. В процессе разработки могут появиться новые технологии или инструменты, которые могли бы оптимизировать процесс или улучшить продукт. Однако из-за линейной структуры каскадной модели их интеграция становится затруднительной, так как это потребует пересмотра уже выполненных этапов.

5 tk miinused

Сложность внесения изменений. В силу своей линейной структуры, каскадная модель может оказаться неэффективной при необходимости быстрого реагирования на изменения в требованиях после начала разработки;−

Длительный цикл разработки. Поскольку каждая фаза выполняется последовательно, процесс может быть долгим, и заказчик не увидит результатов до завершения всего проекта;−

Ограниченное взаимодействие с заказчиком. Клиент может видеть результаты только после завершения проекта, что уменьшает возможность для обратной связи и корректировок в реальном времени.

Отсутствие гибкости при возникновении непредвиденных проблем. Каскадная модель предполагает строгое следование плану. Если на каком-то этапе возникают сложности, связанные с техническими ограничениями или нехваткой ресурсов, это может повлиять на весь проект, так как не предусмотрены итерации для адаптации к подобным ситуациям.

Риск недостаточной тестируемости на ранних этапах. Тестирование в каскадной модели начинается только на завершающих стадиях разработки, поэтому ошибки или проблемы в дизайне или коде могут остаться незамеченными до поздних этапов, когда их исправление становится более сложным и затратным.

Проблемы с мотивацией и вовлеченностью команды. Поскольку каждый этап работы длится длительное время и выполняется строго последовательно, команда может столкнуться с монотонностью работы. Отсутствие промежуточных результатов или видимых достижений может снизить мотивацию участников проекта.