1.0 Введение в часть 1: Основы измерения
Прежде чем эта книга назовёт хотя бы одну метрику, ей нужно ответить на более сложный вопрос: для чего вообще нужно измерение? Любая команда, которая когда-либо строила дашборд, рано или поздно наблюдала, как число улучшается, пока то, что оно должно было отражать, становилось хуже. Это не сбой инструментария. Это предсказуемый результат пропуска основ, которые рассматривает эта часть: зачем вы вообще измеряете, что происходит с метрикой, когда люди узнают, что за ней следят, как взвешивать результаты важнее активности, кто владеет числом и его определением, откуда на самом деле берутся данные, и как читать зашумлённый сигнал, не обманывая самого себя.
Для крупных команд эти основы перестают быть необязательными. Одна команда может позволить себе произвольное число, на которое менеджер бросает взгляд раз в неделю. Организация с сотнями инженеров, десятками дашбордов и руководством, отчитывающимся наверх, не может. В таком масштабе неподконтрольная или плохо определённая метрика вводит в заблуждение не только одну команду, она вводит в заблуждение всех ниже по цепочке, кто доверяет числу, не проверяя, как оно было построено, и её дорого исправлять после того, как поведение уже адаптировалось под манипулирование ею.
Корпоративные и государственные организации ощущают это особенно остро, потому что их метрики часто несут последствия, выходящие за пределы команды, которая их производит: бюджетные решения, публичные отчёты об эффективности, результаты аудита и контракты с поставщиками. Метрика, которая выглядит как внутреннее инженерное удобство, может незаметно стать критическим, не подвергаемым сомнению входным параметром для решений, принимаемых людьми, которые никогда не видят конвейер, породивший её. Правильное выстраивание основ делает этот вес выносимым.
Темы этой части
- 1.1 Зачем измерять программную инженерию: Обоснование измерения как такового, что оно должно достигать, и разница между измерением ради обучения и измерением ради оценки.
- 1.2 Закон Гудхарта и психология метрик: Единственная идея, управляющая каждой другой темой этой книги: мера, которая становится целью, перестаёт быть хорошей мерой, и психологические механизмы, которые делают манипулирование почти неизбежным, как только люди узнают, что за ними следят.
- 1.3 Результаты важнее выпуска: выбор того, что измерять: Как взвесить набор метрик в пользу результатов, а не активности, используя классическое различие вход/выпуск/результат и паттерн путеводной звезды.
- 1.4 Управление метриками и владение ими: Кто решает, что измеряется, кто владеет определением, и как хартия метрик удерживает растущий дашборд от превращения в неподотчётное разрастание.
- 1.5 Источники данных и инструментирование: Откуда на самом деле берутся инженерные метрики, инструментирование против самоотчёта, и проблемы качества данных, которые незаметно обесценивают дашборд прежде, чем кто-либо это заметит.
- 1.6 Статистическая грамотность для инженерных метрик: Минимальное статистическое суждение, необходимое команде, чтобы честно читать метрику: перцентили против средних, размер выборки, регрессия к среднему и смешивающие переменные.
Как эти темы взаимосвязаны
Эти шесть тем выстраиваются в строгом порядке. Тема 1.1 спрашивает, зачем вообще измерять, что важно, потому что команда, не ответившая на этот вопрос, будет собирать числа, по которым никто не действует. Тема 1.2: это поворотная точка, на которой вращается остальная часть книги. Как только вы признаёте, что любая мера может стать целью и подвергнуться манипулированию, рекомендации каждой последующей темы следуют из проектирования против этого риска. Тема 1.3 превращает эту осторожность в позитивное правило: взвешивайте в пользу результатов, потому что это самая трудная категория для дешёвого манипулирования. Тема 1.4 делает управление конкретным, тема 1.5 делает данные конкретными, а тема 1.6 даёт вам статистическое суждение, чтобы не быть обманутым шумом даже после того, как управление и инструментирование уже надёжны.
Всё последующее зависит от этой части. Метрики потока и метрики DORA из части 2, а также фреймворк SPACE в части 3, все они, по сути, являются разобранными примерами принципов взвешивания в пользу результатов и парного сочетания со страховочными показателями, изложенных в темах 1.2 и 1.3. Руководство по проектированию дашборда в теме 8.1 предполагает модель управления из темы 1.4. А модель зрелости, которой заканчивается каждая тема этой книги, по сути, под своими пятью уровнями, является моделью зрелости именно той дисциплины, которую вводит эта часть: измерять осознанно и проверять собственную работу.