загрузчик изображения

Waterfall или agile-внедрение — какую модель выбрать?

Не существует единого универсального метода внедрения ИТ-систем, который бы работал в реалиях каждого проекта и предприятия. Сейчас доминируют две формы: так называемая каскадная и гибкая модель. Модель Waterfall — это традиционная модель управления проектами. Это линейный и последовательный подход. Задачи, выполненные на одном этапе, должны быть рассмотрены и проверены перед переходом к следующему этапу. Методология Agile, в свою очередь, — это поэтапный подход, основанный на гибком реагировании на изменения.

Каковы преимущества и недостатки этих методов? Для каких проектов они лучше всего подходят?

Модель Waterfall

Управление проектами Waterfall — это последовательный подход, который разбивает проект на отдельные фазы. Типичные этапы включают сбор требований, анализ, проектирование, кодирование, внутреннее тестирование, приемочное тестирование, установку, внедрение, обучение и ввод в эксплуатацию. Следующий этап может быть продолжен только в том случае, если предыдущий этап был успешно завершен.

Одной из самых больших проблем, связанных с каскадной моделью, является тот факт, что получатель системы может проверить результат работы только после завершения одного этапа или всего проекта. В негативном сценарии это может привести к ситуации, когда клиент на этапе приемочных испытаний заявляет, что эффект не соответствует его ожиданиям. Это пустая трата времени и денег, и значительно увеличивает риск отмены проекта.
С каскадной моделью связана большая проектная документация. Она часто использует руководства и лучшие практики, найденные в методологии PRINCE2 или руководствах PMI (Project Management Institute), но высокий уровень формальности ограничивает гибкость проекта и снижает способность реагировать на большое количество или существенные изменения требований.

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

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

Простота планирования и проектирования благодаря точному предположению, сделанному в начале проекта;

проектирование системы охватывает весь объем работ с самого начала;

точное определение объема работ;

Относительно простое определение бюджета;

легкая проверка хода выполнения работ.

Недостатки каскадной модели:

жесткая структура затрудняет внесение изменений;

не учитывается фактор неопределенности;

Подтверждение выполнения требований проекта происходит по его завершении;

требует большого количества документации;

переход на следующую фазу возможен только после окончания предыдущей;

ограниченное привлечение клиентов может привести к снижению удовлетворенности результатами;

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

Гибкая модель

Гибкие методологии позволяют внедрять ИТ-систему небольшими шагами. Это обеспечивает высокую гибкость процесса, лучший контроль и высокую адаптивность решений к меняющимся потребностям. Идея гибкой реализации заключается в том, чтобы быстро начать работу со стандартной версией программы, а затем постепенно итеративно настраивать ее для удовлетворения конкретных потребностей пользователя.

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

В начале каждого спринта создается список задач в соответствии с определенными приоритетами совместно с клиентом. Клиент может свободно изменять приоритет для всех еще не разработанных функций системы. В конце спринта поставщик системы и клиент проверяют и оценивают прогресс.

Гибкая модель упрощает рационализацию затрат. Когда поставщики программного обеспечения предлагают реализовать систему в традиционной модели, они обычно берут на себя буфер, чтобы защитить себя от непредвиденных ситуаций. Из-за необходимости прогнозировать затраты на рабочую силу в долгосрочной перспективе такое предложение часто оказывается завышенным.

Преимущества гибкой модели

Быстрый ввод в эксплуатацию за счет начала работы над базовой версией, что позволяет распределить во времени часто наиболее трудоемкие этапы проекта по корректировке конкретных требований пользователя;

эффективное тестирование за счет разбиения на небольшие части и постоянного обновления;

ускоренный жизненный цикл ПО;

быстрая проверка предположений, клиент может быстро увидеть, как различные функции системы работают на практике;

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

большее вовлечение заказчика в разработку системы часто приводит к улучшению пользовательского опыта;

рационализация затрат.

Недостатки гибкой модели

требует значительного участия клиента;

Проектная команда

Участники должны быть осведомлены о принципах, регулирующих методологию Agile, и должны быть высоко мотивированы;

Общая стоимость проекта оценить сложнее, чем для каскадной модели;

меньше документации, чем для каскадной модели.

Водопад и Agile — это сумма различий

Идея — Agile — это постепенный и итеративный подход, водопад — это линейный и последовательный подход.

Строительство — Agile делит проект на спринты, а метод водопада — на фазы.

Применение — метод Agile помогает в реализации множества небольших проектов, модель водопада лучше подходит для завершения одного большого проекта.

Отношения с клиентами — Agile фокусируется на тесном сотрудничестве с клиентом, модель водопада фокусируется на реализации проектных предположений.

Оценка — в подходе Agile проекты отслеживаются на постоянной основе во время ежедневных встреч, оценка в модели водопада происходит в конце этой фазы.

Внесенные изменения — Agile позволяет изменять требования в любое время, каскадный подход остается в рамках предполагаемого объема.

Тестирование — в Agile-модели тестирование проводится на постоянной основе, в каскадной модели — на завершающей стадии проекта.

Водопадная модель и agile-модель — это принципиально разные подходы к управлению проектами. Оба метода имеют существенные преимущества и недостатки. Какой из них будет лучшим в той или иной ситуации?