← Все статьи
Agile

Agile простыми словами: что такое аджайл, ценности и принципы манифеста, гибкие методологии

Agile называют то методологией, то модным словом для созвонов по утрам. На деле это набор ценностей и принципов, на которых построены scrum, kanban и другие гибкие методологии. Разбираем, что такое agile простыми словами, откуда он взялся, что написано в манифесте, чем гибкий подход отличается от waterfall и как внедрить его в команде без карго-культа.

Agile простыми словами: что такое аджайл, ценности и принципы манифеста, гибкие методологии

Что такое agile простыми словами

Agile (аджайл, от английского agile — «гибкий, проворный») — это подход к управлению проектами, при котором работа идёт короткими циклами, а результат показывают заказчику часто и по частям. Вместо одного большого плана на год команда планирует ближайшие одну-четыре недели, делает работающий кусок продукта, получает обратную связь и решает, что делать дальше.

Суть agile в одной фразе: лучше часто показывать небольшой, но работающий результат и корректировать курс, чем долго делать «идеальный» продукт и в конце узнать, что он никому не нужен.

Важно сразу развести понятия. Agile — не методология, а набор ценностей и принципов, своего рода философия. Конкретные правила — роли, встречи, доски — задают гибкие методологии, которые на этой философии построены: scrum, kanban, XP и другие. Поэтому фразы «мы работаем по agile» мало: стоит уточнить, как именно.

Откуда взялся agile

В 1980–1990-е годы большинство программных проектов вели по каскадной модели: сначала полностью описать требования, потом спроектировать, потом разработать, протестировать и сдать. На крупных проектах это часто заканчивалось одинаково: за год-два разработки требования успевали устареть, бюджет — закончиться, а заказчик получал не то, что ему было нужно к моменту сдачи.

В ответ разработчики начали придумывать «лёгкие» подходы с короткими итерациями: Scrum, экстремальное программирование (XP), DSDM, FDD, Crystal. У них были разные правила, но общая идея: часто выпускать работающий результат и опираться на обратную связь, а не на исчерпывающий план.

В феврале 2001 года 17 авторов таких подходов, среди них Кент Бек, Мартин Фаулер, Кен Швабер, Джефф Сазерленд и Алистер Кокберн, собрались на горнолыжном курорте Сноуберд в штате Юта. Итогом встречи стал короткий документ — Манифест гибкой разработки программного обеспечения (Agile Manifesto). Так у семейства подходов появилось общее имя — agile.

Agile-манифест: четыре ценности

Манифест умещается на одной странице. Его основа — четыре ценности:

  1. Люди и взаимодействие важнее процессов и инструментов. Хорошая команда с плохим трекером сделает больше, чем плохая команда с идеальным регламентом.
  2. Работающий продукт важнее исчерпывающей документации. Документы нужны, но прогресс измеряется тем, что уже работает, а не количеством страниц.
  3. Сотрудничество с заказчиком важнее согласования условий контракта. Заказчик — участник процесса, а не сторона, с которой воюют по пунктам договора.
  4. Готовность к изменениям важнее следования первоначальному плану. Если мир изменился, план должен меняться вслед за ним.

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

12 принципов agile

Вместе с ценностями авторы сформулировали двенадцать принципов. Именно они объясняют, как ценности превращаются в ежедневную работу:

  1. Наивысший приоритет — удовлетворение заказчика за счёт ранней и регулярной поставки ценного продукта.
  2. Изменение требований приветствуется даже на поздних стадиях: гибкие процессы используют изменения для конкурентного преимущества заказчика.
  3. Работающий продукт выпускается часто — раз в несколько недель или месяцев, чем чаще, тем лучше.
  4. Представители бизнеса и команда разработки работают вместе ежедневно на протяжении всего проекта.
  5. Над проектом работают мотивированные люди: им создают условия, оказывают поддержку и доверяют выполнение работы.
  6. Самый эффективный способ передачи информации — личный разговор.
  7. Работающий продукт — основной показатель прогресса.
  8. Процесс поддерживает устойчивый темп: команда, заказчики и пользователи могут сохранять его бесконечно долго, без авралов.
  9. Постоянное внимание к техническому качеству и хорошему проектированию повышает гибкость.
  10. Простота — искусство не делать лишнюю работу — крайне важна.
  11. Лучшие требования, архитектура и технические решения рождаются у самоорганизующихся команд.
  12. Команда регулярно размышляет, как стать эффективнее, и корректирует свою работу.

