Мне кажется, самый очевидный вариант решения таких проблем --
предлагать свои варианты решения (если они есть) команде,а команда уже
должна решать как им поступить. Ну и, естественно, заботится о
повышении профессионального уровня команды, чтобы они чаще принимали
"правильные" решения.
IMHO если кто-то опытнее, он должен обосновать почему его подход
лучше, иначе это простой диктат.
Я часто сталкиваюсь когда "опытные" люди говорят: это сделать
невозможно, это делаем так-то и так-то...
На вопрос "Почему именно так ?" они ответа дать зачастую не
могут... :)
Мне кажется, лучший способ направить комманду на путь истинный, это
задавать вопросы. Т.е. вы с высоты
своего опыта видите, где будет проблема, и спрашиваете "Как ваш подход
решает вот такую-то задачу?" и вот тогда
команда начинает думать :)
Правильно поставленный вопрос нетёс в себе половину ответа, и команда
сама прийдёт
в результате к наилучшему решению.
Такая тактика мне кажется лучше предложения своего варианта, поскольку
тут нет "предложения от начальника" что
снимает частичто ответственность с работника и ухудшает его
эффективность, и нет эффекта "своя рубашка ближе к телу",
когда каждый стремится протащить свой вариант потомучто он свой.
Вы вместе идёте к решению, что всегда приятно для менее опытного
человека :)
Не думаю, что это мешает, наоборот, это позволяет лучше
ориентироваться, что происходит в проекте. Все остальное лечится
разграничением обязанностей: только человек, закомитившийшся на
стори, принимает окончательное решение. Не нравится решение -
возьмите разработку стори на себя и делайте как считаете нужным.
Только потом сами отчитывайтесь перед заказчиком, почему вы не успели
ее закончить :)
Я так делаю
> Как часто его обязанности как члена комманды вступают в противоречие с его
> обязанностями как скрам мастера?
Бывает, когда вам надо закончить к концу итерации свою свою стори, а
при этом еще надо решить проблемы разработчиков, пособеседовать нового
человека, да мало ли чего еще. В таких случаях все просто - система
приоритетов помогает (прийдется вам не успеть доделать ваше задание -
старайтесь не комититься в что-то важное)
> Как вы разделяете свою ответственность как скрам мастера (фасилитатора
> митингов) и свою участие в митинге как участника команды ?
На митинге - вы - скрам мастер, прежде всего, иначе когда вы не СМ, то
кто выполняет его роль? Отчитываетесь перед командой за свою работу
как и все остальные, я не вижу тут противоречий.
Я вижу это так:
1. Все должно быть нацелено на эффективность. Глупый выбор - быть
"настоящим скрам-мастером" ИЛИ отстаивать свои идеи.
2. Суть фасилитатора не подвести команду к понимаю того что он знает.
Наводящими вопросами и т.д.
Зачем этот цирк? Есть мысли - говори наравне со всеми. Суть в том
чтобы общими усилиями сгенерировать лучшие идеи.
3. Чтобы не уходить в стороны - четкий гоал, план и тайм-бокс на
каждый митинг.
2Sergey
Ну не вижу я тут конфликта. А ты сам что думаешь?
Интересная тема.
Иметь классического фасилитатора большая роскошь для маленьких
команд.
Я вижу это так:
1. Все должно быть нацелено на эффективность. Глупый выбор - быть
"настоящим скрам-мастером" ИЛИ отстаивать свои идеи.
2. Суть фасилитатора не подвести команду к понимаю того что он знает.
Наводящими вопросами и т.д.
Зачем этот цирк? Есть мысли - говори наравне со всеми. Суть в том
чтобы общими усилиями сгенерировать лучшие идеи.
3. Чтобы не уходить в стороны - четкий гоал, план и тайм-бокс на
каждый митинг.
2Sergey
Ну не вижу я тут конфликта. А ты сам что думаешь?
Много дебатов в команде? Тут ничего не поделаешь - навязывание своего
мнения не работает, поверь. Я тоже прошел через это - оставь все как
есть, со временем команда сама прийдет к правильному виденью. Думаю,
что лучше на время уйти от "полярных" тем. Старайся подбирать новых
людей грамотно, которые бы разделяли твои идеи - тогда они (новые
люди) начнут толкать команду в нужном направлении изнутри.
> 2) Разделение коммитментов по тому, что берешь на себя как член комманды, и
> того, что должен делать как скрам мастер. При этом задачи скрам мастера
> часто (в моих конкретных условиях) являються важными
Не бери на себя такие задачи. Как СМ ты должен устранять конфликты, а
не порождать новые. Точка.
> 3) Конфликт интересов как члена команды и как скрам мастера.
> Пример - нечетное количество людей в команде при работе с парным
> программированием.
Опять повторюсь. Не можешь эффективно выполнять програмистские задачи
- не бери их. В одном проекте, где было всего 2 разработчика, я не
кодил вообще - взял на себя общение с заказчиком, координацию с QA и
всю черновую работу: подготовка инсталяций, администрирование, ...
Если есть интерес и желание, можно брать какие-нибудь
исследовательские задачи, это, как правило, отдельный thread,
пересечений с основными задачами - минимум - меньше конфликтов.
Другими словами: нет смысла создавать искусственную "непричастность" к
решениям. Глупо СМ держать в тайне свои идеи, просто чтобы не
"спугнуть" скрамовский дух команды. В реальности, надо признать,
разработческий опыт СМ минимум не хуже среднего уровня по команде -
зачем же интригантски таить интересные мысли, если можно выложить их
как пищу для обсуждения остальной команде. Единственное условие: все
время напоминать команде, что окончательное решение и ответственность
за него - на ней. Ну и демонстрировать это другими возможными
способами - это уже скорее вопрос правильного психологического
подхода, и такой подход важен независимо от того, вмешиваетесь вы в
обсуждения команды или нет.
Как вариант, можно взглянуть на СМ как на стороннего консультанта,
который предлагает лучшие, с его точки зрения, решения на рассмотрение
команды. Как технические, так и по планированию. Право команды -
выбирать.
On Jul 20, 3:33 pm, Alexander Lockshyn <redw...@gmail.com> wrote:
Я тоже так считал раньше.
Мне кажется, поведение в такой ситуации слишком сильно зависит от
контекста, чтобы давать конкретные рекоммендации. Тем не менее, "as a
rule of thumb" в подобных ситауациях я бы держал идеи при себе и не
предлагал слишком много своих - как максимум, чуть больше, чем просят.
Можно ещё рассказывать о вариантах работающих для других команд, но,
желательно, вне "предметного" разговора.
Говорю это совсем недавно обжёгшись на подобной ситуации. Ситуция
только отягчалась тем, что будучи СМ, в ряде областей я оказался самым
опытным человеком. Каким опытным бы ни был СМ, свои знания не положишь
в голову соседям.. Можно обучать, но это не происходит за один день.
Можно рассказывать о возможных вариантах, но нужно быть очень
осторожным, чтобы команда не отмахнулась "ну, давай сделаем как ты
говоришь", морально снимая с себя ответственность. То, что СМ считает
лучшим для себя, совершенно не обязательно окажется лучшим для
команды. Например, что толку рассказывать о преимуществах юнит-тестов
и continuous integration, если СМ - единственный, кто может их
поддерживать?
Мой опыт не претендует на абсолютную истину. Разумеется, могут быть
ситуации, когда СМ лучше всего быть "примерным членом команды". Тем не
менее, даже в таком случае я считаю очень важным, чтобы роли СМ и
члена команды были очень чётко различимыми, чтобы всегда было очевидно
в какой момент СМ говорит как СМ, а когда предлагает идеи как член
команды. Иначе слишком велик шанс, что в какой-то момент команда
примет "мнение" СМ-члена команды за указание СМ-проджект менеджера.
Знаю, что некоторые команды в подобных случаях находят полезным
специальный символ с помощью которого легко (и весело) можно
определить когда СМ - СМ, а когда член команды. Например, он может
снимать/надевать кепку СМ. Лично я, в случаях когда приходится
доставлять мнение Product Owner или когда никак не могу удержаться от
технического совета, совершаю такое детское движение головой - как бы
"выхожу" из роли СМ, и "захожу" в другую. Смешно и по-детски - зато ни
малейшего сомнения, что мой совет - это не прямое руководство к
действию
Всем удачи!
Артём.
P.S.
Мой Scrum trainer говорил: "Если СМ приходится о чём-то думать так
сильно, что болит голова, скорее всего это не его дело" :)
On 12 авг, 17:28, "Alexey Krivitsky" <alexeykrivit...@gmail.com>
wrote:
> привет, привет!
>
> согласен со всеми ;)
> не стоит стоять в стороне, если ты реально можешь помочь.
> но все-таки не стоит в то же время отталкивать локтями тех, кто взял на себя
> ответственность что-либо сделать
> с криками: "не так, смотри как надо!".
>
> СМ, как мне кажется, на раннем этапе формирования команды, должен быть
> примерным членом команды:
> - давать commitments,
> - отвечать за качество работы
> - быть хорошим партнером для pair programming,
> - правильно рапортовать на утреннем митинге,
> - быть готовым помочь каждому,
> - быть позитивным и конструктивным во всём что происходит в проекте
> - разрешать (и иногда и провоцировать) конфликты - учить команду общатсья
> и что довольно важно - не отбирать возможность у других людей ошибаться,
> всё-таки учиться на своих ошибках необходимо.
>
> но это все на раннем этапе. когда же в команде уже успешно работает 5 и
> более человек, эти навыки уже должны перейти ко всем членам команды, и
> больше пользы СМ уже сможет принести, будучи 100% СМом.
>
> такие вот мои мысли, братья. ;)
>
> Лёша.
>
когда нужна будет тех помощь - вас попросят применить или поделиться
вашими programming skills.
когда кол-во или тягость импедиментов привесит какой-то уровень - вас
попросят все бросить и бежать решать проблемы
Я на основании своего опыта в своей конкретно комманде вижу.
Какие моменты вызывают конфликт (тут включается не только императивный стиль управления против стиля управления, направленного на сотрудничество)
1) Роль фасилитатора и участника митинга. Как только начинаеш активно участвывать, высказывать свое мнение, то теряеться роль фасилитации, то есть обеспечение процесса сотрудничества. Наличие своего мнения мешает нейтральности в обсуждении. Это больше всего относиться к ретреспективам.
2) Разделение коммитментов по тому, что берешь на себя как член комманды, и того, что должен делать как скрам мастер. При этом задачи скрам мастера часто (в моих конкретных условиях) являються важными, но длительными по внедрению (пример - изменение branching policy для существующего проекта, делающего регулярные и частые релизы)
3) Конфликт интересов как члена команды и как скрам мастера.
Пример - нечетное количество людей в команде при работе с парным программированием.
Как член команды, тебе тоже нужна пара или ревьювер, с другой стороны - люди беруться за задачу, на которую коммитились, в паре, и оценивают, что у них не будет времени ревьювить твою задачи и завершить свою, поэтому твоя задача страдает.