Получите все материалы с наших тренингов — бесплатно
Что Такое Моб Программирование, Зачем Нужен Моббинг и Как он Работает + Кейсы и Примеры
Что Такое Моб Программирование, Зачем Нужен Моббинг и Как он Работает + Кейсы и Примеры
Что Такое Моб Программирование, Зачем Нужен Моббинг и Как он Работает + Кейсы и Примеры
⚡ Ответим в течение 30 минут — contact@leadstartup.ru
+7 495 150 42 63 — с 8:00 до 21:00 МСК
Катерина Сухих

Что такое моб программирование, зачем нужен моббинг и как он работает + кейсы и примеры

20 отзывов, в среднем 5 из 5
Что такое моб программирование, зачем нужен моббинг, разбираемся на кейсах и примерах

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

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

Получите нашу единую MIRO–доску с 100+ инструментами и доступ к Google–диску
Материалы тренингов LeadStartup

Для каких задач подходит моббинг?

Моббинг используют для решения любых сложных задач. Но чаще он используется для написания и исправления кода. Обычно моб программирование применяют в Scrum.

Зачем нужно моб программирование?

У моббинга много плюсов. Главный — что код не завязан на одном разработчике, а в нем разбирается вся команда. Если разработчик уволится, в системе не будет загадочных областей, в которые никто не хочет лезть.

Моб программирование или моббинг

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

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

моб программирование моббинг Скрам–команда проводит сессию моб программирования

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

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

Иван хочет использовать моб программирование для реализации этой  функции. Он занимает конференц–зал и просит своих коллег Евгения и Марию присоединиться к нему. Евгений и Мария приходят на встречу с ноутбуками.

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

Все остальные играют роль навигатора. Они дают указания, думают, смотрят, обсуждают и описывают.

Все меняются ролями каждый час. Это помогает им не заскучать и не устать.

Для каких команд подходит моббинг

Моббинг не использует все подряд. Этот способ работает только у самоорганизующихся и кросс–функциональных команд. Когда члены команды сами принимают решения, над ними не стоит начальник. Когда каждый член команды может сделать работу другого члена команды, разбирается в ней хотя бы на базовом уровне.

Обычно моб программирование применяют в Scrum.

Для каких задач подходит моббинг

Моббинг используют не только для программирования (хотя для кода чаще всего).  Его используют для решения любых сложных задач.

Тактически моббинг — это дорого, потому что вся команда делает одну задачу.

Стратегически — смысл моб программирования том, чтобы с задачей и конкретной подсистемой познакомилась вся  команда.  В будущем это будет экономить команде время при решении подобных задач.

моб программирование моббинг Как организовать рабочее место для моббинга

Роли в моббинге

В моб программирование выделяют две роли: навигатор и драйвер. Навигатор говорит, что надо делать. Драйвер сидит за компьютером и выполняет задания навигатора.

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

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

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

Правила моб программирования

Правила моб программирования определяют до начала работы.

Главное решить два момента:

  • будет ли навигатором один человек или несколько;
  • через какой промежуток времени будет происходить смена ролей.

Зачем нужен моббинг

Вернемся к истории с разработчиком Иваном. Он пишет код. Когда в коде появляются ошибки, Иван их исправляет. Когда нужны новые функции, Иван их добавляет.

Никто в команде не знает, как работает код. Им важно только то, что он работает. Если вдруг не работает, надо звать Ивана.

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

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

Плюсы моббинга

Моб программирование ускоряет разработку. Сработанные команды вместе быстрее решают задачи. Происходит обмен опытом и знаниями. При объединении веток не возникает конфликт кода.

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

Команда учится договариваться. Члены команды учатся доверять и слышать мнения друг друга, приходят к консенсусу.

Информация не теряется. Общение между участниками команды происходит быстрее, данные не теряются при передаче. Все работают над одной задачей, а не переключается между разными.

Задачи не стоят в очереди. Не тратится время на передачу и ожидание. Команда быстрее делает продукт или решает задачу.

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

Когда применяют моббинг

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

Некоторые скрам–команды применяют моббинг на постоянной основе.

Моб программирование и удаленная работа

Моббинг подходит и для удаленных команд.

Для этого удобно использовать, например, Slack video call. В нем есть все необходимые функции: можно поделиться своим экраном, когда вы драйвер, и использовать свой голос, когда вы в роли навигатора.

моб программирование моббинг Команда AgiliX проводит сессию моббинга. Фото с сайта AgiliX

Кейс моб программирование для AgiliX.ru

Команда AgiliX применила моббинг для создания Minimum Marketable Product и запуска сайта AgiliX.ru. Моб программирование помогло выполнить всю работу за половину рабочего дня.

В следующий раз команда применила моббинг для обучения Community of Practice  — практики обмена знаниями.

Сейчас команда использует моббинг один раз в неделю.

Кейс моббинг в Dodo Engineering

В  Dodo Engineering провели 7-часовую тестовую сессию моббинга. В работу взяли  задачу из  малознакомого команде проекта. В итоге много  времени ушло на погружение в тему, разбор того, как работает участок кода, который надо изменить.

Из негативных моментов разработчик Dodo Engineering отметил, что роль  навигатора не всегда понятна. Например, когда в этой роли оказывается аналитик, а драйвером — разработчик. Навигатор–аналитик не до конца понимает, какие инструкции давать. Драйвер и без него знает, что надо делать. Навигатор выполняет роль испорченного телефона, пересказывает драйверу указания команды.

Команда отметила, что ей не хватило времени, чтобы подумать над задачей, обсудить идеи.

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

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

Для  Dodo Engineering  моб программирование решили использовать, когда в команду приходят новички–разработчики. Так они смогут быстрее погрузиться в проекты и понять принципы и правила работы.

Получите единый доступ ко всем нашим 21 курсам, 8 тренингам, 4 профессиям и 126 воркшопам — с сертификацией