Если прочитать принципы agile внимательно, в них нет ни слова о спринтах, стендапах и стикерах. Всё это — инструменты конкретных методологий. Сам agile — про частую обратную связь, доверие к команде и готовность меняться.

Как работает agile-подход на практике

У гибких методологий разные правила, но почти в любой из них есть общие механики.

Итерации и инкременты

Работа делится на короткие циклы — итерации. В конце каждой появляется инкремент: небольшая, но законченная часть продукта, которую можно показать и проверить. Например, интернет-магазин не делают «весь сразу», а выпускают по частям: сначала каталог и корзина, потом оплата, потом личный кабинет. Каждая часть работает сама по себе и уже приносит пользу.

Обратная связь

После каждой итерации результат показывают заказчику и пользователям. По их реакции команда меняет приоритеты: что-то ускоряет, что-то откладывает, от чего-то отказывается. Так agile снижает главный риск проекта — долго делать не то.

Таймбоксинг в agile

Таймбоксинг (timeboxing) — приём, на котором держится весь agile-подход: на каждую активность заранее отводится фиксированный отрезок времени, и он не растягивается. Итерация длится две недели — значит, через две недели она заканчивается, даже если сделано не всё. Ежедневная встреча — 15 минут, ретроспектива — час.

Зачем это нужно? Таймбокс заставляет сфокусироваться на главном, быстро принимать решения и не уходить в бесконечную доработку. Если в отведённое время что-то не помещается — это сигнал пересмотреть объём, а не сдвинуть рамки. Тот же принцип используют и в личной продуктивности: например, техника «Помидоро» — это таймбоксинг на 25 минут.

Agile-команда

Agile-команда — небольшая (обычно до десяти человек) и кросс-функциональная: внутри есть все навыки, чтобы довести задачу до готовности без передачи в другие отделы. Команда сама решает, как делать работу, а заказчик или владелец продукта — что делать в первую очередь. Руководитель в такой команде не раздаёт задачи поштучно, а убирает препятствия и защищает команду от хаоса.

Agile и waterfall: в чём разница

Agile чаще всего сравнивают с каскадной моделью (waterfall). Разница видна по пяти признакам:

  • План. В waterfall весь объём работ планируется заранее и подробно. В agile подробно планируется только ближайшая итерация, а дальше команда работает по приоритетам.
  • Изменения. В waterfall изменения после старта дорогие и требуют согласований. В agile изменения ожидаются и учитываются в каждой итерации.
  • Результат. В waterfall заказчик видит продукт в конце проекта. В agile — работающую версию каждые несколько недель.
  • Риски. В waterfall главные проблемы вскрываются на тестировании и внедрении, когда исправлять дорого. В agile — в первых итерациях.
  • Роль заказчика. В waterfall заказчик активен в начале (требования) и в конце (приёмка). В agile он участвует постоянно.

Это не значит, что waterfall плох. Он уместен, когда требования известны заранее и вряд ли изменятся, а цена ошибки высока: строительство, производство, проекты с фиксированной сметой. Agile выигрывает там, где много неопределённости: новые продукты, цифровые сервисы, маркетинг. А на практике многие проекты гибридные: рамки и бюджет фиксируют по-водопадному, а внутри работают итерациями. Подробнее о том, как связаны agile, scrum и waterfall, — в статье «Скрам простыми словами», а об общей логике управления проектами — в статье «Управление проектами для начинающих».

Гибкие методологии: какие бывают

На вопрос «agile — какие методологии к нему относятся» короткий ответ такой: их десятки, но в работе чаще всего встречаются шесть.

Scrum

Самый популярный agile-фреймворк. Работа идёт спринтами по одну-четыре недели, есть три роли (владелец продукта, скрам-мастер, разработчики), три артефакта и пять событий. Подходит для продуктовой разработки с регулярными релизами. Подробный разбор — в статье «Скрам простыми словами».

