Десятки факторов влияют на то, как успешно реализуется Scrum в компании. Один из важных компонентов при этом — баланс. Он важен и при создании команды: баланс навыков, ответственности, нагрузки или силы команды.
Чем руководствоваться при формировании scrum-команд и какие этапы проходит каждая новая команда?
Скоординированная командная работа
Чтобы понять, насколько важна команда для работы по Scrum, нужно вернуться в самое начало. Первая публикация по теме принадлежит Хиротаке Такеучи и Икудзиро Нонаке. Авторы еще в 1986 году применили термин Scrum в подзаголовке статьи, который позаимствовали из регби, оттуда же они взяли систему очков и малые команды. Исследование показало, что небольшие самоорганизующиеся группы имели больший успех в производительности.
Самоорганизация команды означала самостоятельный выбор того, как достичь цели. Команды получали цель — создать сложный продукт, но им не давали указаний, каким образом работать. Разработка без внешнего управления, на усмотрение непосредственных создателей продукта, оказалась эффективна.
В 90-ых Кен Швабер и Джефф Сазерленд разработали фреймворк и определили роли scrum-команды. В 2010 появилась первая версия ScrumGuide, и с тех пор в ней особое внимание отводится команде. Гид выделяет такие традиционные роли в scrum-команде:
- команда разработки продукта (разработка понимается в широком смысле, ближе к «созданию»),
- владелец продукта,
- scrum-мастер.
Команды при этом должны быть:
- кросс-функциональные, то есть обладать всеми компетенциями, чтобы создать продукт. Отлично, когда минимум двое из команды могут выполнить задачу из бэклога и сделают это, если один сотрудник заболеет, уйдёт в отпуск или перейдёт на другую работу.
- самоорганизованные, то есть могут выбирать, как лучше всего выполнять свою работу и не полагаются на указания извне.
Сазерленд и Швабер подчеркивают, что объединение ролей часто приводит к снижению производительности. Также команды намного более продуктивны и стабильны, когда сосредоточены только на одном продукте в спринте и не обязаны работать с несколькими продуктами или с другими командами.
Рекомендованный размер одной команды
Чтобы добиться сплочённости и максимизировать уровень командной работы, в первую очередь эксперты задумались о размере группы. Кен Швабер дает такие рекомендации: «Scrum-команда должна быть ограничена по размеру, чтобы максимизировать скорость и минимизировать контакты внутри неё. Scrum-команда — это коллектив до 9 человек».
За время существования фреймворка scrum-мастера работали с командами разного размера. Сазерленд тоже посвятил несколько постов размеру команды. Он опирается на исследование Лоуренса Путнэма.
Лоуренс Путнэм, легендарная фигура в разработке ПО, исследовал, сколько времени требуется на выполнение задач разным группам. Его опыты показали, что работа командой из 20 и более человек требует в пересчёте больше усилий, чем у команды в 5 и менее участников.
И не просто больше, а значительно больше.
Тогда он проверил 491 средний проект у сотен различных компаний. Все проекты отвечали за создание нового продукта или функции, а не за поддержку старого кода. Лоуренс разделил проекты по размеру команд и обнаружил закономерность. Когда команды становились размером более 8 человек, им требовалось больше времени, чтобы достичь результата. Группам из 3-5 человек требовалось около 25% усилий, которые затрачивали крупные команды.
Дальнейшее развитие этой идеи оформилось в "Putnam model", где представлены формулы для расчета затрат на разработку ПО.
Agile-сообщество сходится во мнении, что магическое число 7±2 оптимально для количества членов команды разработки. Но всё же это не конечная цифра. Отдельные проекты требуют разного количество специалистов.
Как сформировать scrum-команду
Составить команды можно несколькими способами. Очевидны два метода: или распределить сотрудников по командам руководителем, или сформировать команды снизу.
В первом случае можно использовать разные тесты: тестирование доктора Белбина, соционику и прочее, вплоть до анализа знаков гороскопа. Всё сводится к тому, что кроме профессиональных навыков нужно исследовать модель поведения каждого сотрудника, а затем складывать оптимальные команды по характеру участников и необходимым навыкам. Этот подход наиболее хорошо работает, когда вы набираете первую команду и можете отсеивать неподходящих кандидатов.
Если в фирме уже сформирован штат, а теперь внедряется Scrum, чаще практикуется самостоятельное распределение людей по командам. Этот же метод используется при перегруппировке, например, когда проекты закончены и нужно начинать новые. «Формирования команды снизу» достаточно просто организовать:
На доске пишутся названия проектов. Руководитель уходит. Каждый сотрудник клеит свой стикер к тому проекту, где он хочет работать.
Звучит не замысловато, но приём действительно работает. Причём разработчики сами понимают, какому проекту какие специализации понадобятся. Иногда, кроме проекта, на доску добавляют количество человек и имя владельца продукта, если он определён заранее.
Этот метод помогает сотрудникам выбрать, в какой области они хотят работать и с кем из коллег взаимодействовать.
Удачное формирование scrum-команд позволяет им лучше пережить следующие этапы.
Какие этапы развития проходит команда
Полезно помнить модель развития группы Брюса Такмана. Её следует придерживаться и при создании команды, и при добавлении новых людей.
Модель предполагает, что новые команды должны пройти различные этапы, прежде чем достичь высокого уровня производительности и оптимальных результатов. Всего Такман выделил 5 этапов: формирование (Forming), конфронтация (Storming), нормализация (Norming), исполнение (Preformig), завершение (Adjourning). На каждом этапе меняется производительность команды:
Формирование. Члены команды ещё не знакомы друг с другом и по-прежнему считают свою работу индивидуальными заданиями, а не совместными усилиями всей команды. Тимбилдинг и совместные обеды часто помогают сотрудникам чувствовать себя комфортнее друг с другом.
Конфронтация, или шторминг. Это этап притирки и конфликтов. Членам команды приходится признать, что в команде будут различия во мнениях, но разнообразие может привести к появлению большего количества идей и повышению производительности.
Нормирмализация. К моменту нормализации участники достигли консенсуса. Цель на этом этапе — принятие групповых стандартов.
Исполнение. У группы есть единое видение и цели. Команда научилась взаимодействовать и решать проблемы эффективно. Это уже настоящая команда, которая может поддерживать более высокий уровень производительности.
Завершение— это роспуск команды.
Насколько быстро команда придёт к четвертому этапу, нельзя предсказать. Приблизить команду к этапу сработанности помогают ретроспективы и тимбилдинг.
Как не провалить создание команды
Чтобы успешно проводить тимбилдинги, нужно представлять идеального члена команды. Например, вот наш:
- умеет признавать свои ошибки, учится на них,
- даёт ценную обратную связь,
- доверяет своей команде,
- вносит в коллектив юмор, энергию и желание работать.
В крупных организациях важно минимизировать влияние разных заинтересованных сторон. Если вы организуете scrum-команду в IT-отделе, то маркетологу или бухгалтеру это ни о чём не скажет, а существовать автономно от других отделов — трудно. Поэтому до формирования первой команды нужно подготовить структуру организации.
Вот список того, без чего команде будет трудно работать:
- работа складывается вокруг отдельных продуктов или независимых модулей,
- необходимо отказаться от иерархии внутри команды,
- руководство понимает важность всех ролей scrum-команды и не мешает работе,
- Product Owner действительно владеет продуктом,
- оценка работы ведётся по поставленной ценности для бизнеса,
- информация о продукте открыта для любого члена команы.
Таким образом, на успех scrum-команды влияет её размер, психологический климат внутри команды и то, какие условия для работы создаёт компания: будет ли предоставлена достаточная свобода, независимость и постоянный поток разнообразных задач.