Про масштаб

На прошлой неделе был на новом тренинге Асхат Certified Leading SAFe. А сейчас готовлюсь к экзамену и сертификации. Собственно, чтобы все в голове уложилось решил написать пару постов.

Команда Эврики растет. Мы любим рассказывать, что у нас разработкой Контур.Бухгалтерии занимается уже 7 команд. Хотя, если быть честным, самая маленькая из этих команд состоит из одного человека:) Так или иначе вопросы организации разработки, когда вы вылезли за пределы одной скрам-команды, для нас стоят очень остро. SAFe это один из подходов для решения этой задачи.

На тренинге коллеги пришли к мысли, что SAFe для нас слишком тяжеловесен и предложили рассмотреть более легковесные подходы:

Поэтому давайте начнем с обзора различных подходов.

Как оказалось, подходов к масштабированию Agile-разработки существует over9000 и есть даже чуваки, которые посвящают свою жизнь их сравнению: http://www.agilescaling.org/

У них же можно скачать огромную  эксельку со сравнением:
https://app.box.com/s/fqt8bub0l2ac2fhh76zye7bnky90gqui

Так что, если вы не знаете чем занять выходные…

 

Spotify

Источник: https://dl.dropboxusercontent.com/u/1018963/Articles/SpotifyScaling.pdf

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

Если вы вдруг его пропустили, здесь есть хороший перевод на русский:
http://agilerussia.ru/practices/spotifyscaling/

 

Nexus

Источник: https://www.scrum.org/Portals/0/NexusGuide%20v1.1.pdf

Nexus очень простая и тупая вещь. Вы можете прочитать всё его описание за считанные минуты — там всего 11 страниц формата А4.

Nexus состоит из 3-9 скрам-команд. У этих команд:

  • Один Product Owner
  • Общий бэклог
  • Общий Definition of Done
  • Выровненные спринты — спринты всех команд начинаются и заканчиваются в одно время
  • Общий интегрированный инкримент — команды на демо показывают интегрированный результат работы всех команд

Что забавно, те же требования к командам есть и в LeSS, и в SAFe.

Сам процесс в Nexus дополняется двумя новыми активностями:

  • Nexus Sprint Planning
  • Nexus Daily Scrum

Суть этих активностей плоть от плоти Scrum of Scrums.

Nexus Daily Scrum  — представители команд собираются на статусную встречу, где обсуждают прогресс и проблемы в своих командах, доносят информацию, которую должны знать другие команды. Информацию с этих встреч доносят до своей команды на командном Daily Scrum.

Nexus Sprint Planning — представители команд перед планированием спринта в команде отбирают задачи из общего бэклога для планирования своей команды.

Результаты планирования в командах собираются в общий артефакт, который называется Nexus Sprint Backlog.

Так же появляется отдельная команда Nexus Integration Team, в задачи которой входит координация и коучинг остальных команд. Собственно, эта команда и отвечает за то, что интегрированный инкримент будет готов к концу спринта. Команда состоит из The Product Owner, A Scrum Master, и непонятных Nexus Integration Team Members.

Nexus Integration Team Members могут участвовать в работе других команд на других ролях, но задачи Integration Team для них первостепенны.

Вот и весь Nexus. Даже по-моему ничего существенного не опустил.

 

LeSS

Источник: http://less.works/

LeSS устроен почти также как Nexus: до 8 скрам-команд, один Product Owner, общий бэклог, общий DoD, выровненные спринты, общий инкримент.

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

Так же в LeSS появляется идея параллельного планирования на втором этапе в опенспейсе для простой координации команд по ходу планирования.

В чем же отличие от Nexus?

И то и другое это скелет, процесс с которого вы можете стартовать, менять и и довешивать на него все, что вам нужно.

Nexus это одиннадцати страничная pdf-ка. И почти всю суть содержимого вы уже прочитали выше. Nexus не подсказывает вам что и как довешивать на этот скелет.

LeSS же это большой ресурс, который подробно описывает и что довесить, и как. Там есть множество описаний и принципов, и практик.

Думаешь такой: чот, у меня какая-то херня с тестированием:

Плюс у LeSS уже развитая в цивилизованном мире инфраструктура тренингов, коучей и консультантов.

 

SAFe

Источник: http://www.scaledagileframework.com/

image1
Если LeSS и Nexus это скелет, на который вам нужно будет навешивать все недостающие практики, то SAFe это новый RUP — универсальное решение любых задач, из которого со временем вы скорее всего решите много повыкидывать.

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

SAFe создан для насаждения Agile сверху. Он полностью описан, чтобы при насаждении делать так:

— Почему мы должны использовать <подставь любую практику по вкусу>

— Потому, что наша организация внедряет SAFe и там предписывается использовать эту практику.

Конечно, после того как вы «внедрили SAFe» вы можете его адаптировать:)

SAFe описывает все устройство организации вплоть до вопросов стратегии и бюджетирования.

Но чтобы, наше сравнение было релевантным давайте рассмотрим только уровень программы в SAFe.

Здесь у нас 5-12 agile-команд(50-150 человек). SAFe не обязывает все команды использовать скрам. Это может быть канбан или что-то другое. Но накладывает на процесс разработки в командах такие ограничения, что они имхо быстро сдадутся и перейдут на скрам. В частности, команды должны обеспечивать выравнивание своего процесса с двухнедельным циклом:)

Здесь у нас и появляется выделенная команда почти как в Nexus, состоящая из продуктовых менеджеров, системных архитекторов и скрам-мастеров. В минимуме состоит из трех человек. Забавный факт: авторы SAFe называют эти команды русским словом Troika.

Общий бэклог(но это уже общее место нашего повествования).

Самое интересное — забудьте про представителей! Все кросс-командные активности проводятся полным составом всех команд для повышения прозрачности. Но редко.

В SAFe команды живут релизными циклами, которые называются Program Increment(PI). Этот цикл длится 5 двухнедельных итераций разработки.

Цикл начинается с ключевого события в жизни команды — PI Planning. Это двухдневное мероприятие, в рамках которого: менеджмент, продакты, системные архитекторы доносят свое виденье, вызовы и цели до команды, а команды выбирают из общего бэклога задачи и параллельно планируют следующие четыре спринта разработки своей команды.

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

Ватерфольненько на мой вкус. Но зато каждые два с половиной месяца можно попить пива за счет компании:)

Пойду я посплю, продолжение напишу завтра:)