Получите бесплатно — все материалы с наших курсов и тренингов
Тренинги, Курсы, Обучение — Agile, Scrum, OKR
Тренинги, Курсы, Обучение — Agile, Scrum, OKR
Тренинги, Курсы, Обучение — Agile, Scrum, OKR

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

20 декабря, 2023 г.
20 отзывов, в среднем 4 из 5
Что такое моб программирование, зачем нужен моббинг, разбираемся на кейсах и примерах
Нравится
3
Редактировать
Дополнить

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

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

Нравится Что такое моб программирование или моббинг?
6
Комментарий Что такое моб программирование или моббинг?
0
Редактировать Что такое моб программирование или моббинг?
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

Нравится Для каких задач подходит моббинг?
4
Комментарий Для каких задач подходит моббинг?
0
Редактировать Для каких задач подходит моббинг?
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

Нравится Зачем нужно моб программирование?
8
Комментарий Зачем нужно моб программирование?
0
Редактировать Зачем нужно моб программирование?
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

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

Нравится Моб программирование или моббинг
6
Комментарий Моб программирование или моббинг
0
Редактировать Моб программирование или моббинг
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

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

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

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

Нравится Как работает моб программирование
8
Комментарий Как работает моб программирование
0
Редактировать Как работает моб программирование
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

Нравится Для каких команд подходит моббинг
3
Комментарий Для каких команд подходит моббинг
0
Редактировать Для каких команд подходит моббинг
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

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

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

Нравится Для каких задач подходит моббинг
6
Комментарий Для каких задач подходит моббинг
0
Редактировать Для каких задач подходит моббинг
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

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

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

Нравится Роли в моббинге
6
Комментарий Роли в моббинге
0
Редактировать Роли в моббинге
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

  1. будет ли навигатором один человек или несколько;

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

Нравится Правила моб программирования
8
Комментарий Правила моб программирования
0
Редактировать Правила моб программирования
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

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

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

Нравится Зачем нужен моббинг
6
Комментарий Зачем нужен моббинг
0
Редактировать Зачем нужен моббинг
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

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

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

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

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

Нравится Плюсы моббинга
5
Комментарий Плюсы моббинга
0
Редактировать Плюсы моббинга
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

Нравится Когда применяют моббинг
3
Комментарий Когда применяют моббинг
0
Редактировать Когда применяют моббинг
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

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

Нравится Моб программирование и удаленная работа
6
Комментарий Моб программирование и удаленная работа
0
Редактировать Моб программирование и удаленная работа
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

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

Нравится Кейс моб программирование для AgiliX.ru
2
Комментарий Кейс моб программирование для AgiliX.ru
0
Редактировать Кейс моб программирование для AgiliX.ru
Редактировать
Mikhail Ряженка
Founder, Executive Partner

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

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

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

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

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

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

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

Нравится Кейс моббинг в Dodo Engineering
4
Комментарий Кейс моббинг в Dodo Engineering
0
Редактировать Кейс моббинг в Dodo Engineering
Редактировать
Mikhail Ряженка
Founder, Executive Partner