Что такое PI (Program Increment) в SAFe?

Ответ

Program Increment (PI) — это фиксированный временной интервал (обычно 8-12 недель), в течение которого Agile Release Train (ART) в SAFe разрабатывает, тестирует и поставляет значимый инкремент ценности. Это основа для планирования и выполнения работы на уровне нескольких команд.

Ключевые элементы PI:

  1. PI Planning: Центральное событие (обычно 2 дня), где все команды ART совместно планируют работу на следующий инкремент, синхронизируют зависимости и формулируют PI Objectives.
  2. PI Objectives: Измеримые бизнес- и технические цели, согласованные между командами и заинтересованными сторонами.
  3. Артефакты: Программный бэклог, дорожная карта, доска зависимостей.

Пример PI Objectives:

• (Команда Frontend) Увеличить производительность рендеринга главной страницы на 25%.
• (Команда Backend) Интегрировать новый платежный шлюз X.
• (Общая) Реализовать сквозной сценарий «Оформление заказа».

Цикл PI: Планирование PIВыполнение (несколько итераций/спринтов)Системная демонстрацияИнспекция и адаптация (Retrospective).

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

Ответ 18+ 🔞

А, слушай, вот эта ваша PI, Program Increment, блядь! Ну, это ж просто, как три копейки, ёпта!

Представь себе: куча команд, все такие Agile, гибкие, все в своих спринтах скачут, как мартышлюшки. А бизнес-то орет: «Ну и хули вы там делаете, когда уже что-то целое будет, а?». Вот для этого и придумали PI — такой здоровенный, блядь, временной промежуток, обычно недель на 8-12, за который вся эта артель под названием ART (Agile Release Train, по-нашему — «поезд», который, сука, с рельс не сходит) должен выдать что-то осязаемое. Не просто коммит в мастер, а именно инкремент ценности, чтоб его потрогать можно было.

Из чего же, из чего же этот PI сделан?

  1. PI Planning — это пиздец, а не событие. Два дня, все команды, куча стикеров, пицца, кофе. Все орут, синхронизируют свои зависимости, чтобы потом не вышло, что фронтенд сделал кнопку, а бэкенд на неё, блядь, API не завез. Главный итог — PI Objectives, то есть цели на этот самый инкремент. Без них — нихуя не понятно, что делали.
  2. Сами эти PI Objectives. Это не просто «поработать хорошо». Это конкретика, которую потом можно проверить. Типа: «Сделать так, чтобы страница грузилась не за 4 секунды, а за 3, блядь».
  3. Артефакты всякие. Бэклог программы, доска зависимостей (чтобы видеть, кто от кого ебётся), дорожная карта. Всё это, сука, нужно, чтобы не скатиться в хаос.

Вот, смотри, как это выглядит на практике, чтоб не быть голословным:

• (Команда Frontend) Увеличить производительность рендеринга главной страницы на 25%.
• (Команда Backend) Интегрировать новый платежный шлюз X.
• (Общая) Реализовать сквозной сценарий «Оформление заказа».

Видишь? Всё понятно. Не «пофиксить баги», а именно вот это. И общая цель есть, которая всех объединяет.

А живёт PI по такому циклу, блядь: Сначала все сходятся на Планировании и орут два дня. Потом наступает Выполнение — несколько итераций, где все пашут. В конце — Системная демонстрация, где показывают, что получилось. И завершает всё Инспекция и адаптация — большая ретроспектива, где все дружно рефлексируют: «Ну что, опиздохуели, или как?».

И зачем весь этот цирк? Да затем, ёпта! Чтобы 10 команд, как слепые котята, не бегали в разные стороны, а были выровнены под одну цель, синхронизированы между собой и давали хоть какую-то предсказуемость бизнесу. Гибкость Agile остаётся внутри, но снаружи — уже не полный пиздец и анархия, а некое подобие порядка. Ну, или его иллюзия, что тоже неплохо.