Методология Waterfall
Что такое водопадное программное обеспечение?
Водопадная методология, также известная как водопадная модель, представляет собой последовательный процесс разработки, который подобно водопаду проходит все фазы проекта (например, анализ, проектирование, разработка и тестирование), причем каждая фаза полностью завершается перед началом следующей.
Говорят, что методология водопада соответствует поговорке "дважды отмерь, один раз отрежь". Успех водопадного метода зависит от объема и качества работы на начальном этапе, когда заранее документируется все, включая пользовательский интерфейс, пользовательские истории, а также все варианты и результаты реализации функций.
Если большая часть исследований проведена заранее, то оценка времени, необходимого для выполнения каждого требования, является более точной, а это может обеспечить более предсказуемую дату выпуска. В водопадном проекте, если в процессе работы меняются параметры, изменить курс сложнее, чем в Agile-методологии.
Что такое Waterfall программное обеспечение?
Программное обеспечение Waterfall помогает руководителям проектов справляться с поставленными задачами. Поскольку Waterfall представляют собой достаточно сложный поэтапный подход, они требуют пристального внимания и координации.
Программное обеспечение Waterfall может быть настольным или облачным. Оно помогает вам:
- структурировать процессы,
- организовать задачи,
- создавать диаграммы Ганта и графики,
- отслеживать ход выполнения проекта.
5 общих этапов водопадного процесса
Методология Waterfall представляет собой хронологический процесс, основанный на фиксированных датах, требованиях и результатах. В этом случае от отдельных групп исполнителей не требуется постоянная связь, и, если не требуется специальных интеграций, они обычно работают самостоятельно.
Кроме того, члены команды работают независимо друг от друга, и от них не требуется так часто предоставлять отчеты о состоянии дел, как при использовании Agile-подхода. Как правило, один этап не начинается до завершения предыдущего.
5 этапов процесса Waterfall метода
На примере проекта разработки программного обеспечения Waterfall процесс обычно включает в себя следующие этапы:
Требования
Методология Waterfall основана на убеждении, что все требования к проекту могут быть собраны и поняты заранее. Менеджер проекта делает все возможное, чтобы получить детальное представление о требованиях спонсора проекта. Письменные требования, обычно содержащиеся в одном документе, используются для описания каждого этапа проекта, включая стоимость, допущения, риски, зависимости, показатели успеха и сроки завершения.
Проектирование
Здесь разработчики программного обеспечения разрабатывают техническое решение проблем, поставленных в требованиях к продукту, включая сценарии, макеты и модели данных. Сначала создается высокоуровневый или логический проект, который описывает цель и объем проекта, общее движение каждого компонента и точки интеграции. После этого он преобразуется в физический проект с использованием конкретных аппаратных и программных технологий.
Реализация
После завершения проектирования начинается техническая реализация. Это, пожалуй, самая короткая фаза Waterfall процесса, поскольку кропотливые исследования и проектирование уже выполнены. На этом этапе программисты разрабатывают приложения на основе требований и спецификаций проекта, а также проводят тестирование и внедрение. Если на этом этапе требуется внести существенные изменения, то это может означать возврат к этапу проектирования.
Верификация или тестирование
Перед тем как выпустить продукт на рынок, необходимо провести тестирование, чтобы убедиться в отсутствии ошибок и выполнении всех требований, что обеспечит хорошее качество работы пользователей с программным обеспечением. Для создания тестовых примеров команда тестировщиков обращается к проектной документации, персоналиям и сценариям пользовательских ситуаций, предоставленным менеджером по продукту.
Развертывание и сопровождение
После того как программное обеспечение было внедрено на рынке или передано заказчикам, начинается этап сопровождения. По мере обнаружения дефектов и поступления запросов на изменения от пользователей назначается команда, которая занимается обновлением и выпуском новых версий программного обеспечения.
Преимущества Waterfall методологии
Методология "водопада" - это простая, четко определенная методология управления проектами, хорошо зарекомендовавшая себя. Поскольку требования четко сформулированы с самого начала, каждый участник проекта знает, что и когда должно быть сделано, и может эффективно планировать свое время в течение всего проекта.
К другим преимуществам Waterfall метода относятся:
- Разработчики могут выявить ошибки проектирования на этапах анализа и проектирования, что помогает им избежать написания ошибочного кода на этапе реализации.
- После определения требований можно точно оценить общую стоимость проекта, а также сроки его реализации.
- При структурированном подходе легче оценивать прогресс в соответствии с четко определенными этапами.
- Разработчики, присоединившиеся к проекту, могут легко войти в курс дела, поскольку все, что им необходимо знать, содержится в документе с требованиями.
- Заказчики не всегда добавляют в проект новые требования, что задерживает производство.
Недостатки методологии Waterfall
Как и в любом процессе разработки, сильные стороны в одной области могут означать слабые стороны в другой. Настойчивость методологии Waterfall в отношении предварительного планирования проекта и приверженности определенному определенному ходу означает, что она менее гибкая, или маневренная, на более поздних этапах. Изменения, вносимые на более поздних этапах процесса, могут потребовать много времени, сил и средств.
Другие причины, по которым методология Waterfall может не работать, включают:
- При использовании хронологического подхода проекты могут выполняться дольше, чем при использовании итеративного подхода, например Agile-метода.
- Заказчики часто не знают в полной мере, чего они хотят на начальном этапе, что открывает возможность для запросов на изменения и новые функции на более поздних этапах процесса, когда их труднее удовлетворить.
- Клиенты не участвуют в этапах проектирования и реализации.
- Ползучесть сроков - при задержке одного этапа процесса задерживаются все остальные этапы.
Кто использует модель Waterfall?
Waterfall используется руководителями проектов, которые сталкиваются с проектами разработки, которые:
- Не имеют неоднозначных требований.
- С самого начала дают четкое представление о том, как будут развиваться события.
- Есть клиенты, которые вряд ли изменят масштабы проекта после его начала.
Если руководитель проекта предпочитает четко определенные процессы, где заранее известны стоимость, проектные и временные требования, то ему подойдет метод Waterfall, если только сам проект способствует этим ограничениям.