Попробовать бесплатно
Гибкие3 темы

Масштабирование Agile: несколько команд на одном продукте

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

11 мин чтенияуровень: продвинутыйобновлено
КРАТКО
  • Главная беда масштабирования — зависимости между командами; их лучше устранять структурой, чем координировать
  • Общий бэклог с одним владельцем приоритетов важнее выбора фреймворка
  • Синхронный ритм нужен зависимым командам; независимым его навязывают зря
  • Единое определение готовности — минимум, без которого интеграция всплывает в конце
01 · ЧТО ЭТО

Что такое масштабирование Agile

Одна продуктовая команда до десяти человек справляется сама: у неё общий бэклог, одна цель на цикл и короткий путь до решения. Проблемы начинаются, когда команд становится несколько, а продукт остаётся общим.

Симптомы узнаваемые. Команда неделю ждёт правку от соседей. Приоритеты у двух команд противоречат друг другу, и каждая уверена в своей правоте. Интеграция всплывает в конце квартала и съедает две недели. Никто не может ответить, когда будет готова функция, потому что она собирается из четырёх кусков.

Готовых наборов правил несколько. SAFe даёт самую подробную конструкцию с общим планированием на восемь-двенадцать недель и выделенными ролями координации. LeSS идёт от обратного и снимает лишнее: один владелец продукта, один бэклог, одно определение готовности на все команды. Nexus добавляет к Scrum минимум механики интеграции для трёх-девяти команд.

Отдельно стоит сказать о широко известной модели Spotify. Её авторы неоднократно повторяли, что описывали снимок своей компании в конкретный момент. Копирование её структуры без понимания причин обычно даёт переименованные отделы.

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

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

ПОДХОДИТ, КОГДА
  • Над одним продуктом работают три и более команды с общей архитектурой
  • Есть общий срок, к которому нужен собранный результат
  • Зависимости между командами возникают регулярно и заметно тормозят
  • Руководство готово менять состав команд, а не только процессы
НЕ ПОДХОДИТ, КОГДА
  • Команды работают над независимыми продуктами: общий ритм им только мешает
  • Команд две, и они договариваются напрямую за пять минут
  • Настоящая проблема — слишком много работ в параллели; масштабирование её закрепит
  • Организационную структуру менять нельзя ни при каких условиях
02 · АРТЕФАКТЫ И СОБЫТИЯ

Что появляется в работе

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

ЭЛЕМЕНТ

Общий бэклог продукта

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

владелец: Владелец продукта
ЭЛЕМЕНТ

Единое определение готовности

Одинаковые критерии завершённости для всех команд, включая интеграцию и тесты. Разные критерии дают куски, которые не собираются.

владелец: Команды совместно
ЭЛЕМЕНТ

Карта зависимостей

Что и от кого ждёт каждая команда в ближайшем горизонте. Пересматривается на общей синхронизации.

владелец: Координатор ритма
ЭЛЕМЕНТ

Общая цель периода

Что команды должны получить вместе за ближайшие недели. Формулируется результатом для пользователя.

владелец: Владелец продукта
События
СОБЫТИЕЧАСТОТА И ДЛИТЕЛЬНОСТЬУЧАСТНИКИЧЕМ ЗАКАНЧИВАЕТСЯ
Общее планирование периода1–2 дня раз в 8–12 недельвсе команды и заинтересованные сторонысогласованный план и явно названные зависимости
Сверка представителей команд15–30 мин 2–3 раза в неделюпо одному человеку от командыснятые препятствия и обновлённые зависимости
Общий обзор результата1–2 ч в конце циклакоманды и заказчикисобранный инкремент и обратная связь
Общая ретроспектива1–1,5 ч в конце циклапредставители командулучшения на стыках, а не внутри команд
03 · ВНЕДРЕНИЕ

С чего начать

