Гибкие методологии Agile и Scrum применяются для управления проектами в digital сфере. Каждая методика содержит набор руководящих принципов и процедур, которые определяют стиль работы команды и правила взаимодействия между сотрудниками. Мы рассмотрим методики Agile и Scrum — в чем разница между ними, как и где они используются.
Что такое Agile
Agile (эджайл) — это метод управления проектами, основанный на пошаговом выполнении задач. Он подходит для ситуаций, где присутствует риск неожиданных изменений, и нельзя спланировать рабочий процесс до конца. К подобным ситуациям относится разработка программных продуктов.
Манифест эджайл сформулирован в 2001 году, и с тех пор не потерял актуальности, несмотря на технические изменения в digital сфере. Методология основана на четырех базовых принципах.
- Люди и отношения между ними важнее, чем процессы и инструменты. Основой разработки продукта является коммуникация между клиентом и командой исполнителей, а также между членами команды. Если не достигнуто взаимопонимание, то налаженные процессы будут бесполезными. Гибкое управление проектами предполагает, что участвующие в разработке люди быстро обмениваются информацией и правильно понимают друг друга.
- Работающая программа важнее, чем составление документации. Классические методики для управления проектами включают оформление большого количества документов: технических требований, спецификаций, проектной сметы, плана испытаний продукта и плана утверждения результатов. Оформление документов занимает много времени. Методика эджайл ограничивает бюрократию. Она предполагает оформление только необходимых документов. Заменой проектной документации часто становится файл с названием User Stories. В нем содержится список задач, составленный на основе приоритетов заказчика. Этого достаточно для разработки продукта без бюрократических формальностей.
- Сотрудничество с клиентом важнее, чем согласование условий договора. В классической схеме управления проектами заказчик участвует только в начале и конце рабочего процесса. Он определяет требования к продукту и сроки разработки, а затем принимает готовый результат и дает обратную связь. Методика предполагает активное вовлечение заказчика в процесс разработки. Он сотрудничает со специалистами на всех этапах процесса. Подход помогает быстро достигнуть взаимопонимания и завершить разработку без срыва дедлайнов.
- Быстрая реакция на изменения вместо следования изначальному плану. Классическая методика управления проектами предполагает внесение правок на последнем этапе работы. Но эта стратегия не подходит для digital. Если откладывать внесение изменений, может быть поздно усиливать команду новыми специалистами или сдвигать сроки сдачи проекта.
Метод Agile предполагает готовность к изменениям на каждом этапе разработки проекта. По мере выполнения работы можно изменять приоритеты и возвращаться к изменению уже готовых частей продукта.
Соблюдение принципов Agile помогает команде быстро реагировать на возникающие проблемы и легко адаптироваться к изменению условий работы. Подход позволяет сократить затраты времени и усилий на разработку продукта.
Что такое Scrum
Scrum (скрам) — это подход к разработке продуктов в постоянно изменяющихся условиях. Эджайл и скрам не противоречат друг другу. Методика управления проектами Scrum реализуется в рамках философии Agile. Она подходит для работы над сложными проектами и для подготовки стартапов к запуску.
Эджайл описывает теорию управления проектами. Метод Scrum дает готовый набор инструментов для решения задач в рамках эджайл. По результатам исследования, проведенного сайтом digital. ai в 2021 году, около 66% сторонников концепции эджайл используют его при работе.
Методика основана на 3 ключевых принципах:
- Прозрачность. У каждого участника команды есть полная информация о проекте.
- Гибкость. Направление деятельности команды может поменять вектор.
- Развитие. Команда стремится улучшать продукт и совершенствовать процесс разработки.
Команда, работающая по этой методике, обычно состоит из 3−9 человек. Среди членов команды есть владелец продукта, который выступает с позиции заказчика, и Scrum мастер, отвечающий за правильную реализацию методики.
Разработка продукта по методике Scrum делится на этапы, которые называются спринтами. Этапы занимают одинаковое время. Продолжительность спринта может составлять 1−4 недели. В начале спринта выполняется постановка целей, а в конце проводится анализ результатов.
Для чего нужны гибкие методики
Классические методики управления проектами не подходят для digital. В большинстве случаев на этапе заключения договора клиент не может предоставить полный список требований к продукту. При разработке программного обеспечения требуется мгновенно реагировать на отзывы заказчика и мнение пользователей. Методы с долгой подготовкой к работе и быстрым внесением правок не подходят для постоянно меняющихся условий.
Гибкие методики управления проектами помогают команде быстро адаптироваться к переменам. Основные преимущества гибких стратегий:
- Не требуется составлять объемное техническое задание. Вместо него используется список задач, составленный на основе пожеланий клиента. В этот список можно в любой момент вносить изменения.
- Адаптивное управление бюджетом. Если выделенные на разработку деньги закончатся, то заказчик получит готовый к релизу продукт, но с меньшим количеством функций.
- Нет бюрократии. Для принятия решений достаточно получить одобрение клиента. Не нужно оформлять согласование каждого вопроса в письменном виде.
Методика основана на последовательном выполнении простых задач. Во время каждого спринта разрабатываются базовые функции продукта. Предложенный подход помогает быстро подготовить программу к релизу и постепенно расширять ее возможности.
Как их использовать
Внедрение Scrum подхода включает следующие этапы:
- Составить бэклог с задачами, которые нужно выполнить.
- Распределить задачи по степени приоритетности.
- Определиться с продолжительностью спринта.
- Сформировать постоянную команду для работы над проектами.
- Каждый день проводить собрание и планировать время выполнения задач.
- Контролировать сроки, используя диаграмму сгорания проекта.
- После завершения каждого спринта демонстрировать продукт заказчику.
При составлении бэклога не требуется продумывать все функции продукта. Достаточно составить базовый список задач и редактировать его в процессе работы над проектом. Пока задачи не ушли в разработку, можно бесконечно менять концепцию.
В начале спринта команда забирает часть согласованных задач из бэклога. Все задачи делятся на простые подзадачи (тикеты). Проводится оценка времени, которое нужно для выполнения тикета. В конце спринта проводится релиз актуальной версии продукта.
Диаграмма сгорания показывает, успевает ли команда выполнять поставленные задачи в срок. На график наносятся две линии: план разработки продукта и результаты команды. Диаграмма должна обновляться каждый день, чтобы руководитель проекта вовремя заметил отклонение от плана.
Особенности применения
Scrum предполагает минимум отчетности. Каждое утро члены команды должны давать ответы на 3 вопроса:
- Что я сделал вчера?
- Что я планирую сделать сегодня?
- Есть ли сложности при выполнении задач?
Участник команды должен ответить на эти вопросы за 3−5 минут. Сбор обратной связи не должен превращаться в обсуждение проекта или дискуссии о задачах. Это мероприятие проводится для руководителя, который должен увидеть и устранить трудности, мешающие работе команды.
При завершении спринта проводится ретроспектива. Участники команды выражают свое мнение о позитивных и негативных моментах прошедшего спринта. Сотрудники предлагают идеи, как можно работать быстрее избежать возможных проблем. В ходе ретроспективы проводится корректировка бэклога и определяются задачи на следующий спринт.
Сфера применения
Адаптивные методики управления проектами подходят для направлений, где многие требования к результату остаются неясными в начале работы. Эти методики подходят для отраслей, в которых специалисты сталкиваются с постоянными и непредсказуемыми изменениями рабочего процесса. К подобным отраслям относится и digital сфера. В перечень внезапных изменений может входить сокращение бюджета, появление новых требований к продукту или сокращение срока разработки.
Разница между методиками
Эджайл — это корпоративная философия, которая описывает стиль управления проектами. Scrum — это один из инструментов (фреймворков), позволяющих реализовать принципы эджайл подхода на практике.
Метод Scrum относится к эджайл концепции по следующим критериям:
- Сотрудничество и взаимопонимание как приоритет.
- Способность гибко адаптироваться к изменениям среды.
- Минимальное количество документации.
Главные отличия от других эджайл фреймворков:
- Рабочий процесс делится на спринты длительностью 1−4 недели.
- Задания, которые требуется выполнить, содержатся в бэклоге.
- В команде обязательно должны быть Scrum мастер и владелец продукта.
- Команда ежедневно проводит собрания для постановки целей и обмена обратной связью.
Классический метод управления проектами в digital работает неэффективно. В начале разработки продукта нельзя спрогнозировать все риски и проблемы, чтобы учесть их в техническом задании. Методики Agile и Скрам подразумеваю гибкий подход к управлению проектами. Различие состоит в том, что Agile описывает философию разработки, а Scrum предлагает набор инструментов. Эта методика предполагает последовательное выполнение простых задач, которые помогают быстро запустить продукт и постепенно дополнять его новыми функциями.