Agile Команда

27 января 2023

SAFe® делает достаточно важный шаг в развитии Lean-Agile модели управления, вводя понятие и характеристики Agile команды. Это важно потому, что позволяет создать дополнительную гибкость при формировании самой системы управления, не ограничиваясь более узким набором практик, предписываемым тем или иным методом. В результате организация может задействовать дополнительный резерв эффективности, подстраивая особенности работы каждой Agile команды под специфические задачи своего потока ценности.

Алексей Ионов, Executive Lean-Agile коуч, Ионов и Партнеры
Алексей Ионов, Executive Lean-Agile коуч, Ионов и Партнеры

Agile команда

Статья обновлена в соответствии с последней версией фреймворка — SAFe 6.

Что такое Agile команда в SAFe?

Agile команда – это кросс-функциональная команда до 10 человек, которые обладают всеми необходимыми навыками для определения, разработки, тестирования и доставки ценности клиенту. Каждый член команды обычно на 100% «закрепляется» за какой-то одной Agile командой.

Agile команды являются самоуправляемыми. Каждая Agile команда управляет своей работой и несёт ответственность за доставку результатов, которые отвечают потребностям и ожиданиям клиентов и заинтересованных лиц. В результате этого больше не требуется распределять работы между отдельными членами команды. Такой подход предоставляет как командам целиком, так и каждому её члену больше свободы и полномочий для принятия решений. Это в свою очередь повышает вовлечённость сотрудников в работу и их удовлетворённость от её выполнения.

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

Agile команды могут быть: 1) техническими командами, ориентированными на создание аппаратных или программных продуктов, 2) бизнес-командами, такими как, маркетинг, юридические службы, финансы или 3) командами, которые совмещают в себе элементы двух выше указанных типов команд (технических и бизнес). Все Agile команды стремятся к быстрому обучению и быстрому получению обратной связи от клиентов, выполняя работу небольшими партиями, оценивая результаты и на их основе внося соответствующие корректировки.

Если продукт большой и комплексный и его не может создать одна команда, то в SAFe несколько Agile команд, которые работают над одним продуктом, организуются в один Релизный Поезд (Agile Release Train, ART). Сотрудничая друг с другом внутри Поезда, такие команды создают решения целиком, выполняя работу из общего беклога ART. Все Agile команды внутри одного Agile Release Train со-направлены относительно общего видения и дорожной карты и участвуют в мероприятиях своего ART. Совместная работа позволяет командам Релизного Поезда постоянно совершенствовать практики, которые они используют в своей работе. Тем самым они ускоряют доставку ценности.

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

Как организовать Agile команды в SAFe?

Принцип SAFe №10 «Организоваться вокруг ценности» стимулирует предприятия организовывать людей и команды таким образом, чтобы ускорить доставку ценности клиентам.

В книге «Топологии команд» [1] авторы предлагают четыре основных способа организации команд, которые активно используются в SAFe организациях:

  1. Команды, организованные вокруг потока, способны доставлять ценность клиентам напрямую.
  2. Команды сложных подсистем работают над сложными и специфическими техническими областями, освобождая таким образом другие команды от выполнения узкоспециализированной работы.
  3. Команды платформы создают общие службы и инструменты, которые используют другие команды.
  4. Помогающие команды предоставляют свою экспертизу и поддержку другим командам, когда это необходимо.

Кто входит в состав Agile команды в SAFe?

Необходимая экспертиза участников Agile команды будут зависеть от типа работы, которую выполняет та или иная Agile команда. Важно отметить, что в каждой Agile команде должны быть все участники, необходимые для определения, создания, тестирования и выпуска инкремента ценности на уровне команды.

Кроме того, каждая Agile команда содержит две специализированные роли.

  1. Владелец продукта (PO) вносит свой вклад в видение и дорожную карту Agile Release Train и работает совместно с другими членами Agile команды над определением и приоритизацией работы команды в рамках создания более крупного продукта или предоставления определенного сервиса.
  2. Скрам мастер / Коуч команды (SM/TC) внедряет и поддерживает Agile практики, повышает производительность команды и сотрудничает с RTE для поддержки улучшений ART и оптимизации доставки ценности.

Обязанности Владельца Продукта и Скрам Мастера / Коуча Команды приведены ниже, на рисунке 1.

