Багодельня — марафон по убийству престарелых багов

Сколько открытых багов у вас в бэклоге? 100? 1000?
А сколько времени они там лежат? Неделю? Месяц? Годы?
А почему так происходит? Нет времени? Надо делать более приоритетные задачи? «Вот сейчас все срочные фичи реализуем, а потом точно будет время на разгребание багов»?

… Некоторые используют Zero Bug Policy, у кого-то хорошо развита культура работы с багами (своевременно актуализируют бэклог, пересматривают ошибки при изменении функциональности и т.д.), а кто-то выращивает волшебников, которые пишут вообще без багов (маловероятно, но, может, и такое бывает).

Сегодня я расскажу вам про наше решение по чистке бэклога багов — проект «Багодельня».

Багодельня — марафон по убийству престарелых багов

С чего все началось?

В очередной раз просматривая все увеличивающийся бэклог по открытым багам, мы дошли до точки кипения. Жить так дальше было нельзя, решили сокращать его любой ценой. Идея очевидная, но как это сделать? Сошлись на том, что самым эффективным способом будет мероприятие, похожее на хакатон: оторвать команды от повседневных задач и выделить 1 рабочий день на обработку только багов.

Прописали регламент, кинули клич и стали ждать. Были опасения, что желающих будет мало, очень мало, но результат превысил наши ожидания — записалось целых 8 команд (правда, в последний момент 3 слились). На мероприятие выделили целый рабочий день в пятницу, забронировали большую переговорку. Обеды организовали на базе офисной столовой, для перекусов добавили печеньки.

Реализация

Утром в день Х собрали всех желающих в переговорке и провели краткий брифинг.

Багодельня — марафон по убийству престарелых багов

Основные правила:

  • в одной команде сражается от 2 до 5 человек, минимум один из них — QA;
  • баги должны закрываться членом команды по всем внутренним продакшн-стандартам;
  • у каждой команды должен быть как минимум один закрытый баг, требующий исправлений в коде;
  • исправлять можно только старые баги (дата создания бага < даты начала багодельни — 1 месяц);
  • за исправленные баги баллы (от 3 до 10) начисляются в зависимости от критичности (чтобы не было читерства, нельзя менять критичность после анонсирования даты проведения Багодельни);
  • за закрытие неактуальных, невоспроизводимых багов начисляется по 1 баллу;
  • за соблюдением всех правил следит команда аудита, которая аннулирует очки за переоткрытые баги.

Багодельня — марафон по убийству престарелых багов

Другие детали

  • Мы никого не ограничивали в выборе локации: можно было оставаться на рабочем месте или сидеть со всеми в переговорке, в которой ребят не отвлекали и чувствовался накал страстей.

Багодельня — марафон по убийству престарелых багов

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

Багодельня — марафон по убийству престарелых багов
Лидерборд

  • За соблюдением всех правил следила команда аудита (по опыту, для этого достаточно 1-2 человек).
  • Через час после окончания Багодельни были объявлены перепроверенные результаты.
    Победители получили подарочный сертификат в бар, а все участники — памятную сувенирку (брелоки с «багами»).

Багодельня — марафон по убийству престарелых багов

Результаты

За последние полгода мы провели уже три Багодельни. Что же мы в итоге получили?

  • Среднее количество команд — 5.
  • Среднее количество обработанных багов — 103.
  • Среднее количество неактуальных/невоспроизводимых багов — 57% (а ведь этот мусор постоянно мозолил глаза и пугал своим количеством).

Багодельня — марафон по убийству престарелых багов
Момент объявления результатов

А теперь ответ на самый каверзный вопрос, который все любят задавать: «А сколько новых багов вы посадили?».
Ответ: не больше 2% от всех обработанных.

Отзывы

После проведения Багоделен мы собирали фидбэк с участников. Вот ответы на вопрос «Что больше всего понравилось в процессе участия?»:

  • Очень круто разбирать бэклог с такой мотивацией! Обычно это очень унылый процесс, надо проводить такое периодически).
  • Азарт, печеньки.
  • Это долгожданная возможность поправить те мелочи, которые не критичны, но править хочется.
  • Понравилось, что можно, наконец, пофиксить старые, неприятные баги вне спринта, на такие никогда не будет времени т. к. всегда будут задачи с более высоким приоритетом. Удалось собрать в одном месте всех нужных людей (в нашей команде был dba, например), коллективно обсудили актуальность поставленных багов и техническую возможность их поправить.

Заключение

Багодельня — не панацея, но вполне жизнеспособный вариант уменьшения бэклога багов (в разных командах от 10 до 50%) всего за один день. У нас это мероприятие взлетело только благодаря мотивированным ребятам, которые болеют за продукт и заботятся о счастье наших пользователей.

Багодельня — марафон по убийству престарелых багов

Всем добра и меньше багов!

Источник: habr.com