Первый шаг делают не в процессах, а в составе команд: большинство проблем масштабирования растёт из того, как команды нарезаны.

  1. 1Проверьте, нужна ли вам эта задачаЕсли команды работают над разными продуктами, общий ритм им помешает. Масштабирование нужно там, где результат собирается из работы нескольких команд.до старта
  2. 2Соберите команды вокруг функцийКоманда должна доводить функцию до пользователя своими силами. Нарезка по техническим слоям порождает зависимость на каждую заметную функцию.первый месяц
  3. 3Сведите приоритеты в один списокОдин владелец приоритетов на продукт. Пока каждая команда получает задачи от своего заказчика, договориться о порядке работ невозможно.первый месяц
  4. 4Договоритесь о единой готовностиОдинаковые критерии завершённости, включая интеграцию. Это дешёвый шаг, который снимает большую часть сюрпризов в конце периода.второй месяц
  5. 5Синхронизируйте циклы у зависимых командОдинаковая длина и даты начала у тех, кто зависит друг от друга. Независимым командам общий ритм навязывать не нужно.второй месяц
  6. 6Заведите общее планирование периодаРаз в два-три месяца команды планируют вместе и вслух называют зависимости. Один такой день экономит недели переписки.третий месяц
04 · МЕТРИКИ

Что считать

Число зависимостей на периодСколько раз команда ждёт другую. Показатель успеха масштабирования — снижение этого числа.Подсчёт на общем планировании и по факту за период.
Время ожидания на стыкеСколько работа стоит в ожидании соседней команды.Время в статусе «ждёт другую команду», медиана за период.
Доля собранного инкрементаКакая часть запланированного на период доведена до состояния, пригодного к поставке.Готовые элементы к запланированным на период.
Срок сборкиСколько занимает интеграция результатов команд. Рост означает расхождение критериев готовности.Время от готовности последнего куска до собранного результата.
Стабильность состава командКак часто людей перебрасывают между командами. Перетасовка обнуляет сработанность.Доля людей, сменивших команду за квартал.
05 · ТИПИЧНЫЕ ОШИБКИ

Где обычно ломается

Фреймворк выбирают раньше, чем находят проблему

ЧТО ДЕЛАТЬНачните с описания того, что именно ломается на стыках. Набор правил, внедрённый до этого разговора, добавит событий и оставит зависимости на месте.

Команды нарезаны по техническим слоям

ЧТО ДЕЛАТЬПересоберите их вокруг функций, чтобы каждая доводила результат до пользователя. Это тяжелее любой процессной правки и даёт больше, чем все остальные шаги вместе.

У каждой команды свой заказчик

ЧТО ДЕЛАТЬВведите одного владельца приоритетов на продукт. Пока приоритеты приходят из разных мест, любое общее планирование превращается в торг.

Масштабируют вместо того, чтобы уменьшить параллель

ЧТО ДЕЛАТЬПосчитайте, сколько инициатив идёт одновременно. Часто честный ответ — сократить их вдвое, и тогда координация нескольких команд просто не понадобится.

Общий ритм навязывают независимым командам

ЧТО ДЕЛАТЬСинхронизируйте циклы только у тех, кто зависит друг от друга. Остальным общий календарь добавляет встреч без всякой пользы.

Координация становится отдельным этажом управления

ЧТО ДЕЛАТЬДержите роли координации минимальными и временными. Как только появляется постоянный слой руководителей над командами, решения снова начинают спускаться сверху.
07 · В SHTAB

Как собрать несколько команд в Shtab

Заведите портфель проектов: у каждой команды свой проект со своей доской, а над ними — общий срез, где видно продукт целиком и зависимости между командами.

  • 01Портфель проектов показывает работу нескольких команд в одном месте, включая общие сроки.
  • 02Связи между задачами делают зависимость видимой: понятно, кто кого ждёт и с какого дня.
  • 03Общий бэклог удобно держать отдельным списком, из которого элементы уходят в проекты команд.
  • 04Диаграмма Ганта показывает, как сдвиг у одной команды двигает общий срок.
  • 05Единое определение готовности заводится чек-листом в шаблоне задачи — одинаковым для всех команд.
  • 06Сквозные цели связывают работу команд с общим результатом периода.
08 · FAQ

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

Начните с числа команд и с того, насколько жёсткая координация вам действительно нужна. Nexus — минимальное дополнение к Scrum для трёх-девяти команд. LeSS снимает лишнее и требует одного бэклога с одним владельцем; он строже к организационным изменениям. SAFe даёт подробную конструкцию и чаще выбирается крупными компаниями с регуляторными требованиями. Разница в объёме правил, и ни один из них не решит проблему нарезки команд по слоям.

Соберите свой процесс в Shtab

Доски и статусы, оценка трудозатрат, дерево целей, отчёты и трекер времени — в одном инструменте.