Команда, работающая по Agile, двигается к цели спринтами: каждую неделю подводит итоги и показывает промежуточные варианты. В Waterfall есть чёткие сроки и техническое задание, в которые нужно вписать проект.
Например, создание сайта обычно проходит в семь этапов:
В Agile заказчик может тестировать функциональность и при необходимости вносить изменения в план работ, например, чтобы добавить блок с новостями на сайте или заменить сочетание шрифтов на этапе дизайна.
Waterfall не предполагает промежуточных изменений. Если даже они появятся, ни на одном из семи этапов их вносить не будут. Команда действует строго по ТЗ, которое согласовали на старте.
В гибких методологиях, к которым относится Agile, требования можно корректировать: изменять приоритеты проекта во время реализации или тестировать гипотезы. Например, во время спринта внести изменения в техническое задание по результатам интервью с клиентами.
Waterfall применим, когда заказчик чётко знает, что он хочет получить в итоге, — готовый проект презентуют только в конце всего цикла работы.
Разберëм разницу между моделями на примере создания веб-приложения для книжного интернет-магазина.
Waterfall
В начале работы клиент прописывает свои ожидания от дизайна и функциональности. Например, хочется отдельный раздел с акциями, который будет открываться при входе в приложение, личный кабинет, где покупатель сможет отслеживать заказ, и блог — электронный журнал о книжных новинках.
Все требования учитывают в техническом задании, которое клиент согласовывает на старте, и формируют финальную документацию для работы над проектом. После этого оценивают объём работ и сроки.
Возможные проблемы:
● Нужно что-то доработать. Например, клиент на старте не учёл в ТЗ программу лояльности, чтобы начислялись баллы за покупку. Приходится переделывать личный кабинет, из-за чего срок проекта увеличивается.
● На финальных стадиях разработки клиент просит добавить функцию как на сайте конкурента. Это возможно только в следующей версии, потому что в начале проекта это не зафиксировали.
Agile
Каждый спринт начинается с планирования — например, на первом этапе команда будет делать макет будущего приложения. Глобальные задачи — их ещё называют эпики — на этот спринт будут следующие: нарисовать mind map с функциями, затем сделать прототип в Figma, согласовать с клиентом. Задачи на спринт участники команды определяют вместе с проджект-менеджером.
Промежуточным результатом для клиента будет макет будущего приложения. Чтобы команда могла двигаться дальше, клиент комментирует, что нравится, а что хочется улучшить. Эти задачи будут решать в следующем спринте.
Возможные проблемы:
Если клиент будет давать слишком много пожеланий для улучшения продукта на каждом этапе, есть риск затянуть сроки проекта из-за того, что все удлинившиеся спринты соберутся в итоге в большой снежный ком и серьёзно увеличат сроки сдачи проекта.
Многие методы Waterfall продолжают использовать в банковской сфере: заранее собирают и анализируют требования, планируют проект, выделяют бюджет, получают одобрение всех заинтересованных сторон.
Лера Фимина
Каждый проект уникален — разные требования, специфика, состав команды, заказчики, внешние условия. Поэтому удобнее совмещать разные фреймворки. Так принципы будут использоваться эффективнее, а риски ошибиться в процессе — ниже. Главное в работе с инструментами менеджера — исходить из удобства команды, тестировать разные подходы и оставлять только то, что нужно.
Читать также: