3.1

3.1 Фреймворк SPACE

Обзор и мотивация

Фреймворк SPACE, опубликованный в 2021 году исследователями Николь Форсгрен, Маргарет-Энн Стори, Чандрой Маддилой, Томасом Циммерманом, Брайаном Хаком и Дженной Батлер, был построен, чтобы ответить на конкретную проблему: метрики продуктивности разработчика из единственного числа, строки кода, число коммитов, стори-пойнты, тривиально подделываются и регулярно вводят в заблуждение. SPACE вместо этого предлагает измерение по пяти измерениям: удовлетворённость и благополучие, результативность, активность, коммуникация и сотрудничество и эффективность и поток. Ни одна отдельная буква не предназначена стоять в одиночестве; фактический вклад фреймворка это дисциплина удержания всех пяти в поле зрения вместе, так что команда не может выглядеть продуктивной по одной оси, тихо нанося ущерб другой.

Это важно, потому что продуктивность разработчика не одна вещь. Команда может быть высоко активной (много коммитов, много пулл-реквестов), работая при этом плохо (работа не двигает результаты, которые важны). Команда может хорошо работать в краткосрочной перспективе, пока удовлетворённость рушится, опережающий индикатор текучести кадров и краха качества, проявляющегося месяцами позже. Озарение SPACE, напрямую опирающееся на темы 1.2 и 1.3 этой книги, в том, что любое из этих измерений, преследуемое как самостоятельная цель, будет подделано за счёт остальных, и фреймворк существует конкретно для того, чтобы сделать этот компромисс видимым до того, как он нанесёт реальный ущерб.

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

Ключевые принципы

  • Ни одно измерение SPACE по отдельности не заслуживает доверия. Ценность фреймворка приходит конкретно от измерения нескольких вместе.
  • Минимум одна метрика из минимум трёх измерений, смешивающая субъективные и объективные источники, это минимум для сбалансированной картины. Набор метрик, взятый полностью из одного измерения или одного типа данных, на самом деле не использует SPACE.
  • Активность это измерение, наиболее склонное к неправильному использованию как самостоятельного представителя. Её проще всего измерить и она наименее представительна для фактической ценности сама по себе.
  • Измерение на командном уровне и на индивидуальном уровне нуждается в разном обращении. SPACE была спроектирована в первую очередь для понимания на командном и системном уровне, а не для индивидуальных оценочных карточек.
  • Пять измерений взаимодействуют. Изменение, улучшающее одно, может ухудшить другое, и фреймворк существует, чтобы поймать этот компромисс.

Рекомендации

Постройте ваш набор метрик из минимум трёх измерений, прежде чем ему доверять

Не принимайте SPACE, выбирая единственное любимое измерение, обычно активность или результативность, и называя это завершённым. Сознательно выберите минимум одну метрику из минимум трёх из пяти измерений, смешивая объективное инструментирование (тема 1.5) с субъективными данными опроса (тема 3.7), прежде чем представлять какой-либо вывод о продуктивности команды. Этот минимальный состав это то, что предотвращает сворачивание SPACE обратно в проблему единственного представителя, для решения которой она была спроектирована.

Относитесь к метрикам активности как к контексту, никогда как к заголовку

Число коммитов, строки кода и число пулл-реквестов это законные данные измерения активности SPACE, но они никогда не должны быть основной или единственной метрикой, представляемой о продуктивности команды. Используйте данные активности, чтобы дать контекст для других измерений, например, заметив, что падение активности совпало с ростом удовлетворённости, потому что у команды наконец появилось пространство для погашения технического долга, а не как независимый приговор. Тема 3.4 покрывает конкретные риски этого измерения глубоко.

Применяйте SPACE на командном и системном уровне, а не на индивидуальном уровне

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

Следите за компромиссами между измерениями, а не только движением внутри одного

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

Соответственно смешивайте периодичность между измерениями

Некоторые измерения SPACE меняются медленно и лучше всего измеряются периодически (удовлетворённость, обычно квартальные циклы опросов); другие меняются быстро и выигрывают от более частого автоматизированного отслеживания (активность, эффективность и поток, оба в основном инструментируемые из существующих систем). Сопоставьте вашу периодичность измерения с естественным темпом изменения каждого измерения, а не навязывайте каждой метрике одно и то же расписание отчётности.

Компромиссы: плюсы и минусы

ПодходПлюсыМинусы
Набор метрик одного измерения (обычно активность)Просто, дёшево, знакомоЛегко подделывается, упускает человеческую цену неустойчивых практик
Полное пятимерное принятие SPACEСбалансировано, сопротивляется манипулированию по одной оси, улавливает компромиссыТребует больше инструментирования и инвестиций в опросы
Применение SPACE на командном уровнеСоответствует проверенному использованию фреймворка, защищает отдельных людей от неправильного примененияНе может ответить на вопросы индивидуального уровня, которые иногда хочет руководство
Применение SPACE на индивидуальном уровнеОщущается более напрямую действенным для некоторых менеджеровНеправильно применяет фреймворк; сильный риск манипулирования и морали

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

Вопросы для обсуждения в команде

  1. Опирается ли наш текущий набор метрик продуктивности на минимум три измерения SPACE, или он доминируется одними данными активности? Проверьте ваш дашборд против пяти измерений явно; большинство организаций при честной оценке гораздо сильнее перегружены активностью, чем осознают.

  2. Видели ли мы когда-либо, как одно измерение SPACE улучшалось, пока другое тихо ухудшалось, и заметили ли мы это в то время? Этот межизмерительный компромисс именно то, что призван ловить фреймворк. Оглянитесь на прошлый год на период, когда метрики доставки улучшались, и спросите, что показывали данные удовлетворённости или благополучия в то же окно времени.

  3. Используются ли когда-либо данные, близкие к SPACE, даже неформально, для оценки или сравнения отдельных людей, а не команд? Это неправильно применяет фреймворк и приглашает манипулирование. Будьте честны о том, как эти метрики на самом деле обсуждаются на практике, а не только о том, как политика заявляет, что их следует использовать.

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

  5. Какова наша периодичность измерения для каждого из пяти измерений, и соответствует ли она тому, насколько быстро на самом деле меняется каждое измерение? Квартальный опрос удовлетворённости в паре с данными активности в реальном времени это разумное несоответствие периодичности; та же периодичность, применённая ко всем пяти без раздумий, таковым не является.

  6. Если бы новый инженерный менеджер пришёл завтра и посмотрел только на наш дашборд, получил бы он сбалансированную картину продуктивности команды, или искажённую? Это практический тест того, действительно ли ваш набор метрик достиг баланса SPACE, или он лишь жестикулирует в сторону фреймворка, оставаясь на практике доминированным активностью.

Отраслевой взгляд

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

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

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

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

Примеры

Корпорация. Руководство инженерной службы компании-разработчика программного обеспечения годами отслеживало число коммитов и завершённые стори-пойнты как основной сигнал продуктивности. После принятия более полного набора метрик SPACE, включая квартальный опрос удовлетворённости и анализ сети сотрудничества (тема 3.5), руководство обнаружило, что команда с наивысшими числами активности также имела самые низкие оценки удовлетворённости и самую высокую добровольную текучесть кадров за следующий год. Одни числа активности активно вводили в заблуждение; более полная картина привела к сознательному сокращению одновременной нагрузки этой команды (принцип НЗР из темы 2.5, применённый на человеческом уровне) и измеримому восстановлению и удовлетворённости, и, в конечном счёте, устойчивой результативности.

Государство. Национальное агентство цифровых услуг, конкурирующее за инженерный талант против зарплат частного сектора, с которыми оно не могло сравниться, приняло сбалансированный набор метрик SPACE конкретно для того, чтобы обосновать неденежные инвестиции в удержание: лучший инструментарий, защищённое время для сосредоточенной работы и сниженное трение процесса. Данные опроса удовлетворённости в сочетании с метриками эффективности и потока (тема 3.6) показали, что частота прерываний, а не компенсация, была самым сильным предиктором намерения уйти в данных выходных интервью. Последующая инвестиция агентства в политику защищённого времени сосредоточения, обоснованную напрямую этими данными SPACE, коррелировала с измеримым улучшением удержания за следующие восемнадцать месяцев.

