Была выбрана очень жаркая тема — «Метрики в Agile». На первый, неискушенный взгляд, кажется, что метрики — численно измеряемые параметры проекта, необходимы для грамотного управления в софтверных проектах любого типа, от каскадных, до Agile.

Популярные метафоры, сравнивающие управление проектом с поражающими цель ракетами, подразумевают это прямым текстом — какая «регуляция» возможна без сигналов с датчиков?

Водопад-процесс.png


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

Agile-процесс.png

Однако не все так просто, тривиальные метафоры, может быть и адекватные для простого промышленного производства, не всегда годятся для софтверной разработки. Да и в обычной жизни, много ли из читателей ведут метрики «семейного проекта», в виде, например, семейной бухгалтерии? Ведь вроде бы тут все абсолютно просто, понятно что мерить, понятны бонусы — да и вообще, речь идет о той самой насущной рубашке, которая ближе к телу. А уж когда речь идет о «обычной» бухгалтерии, где в отличие от семейной приходится соответствовать внешним правилам — ненависть может зашкаливать.

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

Например, за метрики ратовал Том Демарко, автор широко разошедшейся фразы «If you can’t measure it, you can’t manage it»[1], а как выглядит «полное покрытиями метриками» на практике, можно посмотреть здесь, особенно рекомендуем посмотреть живой Project Dashboard.

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

Если метрики связаны с системой оплаты-мотивирования, то все участники будут склонны к поведению, оптимизирующему измеряемые показатели, даже в ущерб общему делу. С этой стороны баррикад можно сослаться на Джоэла Спольски (см. например, его эссе «Измерения продуктивности», «Консалтинг по оценке производительности», «Метод экономической мотивации»), и, как ни странно, опять на Тома ДеМарко, с его свежей статьей «Software Engineering is Dead?!».

Есть и «умеренные» статьи, показывающие, что «меры хороши в меру», что можно найти общий базис для измерения для каскадных и аджайл проектов — см., например, наш перевод «Project Metrics for Software Development».

Так что по обсуждаемым вопросам нет никакого консенсуса даже в индустрии, и разумеется, среди собравшихся полусотни человек, наблюдался полный спектр мнений, ведь все собравшиеся — успешные профессионалы, имеют в багаже набор практик и принципов управления проектами, уже «оплаченных кровью», а не студенты, которых можно убедить в чем угодно одной лекцией. По сути, было очень плотное обсуждение вопроса профессионалами, эквивалентное по объему полугодовалому флейму в IT-форуме. Часто высказывались весьма полярные мнения — вот Crazyhead.gif пруф-картинка (анимированный гиф) с огорошенным участником, вырезанная из видео встречи.

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

А чтобы кратко, без лишней воды дать понять, какие конкретно темы обсуждения были затронуты, и стоит ли смотреть видео, мы предлагаем краткий обзорный майндмап-встречи:

[на всё окно]

Далее три части видео встречи.


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


Да, в результате обсуждение затянулось до глубокой ночи, и решено было ограничить тему только командными метриками, а тему «бизнес-метрик в Agile» перенести на следующую встречу через две недели.


Для подкастеров или просто любителей прилагаем и аудиозапись:



If metrics ruled the world (Cartoon Tester.jpg

Примечания

  1. см. Tom DeMarco «Controlling Software Projects: Management, Measurement and Estimation», 1982



Любые правки этой статьи будут перезаписаны при следующем сеансе репликации. Если у вас есть серьезное замечание по тексту статьи, запишите его в раздел «discussion».

Репликация: База Знаний «Заказных Информ Систем» → «Метрики в Agile (встреча AgileRussia.ru 2009-08-18)»