Особенности управления цифровым проектом: Agile, Waterfall и Hybrid – что выбрать?
53% руководителей проектов в сфере ИТ используют «часто или всегда» Agile. 55% работают с Hybrid в некоторых или всех своих проектах. Методология Waterfall оказалась востребована у 52% опрошенных. С таким итогом в 2024 году завершилось исследование Pulse of the Profession. В его рамках эксперты из PMI (Project Management InstИТute), США, проводят мониторинг тенденций в проджект-менеджменте каждый год. Как сделать выбор в треугольнике между Agile, Waterfall и Hybrid? Ответ на этот вопрос дал Артур Булатов, директор по маркетингу A&T Trade Russia.
Артур — опытный управленец в сфере ИТ, которому приходилось выбирать методы управления проектом, когда на кону стояли миллионы рублей. A&T Trade Russia, где он возглавляет маркетинговую службу, поддерживает один из главных в рунете цифровых маркетплейсов по продаже звукового оборудования и музыкальных инструментов — «Музторг».
Именно Булатов стоял за внедрением на торговой площадке рекомендательных систем. В результате принятых решений выручка онлайн-магазина увеличилась на 30%, а средний чек в рублях — на 24%.
Что такое Waterfall?
Суть Waterfall (альтернативные названия: «Водопад», каскадная модель, предикативный метод) без труда поймет любой, кто работал с таск-трекерами вроде Asana или Trello, любыми CRM. В зародыше — это диаграмма Ганта из начала XX века, где этапы работы выстроены хронологически, и вы должны следовать этап за этапом, чтобы получить результат. Waterfall — самый старый метод проджект-менеджмента. Суть в этапности и в их привязке к четким срокам.
Подход давно используется и закреплен в российских национальных стандартах как рекомендованный. Например, именно он описан в ГОСТ 34, ГОСТ Р 59793 c руководством по созданию автоматизированных систем. Однако, как следует из статистики, упомянутой в начале статьи, руководители проектов чаще предпочитают Agile или работают с Waterfall в связке с Agile, в составе «гибридного» метода.
Agile: фактор переделок и «клиент, который сам не знает, чего хочет»
Чтобы понять Agile, можно представить себе спираль. На каждом витке (спринте) продукт, будь то ИТ или другой проект, совершает «приращение». То есть выходит на ступеньку выше по степени готовности. При этом на каждом витке спирали происходит все время один и тот же цикл действий, который включает не только меры, направленные на само создание результата проекта, но и на его параллельную аналитику. Подходов на основе Agile сложилось множество, тот же Scrum, но типичный Agile — это повторение на каждом спринте таких действий: «короткий подход», тест, обратная связь, заново. То есть мы что-то быстро пробуем и сразу же показываем клиенту, чтобы не получилась ситуация, когда клиент видит завершенное программное обеспечение, например, и говорит: «это совсем не то, что я хотел».
Как руководитель ИТ-проектов на музыкальных маркетплейсах и платформах могу сказать определенно: внутренний или внешний заказчик может не быть довольным результатом, даже если вы старались учесть все требования, которые он озвучил. На то есть много причин, например, его видение может меняться прямо по ходу реализации задуманного.
Agile позволяет в течение всего проекта сохранять уверенность в том, что вы делаете именно то, что у вас заказали или корректировать процесс, если требования поменялись на ходу. Я знаком с научным менеджментом и могу также сказать, что стоимость переделок растет по мере движения работы от проекта до законченного продукта на 20% с каждым новым этапом.
Другими словами, любое возражение клиента лучше учесть на стадии проекта, чем когда на его устранение придется потратить миллионы долларов.
Waterfall и Agile: плюсы и минусы
Кажется, что у Waterfall нет преимуществ после столь комплементарного описания Agile, однако это не так. Давайте взвесим сильные и слабые стороны двух подходов.
Плюсы Waterfall
- Предикативным этот способ также называют потому, что он опирается на тщательное предварительное планирование, то есть вы заранее знаете, что и как будете делать. Заранее определены сроки, объем проекта, его стоимость. Специалисты считают метод стабильным, предсказуемым, четко структурированным. Как «пощупать» эту стабильность? Очень просто. Так как вам не нужно постоянно экспериментировать и показывать заказчику промежуточные результаты, возможно тщательное документирование. Если в ответственный момент у вас уволится важный разработчик, новому специалисту будет легко понять, что делать дальше и что происходит в проекте.
- Так как действия выполняются последовательно, а не параллельно, как в Agile, меры, которые могут помочь оптимизировать что-то, сделать быстрее в следующий раз очевидны всем.
- У проекта есть ясное начало и конец.
Минусы Waterfall
- Чем дальше к концу, то есть к результату проекта, тем сложнее поменять его объем, требования к результату и вообще что-либо изменить без того, чтобы не «посыпались» планы по бюджету, срокам и так далее.
Плюсы Agile
- Подход является итерационным, то есть «спиралевидное» движение с постоянно повторяющимися действиями и встроенная обратная связь с заказчиком в режиме online (кстати, есть немало ИТ-продуктов, автоматизирующих все это: Jira, WEEEK), позволяют быстро перестраивать течение проекта под новые, меняющиеся, понятые, наконец, верно требования клиента;
- баги и ошибки выявляются на ранней стадии, что снижает затраты на их устранение.
- вы будете уверены, что заказчик примет результат работы, потому что вы согласовывали его с ним на каждом шагу.
Минусы Agile
- Для реализации проекта понадобится более компетентная команда (кросс-функциональная) и опытный руководитель. Работа по спринтам потребует умения сотрудничать, в том числе со специалистами других профилей и понимания тонкостей методологии проджект-менеджмента, в противном случае результата не будет. Любой метод будет работать только в том случае, если его правильно применяют.
- Специалисты и менеджмент должны быть готовы к тому, что в проекте будет все постоянно меняться и приоритетом для них должна быть необходимость реализовать проект в кратчайшие сроки.
- У проекта не будет отчетливых конца и начала.
- Невозможно детальное документирование процесса.
Кому подходят Waterfall и Agile?
Исходя из сильных и слабых сторон можно сказать следующее. Waterfall хорош тогда, когда требования клиента к проекту являются «железобетонными». Объем проекта должен быть понятен с самого начала. Он не должен быть слишком сложным и не должно быть чересчур большого количества различных заинтересованных сторон.
В противном случае возникновение новых условий в процессе работы практически неизбежно, а проект не будет к этому готов. Agile хорошо подходит, если проекту нужна гибкость и приспособляемость. Качества, которые хотел бы каждый руководитель.
Беда в том, что Agile многим проектам на практике не подойдет. Например, в атомной индустрии недопустима даже стоимость переделки, связанной с одним спринтом. То есть экспериментальный подход тут не годится, нужно заранее знать, что делаешь и делать только это.
Hybrid: все хорошее от Agile и Waterfall и ничего плохого?
За последние годы сложилось немало модификаций Hybrid: Water-Scrum-Fall, Waterfall-Agile, Hybrid Y-model, Agile-Stage-Gate. Но принцип, с помощью которого методология стремится «подружить» Agile и Waterfall, в целом, остается одинаковым. Просто некоторые этапы проекта выполняются «спринтами», а где это невозможно, реализуется классический подход. Возьмем пример разработки и запуска среднестатистического веб-сайта. Процесс включает планирование и согласование с клиентом, UX/UI-дизайн, собственно разработку, тестирование и запуск.
Если мы использованием одну из версий Hybrid, то планирование — тщательное планирование одна из сильных сторон Waterfall — выполняется «Водопадом». UX — то есть первый опыт взаимодействия пользователей с сайтом, мы также выполняем по Waterfall. Управляемо и контролируемо тестируем, собираем отзывы, мнение заинтересованных в разработке сайта сторон. На этапе UX пользователи уже одобрили несколько страниц? Начинается этап UI, когда доводится до ума весь интерфейс. Тут контролировать можно не так много, как в случае главных, самых важных страниц. И именно здесь включается Agile.
«Спринты» помогают быстро фиксировать реальные проблемы на UI, сосредотачиваться на них и быстро с пользователями решать возникающий дискомфорт в работе с сайтом в контакте с пользователями.
Плюсы Hybrid
- Можно сочетать гибкость Agile и управляемость. Тщательное планирование, контролируемость Waterfall.
Минусы Hybrid
- Многократно возрастает сложность внедрения. Если технический руководитель принял неправильные решения или плохо владеет методологией, то проект ждет провал, потому что высокие результаты «гибридный подход» обеспечивает только при верном использовании. Особые трудности вызывает применение абстрактный требований методики к конкретной специфике конкретного проекта. Требования нужно правильно интерпретировать в своем случае.
Что выбрать: Agile, Waterfall или Hybrid?
Главное, не принимать решения стихийно, как все еще делают многие российские, да и зарубежные топ-менеджеры. Есть научный менеджмент, есть «Теория принятия решений». Некоторые конкретные инструменты менеджмента могут помочь получить объективное представление о том, какой метод лучше всего применим в специфике вашего проекта: Квадрат Декарта, Метод «Светофор», Техника 10-10-10. При кажущейся простоте за ними стоит очень многое: математика, статистика, психология. Выберите метод и следуйте его этапам. В последние годы стали появляться специальные методики для того, чтобы выбрать именно между Agile, Waterfall и Hybrid. Интересную работу представил Т. Сесинг «Agile против Waterfall: модель принятия решений для правильного выбора методики для проекта». Эта модель включает два шага. Первый: нужно определить, есть ли в проекте ряд конкретных признаков, исключающих выбор Agile как методологии по умолчанию. Как говорилось выше, во многих проектах «гибкая» разработка неприменима. На атомных станциях, в аэрокосмической отрасли вы не можете идти путем небольших экспериментов, как предписывает Agile, потому что стоимость переделок и устранения последствий будет непозволительно большой.
Если критериев проекта, в котором Agile не подходит «с порога», не наблюдается, то переходим к шагу второму. Сесинг предлагает 15 важных с точки зрения выбора конкретного метода аспектов, в частности, объем проекта, время, стоимость, специфика организации. В итоге по каждому аспекту для Waterfall и Agile присваивается определенный «вес» от 4 до 0, где 0 — полная неприменимость метода, а 4 — абсолютная применимость. Метод, который набрал больше всего баллов и будет методом, который нужно выбрать.
Научные методы помогают ничего не упустить. В целом же логика рассуждения при выборе методики разработки выглядит следующим образом. Если проект нуждается в большой гибкости, требования к результату не совсем понятны и требуется учесть мнение огромного количества заинтересованных сторон, то выбираем Agile. Если важнее контроль, а входящие требования понятны и вряд ли будут меняться, то Waterfall — хороший выбор. Hybrid полезен, если нам нужно сочетать гибкость и структурированность, но его тяжело правильно внедрить в специфике конкретного проекта.