Добавить в корзинуПозвонить
Найти в Дзене

Моббинг, или Mob Programming в scrum-команде

Команда разработчиков является как самоорганизующейся, так и кросс-функциональной, и к концу каждого спринта предоставляет «готовый» прирост функциональности. Только команда определяет, как организовать работу в спринте. Об этом прямо говорит Scrum Guide.  Помимо классической работы над задачами существует несколько полезных практик командой работы. Одна из них — моб программирование, или моббинг.  Что такое моббинг в программировании? Это не тот моббинг, который обозначает «запугивание одного человека группой людей». В данном случае «моббинг» используется в переносном значении, команда сообща «мобит» задачу.  Моббинг — это стиль работы, при котором 3 и более человека работают вместе в одно и то же время, за одним компьютером, над одной задачей.  В моб-программировании выделяются две роли:  До начала моббинга команда устанавливает правила:  Навигатор думает над задачей, фиксирует изменения, записывает нюансы и выносит их на обсуждение. В это время водитель фактически набирает текст.  С
Оглавление

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

Помимо классической работы над задачами существует несколько полезных практик командой работы. Одна из них — моб программирование, или моббинг. 

Что такое моббинг в программировании?

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

Моббинг — это стиль работы, при котором 3 и более человека работают вместе в одно и то же время, за одним компьютером, над одной задачей. 

В моб-программировании выделяются две роли: 

  • навигатор, который даёт инструкции, 
  • водитель, который исполняет инструкции (в случае программирования, он пишет код). 

До начала моббинга команда устанавливает правила: 

  • будет навигатор один или все, кроме водителя, 
  • когда команда меняется ролями и в каком направлении. 

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

Сессии моббинга проводятся на усмотрение команд. Кто-то выделяет на это отдельные часы в спринте, кто-то организуется во время сложных задач. Здесь нет правил. 

Зачем scrum-команде «моббить»?

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

Сессии нужно воспринимать как обмен знаниями для избежания локальной оптимизации. 

Задачи часто простаивают в очереди, и фактической работы над ними не ведётся. Моббинг устраняет время на передачу и ожидание. Время цикла уменьшается, так как очередь только одна. 

Вот положительные эффекты моббинга: 

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

Моббинг также помогает привить всем один стиль разработки и оформления кода. Он хорошо подходит для включения новичков в процесс.  

Эта практика помогает добиться совместного владения кодом, о которых говорят многие аджайл-практики. А вы пробовали моббинг?