Рисунок 1. Agile команды содержат 2 специализированные роли, фокус которых направлен на чётко определённые зоны ответственности

Как функционирует Agile команда в SAFe?

Agile команды для организации своей работы обычно используют SAFe Scrum или SAFe Team Kanban. Многие команды применяют комбинацию из этих двух методов (SAFe Scrum и SAFe Team Kanban) и со временем совершенствуют применяемые практики.

SAFe Scrum и SAFe Team Kanban предоставляют набор практик, которые направляют работу команды. К ним относятся мероприятия, техники и практики, а также стратегии коммуникации, которые поддерживают выполнение этой работы.

Большинство команд начинают свое путешествие в Agile с применения SAFe Scrum. Такие практики, как планирование итерации, взятие на себя обязательств по выполнению целей итерации, частое проведение ретроспектив, ежедневная синхронизация и соблюдение короткого временного интервала итерации, становятся рутиной.

Тем не менее, работа некоторых команд заключается в реагировании на частые и трудно планируемые события. Как правило, для таких команд предпочтительным способом организации их работы будет SAFe Team Kanban. Этот метод менее зависим от временных ограничений итерации. При этом SAFe Team Kanban направляет основное внимание на обеспечение непрерывного потока для работы, которая проходит через беклог и доставляется клиенту.

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

SAFe Scrum и SAFe Team Kanban – это два эффективных способа организации работы, у которых больше общего, чем различий. Оба подхода способствуют более эффективной доставке ценности клиентам за счет следующих элементов:

  • Работа с малыми партиями
  • Контроль количества незавершённой работы
  • Устранение задержек
  • Использование обратной связи от клиентов для улучшения продукта
  • Регулярный анализ эффективности применяемых практик и совершенствование их использования

Какие обязанности Agile команды в SAFe?

У Agile команд есть пять основных областей ответственности, как показано на рисунке 2.

Рисунок 2. Области ответственности Agile команды

Далее в статье мы подробнее опишем каждую из 5 областей ответственности.

Связь с клиентом

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

Развитие эмпатии к клиенту – Agile команды должны «войти в положение» клиентов, чтобы лучше понимать их потребности и укреплять связи с ними.

Что Agile команды должны сделать для этого:

  • Привлекать Владельца Продукта и максимально использовать его экспертизу.
  • Наблюдать за клиентами и общаться с ними напрямую.
  • Участвовать в поддержке продукта.
  • Использовать телеметрию для мониторинга использования продукта.

Участие в определении продукта – Члены команды используют свои знания о клиентах для создания пользовательских историй и критериев приёмки в сотрудничестве с Владельцем Продукта (PO).

Дизайн и проведение экспериментов – Agile команды узнают больше о своих клиентах и необходимых решениях, проводя различные эксперименты. Это означает, что они могут глубоко изучить тему или создать ранние версии продукта, чтобы быстро получить обратную связь.

Планирование работы

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

Создание плана на Интервал ПланированияPI Планирование — это мероприятие, которое проводится с определённой регулярной частотой, на котором все Agile команды внутри поезда со-направляются для выполнения предстоящего Интервала Планирования (Planning Interval, PI). PI Планирование предоставляет более масштабный обзор всей системы и организует всех участников вокруг единого понимания Видения, которое необходимо достигнуть. Во время PI Планирования каждая команда разрабатывает свои цели на Интервал Планирования (PI). Команды также предварительно распределяют порядок выполнения Историй по итерациям, чтобы чувствовать себя уверенно в достижении своих целей. Таким образом создаётся исходный беклог команды на Интервал Планирования.

Корректировка плана команды на каждую итерацию на протяжении всего PI – На мероприятии «PI Планирование» все члены Agile Release Train были со-направлены в соответствии с общими целями и дорожной картой на предстоящий Интервал Планирования. После этого каждая команда регулярно проводит краткосрочное планирование на каждую предстоящую итерацию внутри PI. Такой подход позволяет использовать новые знания команды и всего ART, которые они получают на протяжении всего интервала, для планирования работы над следующим инкрементом ценности.

Уточнение беклога команды – По мере поступления новых знаний команды постоянно обновляют и уточняют свой беклог. Беклог определяет предстоящую работу и расставляет приоритеты между её элементами для доставки результатов, за выполнение которых команда взяла на себя обязательства.