Бизнес-кейс: мотивация, ROI и TCO

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

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

Антипаттерны и ловушки

  • Принятие SPACE только по названию, оставаясь на практике доминированным активностью: самый распространённый отказ, и он сводит на нет всю цель фреймворка.
  • Применение измерений SPACE к индивидуальным оценочным карточкам: неправильно применяет фреймворк, проверенный для понимания на командном и системном уровне.
  • Рассмотрение измерений изолированно, а не наблюдение за межизмерительными компромиссами: упускает паттерн, который SPACE специально спроектирована ловить.
  • Навязывание каждому измерению одной и той же периодичности измерения: тратит усилия на измерения, меняющиеся медленно, и недоизмеряет те, что меняются быстро.
  • Отношение к единственной оценке опроса удовлетворённости как к достаточной без объективных данных: теряет баланс между субъективными и объективными источниками, которого требует фреймворк.
  • Игнорирование ухудшающегося тренда в одном измерении, потому что другое выглядит хорошо: именно тот отказ, который призвана предотвратить межизмерительная дисциплина фреймворка.

Модель зрелости

  • Уровень 1, Инициация: Продуктивность измеряется только через метрики активности, без сбора данных удовлетворённости, сотрудничества или эффективности.
  • Уровень 2, Развитие: Некоторые дополнительные измерения измеряются неформально, но нет последовательного межизмерительного обзора и нет стандарта минимального состава.
  • Уровень 3, Стандартизация: Сбалансированный набор метрик, опирающийся минимум на три измерения SPACE, последовательно применяется на командном уровне по всей организации.
  • Уровень 4, Управление: Все пять измерений рассматриваются вместе с регулярной периодичностью, межизмерительные компромиссы активно исследуются, и фреймворк информирует реальные решения о кадрах и процессе.
  • Уровень 5, Оркестрация: Данные SPACE напрямую формируют планирование рабочей силы и инвестиции в удержание, и организация может указать на конкретные вмешательства, информированные межизмерительными паттернами, измеримо улучшившие вместе и доставку, и благополучие разработчиков.

Идеи для обсуждения

  1. Какое измерение SPACE наиболее недоизмерено в нашем текущем наборе метрик?
  2. Видели ли мы когда-либо, как активность команды росла, пока удовлетворённость тихо падала?
  3. Как бы мы сегодня поймали команду, обменивающую долгосрочную устойчивость на краткосрочный выпуск?
  4. Используются ли сейчас какие-либо данные, близкие к SPACE, для оценки отдельных людей, а не команд?
  5. Как бы конкретно выглядел подлинно сбалансированный дашборд продуктивности для нас?

Основные выводы

  • SPACE охватывает пять измерений, удовлетворённость и благополучие, результативность, активность, коммуникация и сотрудничество, эффективность и поток, и ни одно само по себе не заслуживает доверия.
  • Стройте набор метрик из минимум трёх измерений, смешивая объективные и субъективные источники данных.
  • Относитесь к метрикам активности как к контексту, никогда как к главному сигналу продуктивности (тема 3.4).
  • Применяйте SPACE на командном и системном уровне, а не как индивидуальную оценочную карточку.
  • Рассматривайте измерения вместе, следя за межизмерительными компромиссами, а не только движением внутри любого отдельного.

Источники и дальнейшее чтение

  • Forsgren, Nicole, Margaret-Anne Storey, Chandra Maddila, Thomas Zimmermann, Brian Houck, and Jenna Butler, “The SPACE of Developer Productivity,” ACM Queue (2021).
  • Accelerate: The Science of Lean Software and DevOps, Николь Форсгрен, Джез Хамбл и Джин Ким.
  • Peopleware: Productive Projects and Teams, Том Демарко и Тимоти Листер.
  • Drive: The Surprising Truth About What Motivates Us, Дэниел Х. Пинк.