Что такое модель водопада в SDLC? Преимущества & Недостатки

Содержание:

Anonim

Что такое модель водопада?

МОДЕЛЬ ВОДОПАДА - это последовательная модель, которая разделяет разработку программного обеспечения на заранее определенные этапы. Каждая фаза должна быть завершена до того, как следующая фаза может начаться без перекрытия между фазами. Каждая фаза предназначена для выполнения определенных действий во время фазы SDLC. Он был представлен в 1970 году Уинстоном Ройсом.

Различные фазы модели водопада в программной инженерии

Различные фазы Действия, выполняемые на каждом этапе
Этап сбора требований
  • На этом этапе от клиента собираются подробные требования к разрабатываемой программной системе.
Стадия проектирования
  • Спланируйте язык программирования, например Java, PHP, .net
  • или базы данных, такие как Oracle, MySQL и т. д.
  • Или другие высокоуровневые технические детали проекта
Построенный этап
  • После этапа проектирования идет этап сборки, который представляет собой не что иное, как кодирование программного обеспечения.
Этап испытаний
  • На этом этапе вы тестируете программное обеспечение, чтобы убедиться, что оно построено в соответствии со спецификациями, предоставленными клиентом.
Этап развертывания
  • Разверните приложение в соответствующей среде
Стадия обслуживания
  • Когда ваша система будет готова к использованию, вы можете позже потребовать изменить код по запросу клиента.

Когда использовать модель водопада SDLC

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

Преимущества и недостатки модели водопада

Преимущества Недостатки
  • Перед следующим этапом разработки каждый этап должен быть завершен.
  • Ошибка может быть исправлена ​​только на этапе
  • Подходит для небольших проектов, где требования четко определены
  • Это нежелательно для сложного проекта, где требования часто меняются.
  • Они должны выполнить тест обеспечения качества (проверка и подтверждение) перед завершением каждого этапа.
  • Период тестирования наступает довольно поздно в процессе разработки.
  • Подробная документация выполняется на каждом этапе цикла разработки программного обеспечения.
  • Документация занимает много времени разработчиков и тестировщиков.
  • Проект полностью зависит от команды проекта с минимальным вмешательством клиента.
  • Ценные отзывы клиентов не могут быть включены в текущую фазу разработки
  • Любые изменения в ПО вносятся в процессе разработки.
  • Небольшие изменения или ошибки, возникающие в готовом программном обеспечении, могут вызвать множество проблем.