Доставка ценности

Agile команды доставляют клиентам новую функциональность.

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

Регулярная синхронизация с остальными командами ART – Во время выполнения Интервала Планирования у каждой команды есть несколько контрольных точек с другими командами ART, например такие мероприятия как Синхронизация Поезда (ART Sync) и Демонстрация Системы (System Demo). Эти мероприятия помогают каждому участнику увидеть, насколько Поезд продвинулся в достижении целей на текущий Интервал Планирования и помогают ART вносить изменения по мере необходимости.

Создание конвейера непрерывной доставки – Эффективный процесс гибкой разработки зависит от Конвейера Непрерывной Доставки, оптимизированного для Непрерывного Исследования, Непрерывной Интеграции и Непрерывного Развёртывания.

Частый релиз – Некоторые Agile команды могут выпускать новую функциональность напрямую клиенту. В таком случае команды обычно устанавливают свой собственный процесс выпуска и синхронизируют его с другими командами внутри ART. Cроки мажорных релизов могут быть определены во время PI Планирования; рутинные развертывания часто регулируются на уровне итераций. Другие выпуски могут зависеть от каких-то событий.

Получение обратной связи

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

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

Частая проверка технических возможностей – Чтобы решить технические проблемы, команды должны постоянно проверять свои предположения об архитектуре продукта и о том, как он разрабатывается. Это включает в себя регулярную интеграцию, тестирование, развёртывание, исследования и создание прототипов для эффективного изучения различных технических подходов.

Сбор данных – Данные чрезвычайно важны для Agile команд, так как помогают им понять, как пользователи взаимодействуют с функциональностью, которую они создают. Данные выявляют области для улучшения, помогают расставить приоритеты в предстоящей работе, подтверждают и опровергают предположения, а также гарантируют, что конечный продукт соответствует потребностям клиентов. Анализируя данные, Agile команды получают информацию, которая недоступна только благодаря интуиции.

Неустанные улучшения

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

Проведение регулярных мероприятий по улучшению – Agile команды регулярно проводят ретроспективы на уровне команды в рамках Интервала Планирования, как правило – в конце каждой итерации. Команды используют эти мероприятия, чтобы определить, как они могут улучшить свои процессы, практики и поведение. Такая нацеленность на совершенствование помогает каждой команде непрерывно повышать свою производительность. Помимо этого, все команды Agile Release Train участвуют в совместном мероприятии Инспект-Адапт, чтобы определить улучшения, которые принесут пользу для всего поезда в рамках предстоящего Интервала Планирования (PI).

Оперативное улучшение каких-то элементов – Некоторые проблемы следует решать по мере их возникновения, не дожидаясь следующего мероприятия по улучшению. Решение проблем по мере их возникновения является частью культуры непрерывного улучшения.

Обмен информацией и координация действий между Agile командами – Agile команды делятся тем, что они узнают, совершенствуя свои методы работы. Такой обмен информацией способствует прозрачности и помогает создать культуру обучения внутри ART и всей компании.

[1] Skelton, Mathew, and Manuel Pais. Team Topologies. IT Revolution Press, 2019.

Статья подготовлена по материалам Scaled Agile, Inc. и не является официальным переводом. Оригинал статьи: https://www.scaledagileframework.com/agile-teams/

Почитать дополнительные статьи по теме:

Владелец Продукта

Скрам Мастер / Коуч Команды

Agile Release Train

Мероприятия SAFe

Беклог Команды

Поток Команды

Истории (Story)

Цели на Интервал Планирования (PI Objectives)

SAFe Scrum

SAFe Team Kanban

Другие статьи в блоге

Инспект-Адапт (Inspect & Adapt, I & A)
Что такое Инспект-Адапт? Как проводить это мероприятие? Программа, участники, результаты.
SAFe для разработки аппаратного обеспечения
Как SAFe может использоваться в разработке аппаратного обеспечения? В статье выделяется шесть универсальных принципов такой разработки и рассматривается их применение.
PI Планирование
Что такое PI Планирование? Как подготовить Поезд к участию в мероприятии? Как проводить PI Планирование? Какие результаты мероприятия?

Подпишитесь на нашу рассылку и получайте новости и информацию о мероприятиях первыми!