Kanban

Метод, пришедший из производственной системы Toyota. Задачи движутся по доске непрерывным потоком, а число задач в работе ограничено лимитами. Спринтов и новых ролей нет. Подходит для поддержки, операционной работы, маркетинга — везде, где задачи приходят постоянно. Подробно — в статье «Канбан для начинающих».

Extreme Programming (XP)

Набор инженерных практик, который предложил Кент Бек в конце 1990-х: парное программирование, разработка через тестирование, непрерывная интеграция, частые небольшие релизы. XP отвечает на вопрос «как писать код, чтобы его было легко менять», поэтому его практики часто используют внутри scrum-команд.

Lean

Бережливый подход, адаптированный из производства для разработки и управления. Главная идея — убирать всё, что не создаёт ценности для клиента: лишние согласования, ожидание, недоделанную работу, функции, которыми никто не пользуется. Lean — скорее образ мышления, чем набор правил.

Scrumban

Гибрид scrum и kanban: команда сохраняет регулярное планирование и ретроспективы, но работает потоком с лимитами на задачи в работе. Часто появляется естественно, когда scrum-команде мешают жёсткие спринты.

SAFe и LeSS

Фреймворки масштабирования agile на крупные компании, где над одним продуктом работают десятки команд. SAFe (Scaled Agile Framework) — подробный и структурированный, с уровнями команд, программ и портфеля. LeSS (Large-Scale Scrum) — минималистичный: это scrum, распространённый на несколько команд с одним бэклогом.

Как выбрать agile-методологию

  • Продукт с регулярными релизами и меняющимися требованиями — scrum.
  • Непрерывный поток разнородных задач — kanban.
  • Нужно повысить качество кода и скорость изменений — практики XP поверх выбранного фреймворка.
  • Много команд над одним продуктом — смотрите в сторону LeSS или SAFe, но только после того, как agile заработал на уровне отдельных команд.
  • Сомневаетесь — начните с канбан-доски и ретроспектив раз в две недели: это минимальный набор, который ничего не ломает.

Agile за пределами IT

Гибкое управление проектами давно вышло за пределы разработки. Agile-подход применяют:

  • В маркетинге. Кампании запускают короткими циклами, проверяют гипотезы на небольшом бюджете и масштабируют то, что сработало.
  • В продажах. Команды работают двухнедельными циклами с общей доской сделок и разбором результатов.
  • В HR. Найм ведут на канбан-доске, а внутренние программы запускают пилотами.
  • В образовании. Учебные проекты делят на итерации с регулярной обратной связью от преподавателя.
  • В бизнесе в целом. Компании перестраивают стратегию на короткие циклы: квартальные цели вместо пятилетних планов.

Ограничение одно: работа должна допускать выпуск результата частями. Там, где результат неделим и ошибка необратима, гибкий подход применяют только к отдельным этапам — например, к проектированию.

Как внедрить agile в команде

Внедрить agile не значит купить новый трекер и переименовать планёрки в стендапы. Рабочий порядок такой:

  1. Начните с одной команды и одного проекта. Пилот покажет, что работает в ваших условиях, а что нет. Внедрение «сразу во всей компании» почти всегда превращается в набор ритуалов.
  2. Объясните, зачем. Команда должна понимать, какую проблему решает переход: сорванные сроки, долгий выход на рынок, недовольство заказчика.
  3. Выберите методологию под характер работы. Регулярные релизы — scrum, поток задач — kanban. Не изобретайте свой фреймворк с первого дня.
  4. Соберите единый бэклог и сделайте работу видимой. Все задачи — в одном месте, с понятными приоритетами и статусами.
  5. Установите ритм. Короткие итерации, ежедневная синхронизация, демонстрация результата и ретроспектива в конце каждого цикла.
  6. Вовлеките заказчика. Без регулярной обратной связи agile превращается в waterfall, нарезанный на двухнедельные куски.
  7. Улучшайте процесс маленькими шагами. Каждая ретроспектива — одно-два конкретных изменения, которые команда действительно попробует в следующем цикле.

