Пятеро - оптимальный размер команды?
Данный пост — проба пера на ниве переводов. Решил вот первый раз в жизни письменно перевести IT- шную статью с английского. Почему именно эта статья? Дело в том, что я подписан на RSS замечательного ресурса InfoQ. Читать я этот поток толком не успеваю, поскольку английским владею не так уж хорошо, чтобы быстренько пробегаться по тексту. Вот и выбрал статейку поменьше и по интересующей меня теме команд разработчиков. У меня есть надежда, что такой вот тщательный перевод со временем может упростить мне чтение подобного материала. В конце скажу пару слов (моё мнение) по теме самой статьи…
Происходит довольно много обсуждений и дебатов по поводу оптимального размера команды для максимальной производительности. Несмотря на то что многие приверженцы гибкой методологии разработки согласны с тем, что маленькие команды более функциональны и производительны по сравнению с большими, определение оптимального размера всё ещё вызывает споры.
Джеф Сазерленд (Jeff Sutherland) поделился статистикой в пользу маленьких команд, согласно которой стоимость условной единицы (function point) работы команды из 7-ми человек составила $566, а из 14-ти - $2970. Аналогично, в ответ на пост на InfoQ об увеличении команды и производительности Мишкин Бертейг ( Mishkin Berteig) прокомментировал:
Представьте, что вам “дали” команду разработчиков из 100 человек. Теперь представьте, что вам поручили очень важный проект. Что будет лучше:
а) Задействовать в проекте всех 100 разработчиков (с хорошим проджект-менеджментом, руководством и т.п.), или…
б) Выделить из группы семерых сильнейших, которые хотят работать над проектом (другими словами, 7 людей, которые действительно заинтересованны в проекте) и отдать им работу над проектом, остальных уволить, сэкономленное потратить на предоставление избранным семерым лучших инструментов и окружение, которые им необходимы, а оставшееся потратить на то, чтобы сделать их работу комфортной и счастливой.
Лично я, невзирая на суровость сценария б), определённо поставил бы на него, а не на сценарий а).
Юрген Аппело (Jurgen Appelo) предположил, что оптимальный размер команды, вероятно, всего 5. Пять - это общее число, основанное на различных исследованиях о взаимоотношениях и структурах команд.
- Скрам рекомендует размер команды 7±2 человека. Таким образом получается вариация между 5 и 9.
- Согласно “Cognitive Edge”, человеческий мозг эволюционировал вместе с окружающими социальными условиями, и существует естественное ограничение на количество поддерживаемых социальных связей. Коротко учение можно выразить правилом _5, 15 и 150_. 5 - естественное ограничение кратковременной памяти, 15 - естественный уровень глубокого доверия, а 150 - количество личностей, которое человек может держать в голове.
- Другое исследование, основанное на законе Паркинсона, предполагает, что команда с любым количеством участников меньше 20, кроме 8, вполне работоспособна. При количестве больше 20 начинается естественное деление на подгруппы, и согласованность не может быть достугнута. При восьми - часто происходит патовая ситуация во время принятия решений.
Ещё один аргумент в поддержку 5-ти - комментарий PMHut к вышеуказанной статье (про связь с законом Паркинсона):
Чем больше членов в команде, тем больше коммуникационных каналов возникает между ними, их количество растёт экспоненциально. Для 3-х членов мы имеем 4 коммуникационных канала, для 4-х - 9. Думаю, формула такая: m-1 ^ 2.
По-моему, идеальный вариант - маленькая команда из 4 или 5 членов.
[Примечание переводчика: с точки зрения математики выкладки неверны (там дальше их опровергают 2 раза), но суть от этого не меняется.]
Таким образом, основываясь на приведённых выше фактах и исследованиях, похоже, что команда из 5 человек удовлетворяет всем условиям, связанным с рекомендациями Скрама, законом Паркинсона, естественными ограничениями кратковременной памяти и благоприятного количества коммуникационных каналов.
Однако, несмотря на сильные доказательства в пользу команды из 5-ти, Юрген предупредил, что прежде, чем слепо следовать рекомендациям по размеру, командам следует попробовать самоорганизоваться и постепенно подобрать оптимальный размер. Цитирую:
Когда вам нужно организовать большой проект, не навязывайте людям “предпочтительный” размер команды только потому, что так написано в книжке. Попробуйте позволить самоорганизации сделать свою работу и дайте людям самим (внутри своего реального окружения) вычислить свой оптимум. Они хотят разделить свою команду из семи на две по 4 и 3? Конечно, почему нет? Они объединяют две команды в одну большую из 15-ти? Прекрасно, позвольте им проверить, сработает ли это.
От себя могу добавить, что моя команда показывала максимальную производительность (на душу), когда состояла из четверых (к сожалению, не получилось наблюдать команду пятерых). Как мне кажется, это связано не только с упрощением взаимодействия в команде, но и с качеством (если так можно выразиться) и совместимостью личного состава - команда команде рознь. Однако, в общем и целом я согласен с тем, что где-то около 5 ± чуть-чуть членов в команде - самое то. Больше 7-ми - это уже многовато.