Хороший признак, что agile работает: через два-три месяца заказчик регулярно видит готовый результат, а команда сама предлагает, что улучшить в процессе. Плохой признак: встреч стало больше, а результата — нет.

Мифы и ошибки при переходе на agile

  • «Agile — это работа без плана». План есть, просто он короче и чаще пересматривается. Без планирования итераций и приоритетов agile превращается в хаос.
  • «Agile — это без документации». Манифест ценит работающий продукт больше документации, но не отменяет её. Документы нужны в том объёме, в каком ими реально пользуются.
  • «Agile — это без сроков». Сроки есть у каждой итерации, а прогноз по проекту строится на фактической скорости команды — и часто он точнее, чем план, составленный за год до релиза.
  • Карго-культ. Стендапы, спринты и доски есть, а ценностей нет: заказчик видит результат раз в полгода, решения принимаются сверху, ретроспективы проходят для галочки.
  • Agile как способ ускорить команду вдвое. Гибкий подход делает работу прозрачнее и снижает риск сделать не то, но не отменяет законов физики: перегруженная команда остаётся перегруженной.
  • Изменения без ограничений. «Готовность к изменениям» не означает, что заказчик может менять задачи каждый день: изменения принимаются на границе итераций.

Частые вопросы об agile

Agile — это методология или философия?

Философия, а точнее — набор ценностей и принципов из Agile-манифеста. Методологиями и фреймворками называют конкретные подходы, построенные на этих принципах: scrum, kanban, XP, SAFe и другие.

Чем agile отличается от scrum?

Agile — общее семейство гибких подходов и их ценности. Scrum — один конкретный фреймворк внутри этого семейства, со своими ролями, артефактами и событиями. Можно работать по agile без scrum — например, по kanban, — но нельзя работать по scrum вне agile.

Есть ли в agile планирование и сроки?

Да. Планирование в agile происходит постоянно: перед каждой итерацией команда выбирает задачи, а для продукта в целом ведётся дорожная карта. Сроки прогнозируются по фактической скорости команды, поэтому со временем они становятся точнее.

Подходит ли agile для проекта с фиксированным бюджетом?

Подходит, если зафиксировать бюджет и сроки, а гибким оставить объём: команда в первую очередь делает самое ценное, а то, что не поместилось, сознательно переносит во второй этап. Хуже, когда фиксировано всё сразу — и бюджет, и сроки, и полный объём работ: здесь честнее waterfall или гибрид.

Что почитать про agile?

Начните с первоисточников: сам Agile-манифест с двенадцатью принципами (он короткий и переведён на русский) и Scrum Guide. Дальше — книги «Scrum. Революционный метод управления проектами» Джеффа Сазерленда и «Канбан» Дэвида Андерсона. Для планирования в гибких проектах — «Agile: оценка и планирование проектов» Майка Кона.

Коротко

  • Agile — набор ценностей и принципов гибкого управления проектами: короткие итерации, частая обратная связь, готовность к изменениям.
  • Основа — Agile-манифест 2001 года: четыре ценности и двенадцать принципов.
  • Ключевые механики: итерации, инкременты, таймбоксинг, кросс-функциональная команда, регулярные ретроспективы.
  • Agile и waterfall не враги: первый выигрывает при неопределённости, второй — при жёстко зафиксированных требованиях, а многие проекты гибридные.
  • Самые распространённые гибкие методологии: scrum, kanban, XP, lean, scrumban; для крупных компаний — SAFe и LeSS.
  • Внедрять agile стоит с одной команды и одного проекта, улучшая процесс маленькими шагами.

Гибкий подход проще понять, когда сам принимаешь решения в его логике: какие задачи взять в итерацию, что ответить заказчику, который принёс новую «срочную» функцию посреди цикла, и как не сжечь команду ради дедлайна. Всё это можно попробовать в PM Quest — симуляторе руководителя проекта, где каждый выбор сразу отражается на бюджете, сроках, морали команды, репутации и качестве. В мини-игре «Спринт» нужно оценить задачи и собрать итерацию так, чтобы команда её вывезла, а скоуп не поехал. Первые пять уровней — бесплатно.

Дальше: Руководитель проекта: кто это, чем занимается менеджер проектов и как им стать →