Professional Scrum Master (PSM)

Professional Scrum Master (PSM)
Professional Scrum Master (PSM)

воскресенье, 28 сентября 2014 г.

Что такое неудачный Спринт?


qnnxflfarfhyhpeaqwyz

Недавно между тренерами Scrum.org разгорелась дискуссия относительно вопроса, какой Спринт можно считать неудачным. Мы почти сразу пришли к одному мнению.
А, по вашему мнению, что такое неудачный Спринт:
  • Если команда не выполняет свой прогноз на Спринт?
  • Если команда не достигает Цели Спринта?
  • Что-то другое?
Вопрос действительно очень интересный и я предлагаю разобраться в нем.

Скрам для продукта, а не проекта. Итак, начну с самого банального вопроса – что же такое Скрам и какая его цель?
Скрам – это фреймворк для разработки и поддержки функционально сложных ПРОДУКТОВ. Скрам – это фреймворк, в рамках которого возможно решать сложные адаптивные проблемы и в то же время продуктивно и креативно разрабатывать ПРОДУКТЫ наивысшего качества (Скрам Гайд, 2013).
Я привел цитату из Скрам Гайда для того, чтобы напомнить нам о том, что Скрам фокусируется на разработке креативных ПРОДУКТОВ, а не ПРОЕКТОВ.

понедельник, 22 сентября 2014 г.

Ищем гребешок для причесывания Беклога


Скрам Гайде версии 2011 года присутствовал термин Grooming. Это неофициальная встреча Скрама, во время которой Команда Разработки вместе Владельцем Продукта старательно «причесывают» Беклог, готовя его к следующим Спринтам. В последней версии встреча не изменила своего назначения, просто сменила вывеску и теперь называется Product Backlog Refinement (PBR).
Зачем? Откройте английский жаргонный словарь, и вы сразу поймете, почему многие англичане раньше смущенно качали головой.
Тем не менее, давайте считать, что во время Product Backlog Refinement (PBR) Беклог, как и прежде, отправляется в парикмахерскую для того, чтобы команда и Владелец Продукта могли:
  • Добавить, убрать или разбить Элементы Беклога Продукта (PBI).
  • Уточнить или дать новые оценки.
  • Изменить порядок следования элементов Беклога Продукта.
  • Обсудить и прояснить требования.
Поддержка Беклога Продукта – это активность по добавлению деталей, оценок и упорядочивания элементов в Беклоге Продукта. Это непрерывный процесс, во время которого Владелец Продукта и Команда Разработки работают над требованиями Беклога Продукта. Во время обработки требования проверяются и пересматриваются. Скрам Команда решает, как и когда должна производиться Поддержка Беклога Продукта. Обычно это занимает не более 10% времени Скрам Команды. Однако Владелец Продукта в любое время может изменить требования на свое усмотрение (Scrum Guide, july 2013).
PBR одна из самых загадочных встреч, и у команд возникает много вопросов. Мы постараемся разобраться в этом, но для этого сначала давайте пробежимся по определению Беклога Продукта.
Беклог Продукта. Последняя версия Скрам Гайда дает нам определение:
Беклог Продукта – это УПОРЯДОЧЕННЫЙ список всего, что может быть нужным в продукте, он является ЕДИНСТВЕННЫМ источником требований для любых изменений, которые может потребоваться внести в продукт. ОТВЕТСТВЕННОСТЬ за Беклог Продукта несет Владелец Продукта, включая его содержимое, доступность и упорядочение.
Беклог Продукта никогда не является полным. Начальная версия этого документа содержит только первоначально известные и наиболее понятные требования. Беклог Продукта постоянно обновляется по мере обновления самого продукта и среды, в которой он разрабатывается. Беклог Продукта является ДИНАМИЧЕСКИМ, постоянно изменяющимся для соответствия требованиям продукта, его конкурентоспособности и пригодности. Беклог Продукта существует ровно до тех пор, пока существует и сам продукт. Беклог Продукта содержит все ФИЧИ, ФУНКЦИИ, ТРЕБОВАНИЯ, УСОВЕРШЕНСТВОВАНИЯ и ДЕФЕКТЫ, то есть те данные, которые и определяют изменения, необходимые в следующих релизах продукта. Каждому Элементу Беклога Продукта присваиваться ОПИСАНИЕ, ПОРЯДКОВЫЙ НОМЕР, ОЦЕНКА и ЦЕННОСТЬ.
backlog.png
Я выделил некоторые слова большими буквами. Давайте быстро пробежимся по ним:
  • УПОРЯДОЧЕННЫЙ. В течение многих лет Беклог Продукта был приоритезированным списком. Но приоритезация – лишь частный случай упорядоченности. Современная редакция Скрама требует от Владельца Продукта проставлять каждому элементу Беклога (PBI) свой порядковый номер, тем самым избегая синдрома «для нас все фичи важные» и «нам все нужно сделать. Подробнее об этом изменении в Скраме можно почитать в статье «Ordered, not Prioritized».
  • Беклог Продукта является ЕДИНСТВЕННЫМ источником требований для продукта. Что это значит? Не должно быть никаких дублирующих Technical Debt, Defects и других Беклогов, в которых мы храним нечто, к чему хотим вернуться после, но на практике вряд ли это когда-либо произойдет. Логичнее было бы назвать такие артефакты «Never will do Backlog». Во-первых, подобные практики нарушают прозрачность и могут ввести в заблуждение Владельца Продукта, который строит план релиза исходя из Беклога Продукта. Он и не догадывается, что команда задумала грандиозный рефакторинг, план которого хранится в другом документе. Во-вторых, никто, даже CEO вашей компании,  не может заставить Команду Разработки работать над требованиями, которых нет в Беклоге Продукта. Для того, чтобы это случилось, CEO должен убедить в этом сначала Владельца Продукта.
  • ОТВЕТСТВЕННОСТЬ за Беклог Продукта несет один человек - Владелец Продукта. Он может делегировать те или иные активности членам команды. Иногда их называют «группой Владельца Продукта», в которую могут входить тестировщики, бизнес аналитики, разработчики и т.д. Но за все отвечает лишь один человек. Этого правило родилось из жизненной практики, ведь часто необходимо разрубить «гордиев узел» и принять быстрое бизнес решение.
  • ДИНАМИЧНОСТЬ Беклога заключается в том, что он постоянно меняется и эволюционирует. Беклог Продукта – не толстая спека, которую набивают в течение нескольких месяцев бизнес аналитики, а живой артефакт. Владелец Продукта может вносить в него изменения когда угодно. Ключевое мероприятие, после которого мы ожидаем, что Беклог будет обновлен – Обзор Спринта. Мы получаем обратную связь о продукте от конечных пользователей, заказчиков и других заинтересованных лиц, и обновляем Беклог.
  • Так как Беклог Продукта – единственный источник требований, но в нем хранятся элементы различного типа: ФИЧИ (features), ДЕФЕКТЫ (defects), ТРЕБОВАНИЯ (requirements), УСОВЕРШЕНСТВОВАНИЯ (enhancement), ФУНКЦИИ (functions). Беклог может включать как функциональные, так и нефункциональные требования продукта.
  • Каждый элемент Беклога Продукта имеет 4 атрибута: ОПИСАНИЕ, ПОРЯДКОВЫЙ НОМЕР, ОЦЕНКУ и БИЗНЕС ЦЕННОСТЬ. С первыми двумя, вроде бы, все понятно. Что же касается оценок, то они отражают стоимость разработки и часто даются Командой Разработки в относительных величинах или «попугаях». Скрам не требует от нас использования относительных величин, но я видел мало Скрам Команд, которые бы ими не пользовались. Главная причина – люди не умеют оценивать  в абсолютных величинах, поэтому стори-поинты лучше, чем часы. Что касается четвертого атрибута (бизнес ценность), то, к сожалению, лишь некоторые Владельцы Продукта пользуются им. Современный Скрам требует явно проставлять бизнес ценность для каждого Элемента Беклога Продукта (PBI). Можно пользоваться практикой Business Value Point (BVP), о которой пишет Джим Хайсмит в книге Adaptive Leadership или проставлять условные High, Medium, Low оценки для каждого элементов. Важно одно – мы хотим, чтобы между Владельцем Продукта и Командой Разработки состоялся разговор о ценности каждого элемента Беклога.
 Ключ к эффективному планированию. Не все команды, к сожалению, понимают, что ключ к удачному планированию и, соответственно, к самому Спринту, лежит как раз в проведении эффективных Product Backlog Refinement встреч.
Нет ничего более болезненного для команды, чем плохо подготовленные Пользовательские Истории, с которыми она сталкивается на Планировании Спринта. Обсуждение затягивается на часы, команда погружается в бесконечные дискуссии и дебаты. Я видел такие встречи, и это ужасно. Хороший Владелец Продукта должен делать все возможное, чтоб избежать подобного сценария (Galen, Robert, Scrum Product Ownership).
Как часто нам нужно проводить PBR. В отличие от других обязательных мероприятий (Планирование, Ежедневный Скрам, Обзор Спринта, Ретроспектива), Скрам дает вам право самим решать как, когда и сколько раз проводить Product Backlog Refinement.
Готового рецепта нет, вы можете создать свой собственный. Но мы выработали хорошую, на наш взгляд, практику, которая хорошо прижилась во многих командах, с которыми мы работали. Мы рекомендуем командам посвящать 15-20 минут после Ежедневного Скрама подробному обсуждению одной истории. У всех появляется возможность заняться разведкой и до следующей встречи посмотреть на историю, покопаться в ней индивидуально, и, тем самым, подготовиться к планированию, чтобы чувствовать себя более комфортно.
Таким образом, планирование превращается в простой выбор того, что мы будем делать, и может занимать не более 10 минут. Такой подход позволяет сразу перейти к распилу историй на задачи и вовлечь всех в работу незамедлительно. Потом команда инспектирует и подстраивается соответствующим образом каждый день. При двухнедельной продолжительности спринтов у вас получится 2 часа (15 минут * 8 дней), которые вы сэкономили от планирования спринта.
pbr_collage.png
Готовность элементов требований. Мы должны стремиться к тому, чтобы к моменту начала Планирования Спринта все элементы Беклога были «подготовленными» для их взятия в Спринт, чтобы избежать неприятных сюрпризов:
Требования Беклога Продукта, которые можно выполнить в течение одного Спринта считаются “Подготовленными” для следующего Планирования Спринта. Элементы Беклога Продукта обычно приобретают эту степень прозрачности при помощи описанных активностей по детализации (Scrum Guide, 2013).
ОК, это понятно. А теперь вопрос, насколько тщательно следует причесывать требования? Ведь совершенству нет предела. С одной стороны, чем больше мы потратим времени на разбор историй, тем более ясным и точным будет будущий Спринт и тем меньше рисков и неопределенностей нас ждет. С другой стороны, каждый лишний час, на который отвлекается Команда Разработки, можно считать потерей. Бесконечные статус митинги, мультизадачность – разве это не против чего мы боролись? Единственно правильного ответа нет. Мы находимся в запутанной среде. Но мне нравятся несколько моделей, которые могут помочь ответить на этот вопрос.
 Кривая стоимости. Эту модель я обнаружил в книге «Real Life Scrum» (оттуда же украл и картинку).
pbr_curve.png
 Автор книги удачно подметил, что цена, которую мы платим за встречи и анализ требований возрастает примерно пропорционально времени. С другой стороны, цена имплементации требований падает нелинейно. Существует некая точка, в которой есть пересечение и после которой общая цена начинает резко расти. Наша задача как раз и заключается в том, чтобы найти эту пресловутую точку. Как это сделать? В этом может помочь вторая модель.
Правило 70/30. Эта модель предлагает Роберт Гален, и я не раз убеждался в ее правдивости. Представьте, что 100%  - это абсолютно вылизанная и проанализированная история, от которой не стоит ждать каких-либо сюрпризов. Роберт предлагает подготавливать истории примерно на 70%.
Я рекомендую определять историю лишь на 70%. У нас должны оставаться открытые вопросы, сомнения и определенная доля неизвестности. Просто не слишком много, и не в самых критических местах. Когда же заполняются остальные 30%? Во время Спринта. Команды устраняют их, выполняя работу. Это и является одной из главных причин, почему Владелец Продукта должен быть доступен для Команды в течение всего Спринта (Galen, Robert, Scrum Product Ownership).
Примеры определения готовности элемента Беклога Продукта. Скрам - гибкий фреймворк и не отдает предпочтения какому-либо формату для определения элементов Беклога. Но большинство команд используют Пользовательские Истории. Поэтому я приведу пример готовности, используя этот формат:
  1. История ясно написана и имеет ни менее 5 приемочных критериев.
  2. История не превышает 8 Story Points.
  3. Историю обсуждали на нескольких PBR встречах, и она понятна команде.
  4. Команда понимает как функциональные, так и нефункциональные части истории.
  5. Определены все зависимости от других историй и это отражено в Беклоге Продукта.
  6. История имеет определенную бизнес ценность для конечных пользователей и поддерживает Цель Спринта.
 Чем еще Скрам Мастер может помочь Владельцу Продукта и Команде Разработки? Не надо объяснять, как разработчики «любят» лишние встречи. И пусть. Это удел менеджеров. Дайте возможность разработчикам максимально фокусировано проводить встречи и заниматься их любимым делом - разработкой. Заранее распечатайте на бумаге истории, которые вы хотите обсудить и раздайте по экземпляру каждому. Настройте связь, видео, звук, подготовьте помещение, стикеры, маркеры, флип-чарты и остальные необходимые инструменты. Совершенствуйте свои навыки в фасилитации и коучинге. Избавьте свою команду от рутины, и команда ответит вам благодарностью и доверием.
pbr_prep.jpg

вторник, 2 сентября 2014 г.

Много работать вредно


Однажды Резерфорд зашел поздно вечером в свою лабораторию и увидел там, несмотря на неурочный час, одного из своих подававших надежды сотрудников.
«Что вы делаете здесь так поздно?» — удивился ученый.
«Работаю», — ответил тот.
«Что же вы, в таком случае, делали днем?»
«Разумеется, работал».
«А утром? Неужели и утром вы тоже работали?»
«И утром тоже».
«Позвольте, — неподдельно изумился Резерфорд, — а когда же вы думаете?» — и перестал возлагать на этого сотрудника особые надежды.

Давайте посетим темную сторону луны и обсудим то, с чем каждый из нас хоть раз, но сталкивался в своей жизни - овертаймы. Мы выясним:
  • Какое же оптимальное количество часов работы в неделю?
  • Как зависит производительность от времени, проведенного за работой?
  • Как относиться к тем, кто стоически перерабатывает в команде?
  • Что говорит нам об этом Аджайл и Скрам?
Почему Резерфорд перестал возлагать надежды на своего сотрудника?
Приведенная выше история с известным британским физиком Резерфордом не выдумка, это реальный факт из его биографии. Почему же Резерфорд негативно относился к тому, чтобы сотрудники его лаборатории перерабатывали и оставались  там вечером? Для этого предлагаю заглянуть на один из самых интересных курсов на портале Coursera, который называется Learning how to learn. Авторы курса утверждают, что у человека есть два основных режима мышления: фокусированный (Focused) и рассеянный (Diffuse).
focused_diffuse.png
Авторы курса приводят аналогию с машиной для пинбола. Фокусированный режим нужен нам для того, чтобы проводить анализы, высчитывать формулы и решать сложные задачки во время экзаменов. Сдвинутые брови и сморщенный лоб – явные признаки того, что наш мозг перешел в фокусированный режим. Рассеянный же режим может застать нас совсем в неожиданных местах: как за рулем машины, так и в душе. Это может случиться даже во сне в кровати. Вспомните про знаменитую таблицу Менделеева, которая явилась ученому именно ночью. Рассеянное мышление позволяет посмотреть на вещи с новой стороны. Как это относится к случаю с Резерфордом? В ряде профессий, а исследовательская работа относится именно к этому типу, человеческому мозгу необходимо определенное время для того, чтобы отстраниться и увидеть большую картину происходящего. За деревьями можно не увидеть леса, как говорится в известной пословице. Инновационные идеи и научные прорывы как раз случаются чаще всего в режиме рассеянного мышления. Если же работать с утра до вечера, то этого может просто никогда не произойти. Мне кажется, Резерфорд имел в виду именно это.
Итак, принцип первый:

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

220px-Il_pomodoro.jpg
Связь между продуктивностью и временем. Давайте посмотрим, как количество рабочих часов в неделю отражается на продуктивности человека. В книге “Scrum: A revolutionary approach to building teams” Джефф Сазерленд приводит слова Джона Казенбаха, который в 90-х годах работал в известной консалтинговой компании McKinsey, где в то время закрепилась практика 7-дневной недели. Работники компании соревновались между собой по количеству переработанных часов. Лояльность сотрудников к компании определялась именно количеством сверхурочного времени, которое они проводили в стенах офиса. Вот что говорит по этому поводу Джон:
По религиозным причинам я мог работать только 6 дней в неделю. И затем я кое-что заметил. Хотя я работал меньше, я успевал делать больше, чем мои коллеги. А ведь это были ребята, которые работали практически каждый день. Затем я попробовал перейти на пятидневку и обнаружил, что мои результаты еще улучшились.
Слова Джона прекрасно иллюстрирует кривая Максвелла, которая показывает зависимость между количеством проработанных за неделю часов и продуктивностью человека (см. фото ниже).
hours.png
Как мы видим, максимальная продуктивность соответствует количеству часов немного меньшему, чем 40. Далее идет быстрый спад продуктивности, который стремится к нулю в точке 60 часов. Очень важно понимать, что эти цифры лишь примерные. Все очень индивидуально. Ощущали ли вы что-то подобное? Однажды (в то время я был программистом), мне пришлось работать без выходных несколько месяцев подряд. Ощущения были ужасными. Я чувствовал, что вошел в заколдованный круг, из которого не было сил вырваться. Я чувствовал, что моя продуктивность резко упала и стал невнимательным, раздраженным. Я много работал, но все равно патологически не успевал.
Поэтому, второй принцип работы гласит:

Пик продуктивности достигается при 36-40 часах работы в неделю. После этого продуктивность резко падает. Не обманывайте себя. Работая дольше, вы не станете делать больше.

Пагубная организационная культура. Как в компаниях относятся к людям, которые перерабатывают, днеют и ночуют в офисе? Это же герои. Им выплачиваются премиальные, их ставят в пример другим сотрудникам. Это пагубная практика стимулирует и поощряет выгорание людей. Подумайте, фактически, компании людям доплачивают за то, чтобы те теряли свою продуктивность и, как результат, приносили меньше дохода компании!
Я часто вспоминаю интересную историю, которую Кен Швабер описал в своей книге “The Enterpise and Scrum”:
Adventure Works была куплена японской компанией. Скрам и 8-часовой рабочий день не принимались новым менеджментом. Они требовали 12-часового рабочего дня, и компания была вынуждена пойти на это. За несколько Спринтов количество дефектов увеличилось на 60 процентов. Их появлялось больше, чем нового функционала. В конце концов, американский менеджмент вернул команды к 40-часовой рабочей неделе. Японцы решили избавиться от компании. Через два месяца Adventure Works выпустила на рынок свой продукт, который стал очень успешным. Имело ли смысл японцам продавать компанию? Конечно же, нет, но люди и культура тесно переплетены. У людей различные чувства, верования, убеждения, и они часто затуманивают рациональное восприятие действительности.
 И поэтому, третий принцип гласит:

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

Постоянный темп работы. Один из 12-ти принципов Аджайл Манифеста гласит:
Инвесторы, разработчики и пользователи должны иметь возможность поддерживать постоянный ритм бесконечно. Agile помогает наладить такой устойчивый процесс разработки.
Эти простые и интуитивно понятные всем ценности и принципы были написаны еще в 2001 году. И даже тогда они не являлись каким-то откровением или чем-то совершенно новым. Мы часто осознаем, что работаем неправильно, но организационная культура многих компаний настолько устоялась и впиталась в нас, что мы воспринимаем дисфункции, как должное. IT индустрия не понаслышке знает, что такое «death march» и «deadline». Добегаем до некой линии, а затем падаем замертво? Именно так команды и работали десятилетия до подписания Аджайл Манифеста. Пора бы уже меняться, не правда ли?
Получить добавку и дополнительную порцию советов о здоровой работе можно  здесь.

четверг, 28 августа 2014 г.

Игра с Burndown/Burnup



Хороший Скрам Мастер ежедневно обновляет Спринт Burndown, чтобы освободить команду от лишней работы. Отличный же Скрам Мастер помогает команде самоорганизовываться при помощи визуальных инструментов (Geodoff Watts, Scrum Mastery).
Burndown и Burnup – хорошо знакомые нам инструменты, которыми пользуются многие Скрам команды. Но, не смотря простоту, я сталкиваюсь с большим количеством недопониманий. Давайте рассмотрим некоторые из них, а затем я расскажу о том, каким образом можно увеличить эффективность использования этих инструментов.
Миф №1. Каждая Скрам Команда обязана строить Burndown. Действительно, еще десять лет назад Burndown был неотъемлемой частью Скрама, обязательным его артефактом (некоторые до сих пор считают так). Но сейчас это не так. В Скрам Гайде четко написано, что:
Возможно использование различных практик для прогнозирования прогресса, как, например, берндаун, бернап чарты или коммулятивные диаграммы. Эти техники полезны (Scrum Guide, july 2013).
Итак, современному Скраму безразлично, используете ли вы Burndown, Burnup, или же коммулятивные диаграммы для отображения прогресса. Существует большое количество различных практик и подходов. Скрам не навязывает конкретные решения. Скрам – фреймворк, внутри которого у команд возникают собственные практики, процессы и инструменты. Важно другое:
В любое время можно суммировать оставшуюся работу в Спринте. Команда Разработки отслеживает ее, по меньшей мере, на каждом Ежедневном Скраме, чтобы понять вероятность достижения Цели Спринта. Отслеживая оставшуюся работу, Команда Разработки видит и управляет прогрессом (Scrum Guide, july 2013)
Вы можете использовать Burndown, а можете «зарядить» Burndown. А, возможно, ни один из этих графиков вам не приглянулся, и вы решили, что визуальная Скрам доска прекрасно отображает прогресс к Цели Спринта. И знаете что? Скрам ОК с этим.
Миф №2. Скрам Мастер должен обновлять Burndown/Burnup. Часто, когда я говорю командам о том, что они сами должны обновлять свои графики, я ловлю на себе недоумленные взгляды, а затем обычно кто-то спрашивает: «а Скрам Мастер тогда нам зачем?». У меня есть встречные вопросы:
  • Для чего вообще Burndown/Burnup?
  • Кто отвечает за достижение Цели Спринта?
 Burndown/Burnup существуют для того, чтобы давать обратную визуальную связь тем, кто отвечает за достижение Цели Спринта, и заставлять их рефлексировать, корректировать свои действия в зависимости от видимого прогресса. Так как именно Команда Разработки отвечает за достижение Цели Спринта (а НЕ Скрам Мастер), то она и должна отслеживать свой процесс сама. Частый негативный паттерн, который я вижу в Скрам командах, где Скрам Мастер ведет графики – команде глубоко побоку вся эта информация. Ну, меняются какие то циферки, и что дальше? Поверьте, если вы введете правило, что каждый по очереди должен обновлять график на стене во время или после Ежедневного Скрама, команда начнет реагировать на прогресс лучше.
Поведение людей является функцией от человека (Person) и его окружения (Environment). Вывел эту знаменитую формулу психолог Курт Левин:

B=f(P,E)

self_organization_boundary.png
Для того, чтобы воздействовать на поведение людей, вместо того, чтобы менять самих людей (что очень тяжело), можно просто изменить окружение и тем самым заставить их самоорганизоваться внутри границ (How to Change the World, Yurgen Apello).
Какая же роль в этом случае отводится Скрам Мастеру? Объяснить команде, зачем нужен Burndown, научить его строить, задавать открытые вопросы и фасилитировать процесс, добиваясь самоорганизации.
Миф №3. Нужно стремиться к тому, чтобы фактическая линия на графике совпадала с идеальной.
Иногда менеджеры с гордостью демонстрируют идеальный Burndown, где зеленая линия (идеальная) совпадает с красной (фактической). У меня в голове возникают сразу две мысли:
  • Этого не может быть.
  • А если это действительно так, то зачем тогда им Скрам?
Чаще всего оказывается верным первое. В запутанной среде разработки ПО нельзя запланировать задачи на Спринт вперед так, чтобы исключить непредсказуемость. Беклог Спринта динамически меняется. Цветные стикеры двигаются по доске, оценки на задачи меняются, разработчики тратят на задачи больше или меньше времени, чем они изначально рассчитывали. В Запутанной среде (читаем Путешествие по Кеневину, часть 1) невозможно в конце получить то, что было запланировано в начале. А если ваша команда, все таки, занимается разработкой ПО и имеет подобные графики, то, скорее всего, отсутствует доверие. Разработчики завышают свои оценки, чтобы обезопасить себя.
Если же в команде доверительные отношения и мы не страхуемся завышенными оценками, а графики выходят идеальными, то я бы рекомендовал задуматься – а зачем здесь нужен Скрам вообще? Скорее всего, вы находитесь в Очевидном или Сложном доменах. Скрам – не серебряная пуля, возможно, вам подойдет «старый добрый Водопад».
Теперь я хочу поделиться своим собственным опытом в использовании Burndown и Burnup. Я приведу примеры конкретных практик, которые работали в моих командах.
Практика 1. Использование Burndown (часы) и Burnup (story points) одновременно. Долгое время я довольствовался лишь одним Burndown-ом, построенным на часах, но потом мне его стало не хватать. И вот почему. Он не отображает реальную бизнес ценность, доставленную командой. Если команда одновременно работает над большим количеством Историй (это плохая практиа, нужно ограничивать WIP), то, несмотря на то, что работа кипит – Истории не закрываются. В итоге можем придти к парадоксальной ситуации – Burndown почти «сгорел», а ничего, по сути, не сделано. Я начал пользоваться Burnup-ом, построенном на Стори Поинтах, который отображал доставленную ценность, но столкнулся с другой проблемой – иногда этот график сильно демотивировал некоторые команды. Представьте себе, что работа кипит, люди закрывают таски, а на графике унылая горизонтальная черта. И тогда я решил пользоваться двумя графиками одновременно.
burn_down.jpg
Подобная практика убивает сразу двух зайцев:
  • Показывает, насколько здоров ваш процесс и как быстро вы можете доставлять бизнес ценность на уровне Стори Поинтов (Burnup).
  • Отображает общий прогресс на уровне часов (Burndown).
Не забывайте использовать визуальную Канбан доску и ограничивать работу в прогрессе (WIP), иначе можно остаться у разбитого корыта к концу Спринта (см. фото ниже):
SAM_0479.jpg
Практика 2. Сделайте так, чтобы графики обновляла сама команда. Возможно, каждый день это будет новый человек. Поймите, что работает для вас и пользуйтесь этим.
Практика 3. Сделайте ваши графики визуальными и составной частью информационного радиатора. Каждый должен иметь возможность увидеть их и почесать голову в задумчивости, если там не все ОК. В отличии от информационных холодильников, дверцу которых нужно специально открывать (к примеру, электронные инструменты вроде Jira, Greenhopper), радиаторы излучают информацию и служат прекрасным источником коммуникации. И когда менеджер в очередной раз зайдет в комнату , возможно, все, что вам нужно будет сделать – проводить его к радиатору.
Практика 4.  Меняйте время от времени расположение ваших графиков. Человеческий глаз быстро привыкает к новому и скоро команда может перестать обращать на них внимание. Они станут просто обоями. А обои время от времени следует переклеивать.
Практика 5. Обновляйте графики во время Ежедневного Скрама, чтобы вся команда видела их актуальное состояние и рефлексировала. После Ежедневного Скрама можно спросить: «ОК, кажется, мы не успеваем. Что мы можем сделать?»
Практика 6. Используйте геймификацию. Подкиньте команде идею добавить что-то новенькое в Burndown. Ведь скучно же каждый Спринт наблюдать за однообразными осями и цифрами. Удобно сделать это на Ретроспективе. И вот к чему можно придти:
_MG_4930.png
_MG_4931.png
Одна команда, состоящая из большого количества любителей пива, решила сделать свой Burnup чарт, используя пивные наклейки. Каждый пивной бокал равнялся 3 S.P.
В другой команде много ребят занимались зимними видами спорта. Burndown напомнил им лыжную горку, которой спускается лыжник, минуя препятствия.
А бывает просто вот так:
img_01071.jpg
Практика 7. Никогда не стойте на месте и старайтесь разнообразить практики, пробуйте что-то новое. Начинайте, ошибайтесь и вновь пробуйте.
А как вы помогаете командам отслеживать прогресс к Целям? Делимся своим опытом в комментариях.

пятница, 15 августа 2014 г.

Дерево проблем


Bokovoe_zerkalo_zadnego_vida_1920x1080_OoboOi.ru.jpg

Зеркало заднего вида. Мы живем в запутанном мире, в котором очень тяжело что-либо предсказать. Будущее неясно и размыто. Скорость изменений очень возросла в последние десятилетия. Каждый день в запутанных системах агенты (люди) взаимодействуют между собой и результат этих взаимодействий непредсказуем. Меняются технологии, требования и люди. И лишь после того, как то или иное событие произошло, мы можем с помощью анализа дать ему рациональное объяснение. Мы словно пассажиры, сидящие в автомобиле - можем увидеть истинную природу вещей, лишь глядя в зеркало заднего вида.

Дерево проблем для Ретроспективы. В Скраме у нас есть специальная встреча, которая позволяет нам оглянуться назад (зеркало заднего вида) и провести анализ ошибок – Ретроспектива Спринта. Я предлагаю интересную активность, которая поможет вам исследовать проблемы, их причины и возможные последствия. Она называется «Дерево проблем». Итак, вот необходимые шаги для проведения активности:

  • По необходимости разбиваем людей на мелкие группы.
  • Раздаем каждой группе бумагу для флип-чартов и маркеры.
  • Каждая группа рисует дерево, где ствол – исследуемая проблема, корни – причины, а крона и плоды – возможные последствия.
  • Ограничиваем анализ по времени

problem_tree.png

После того, как время истекло, устраиваем дебриф. Мы можем попросить каждую команду представить свое дерево. Задаем вопросы:

  • Давайте посмотрим на причины. Какие причины часто повторяются?
  • Какие последствия часто повторяются на флип-чартах команд?
  • Были ли у вас моменты озарений, когда вы посмотрели на проблемы с другой стороны и нашли причину или последствие, о котором ранее не могли подумать?
  • Как бы вы сейчас определили проблему? Как ее можно назвать?
  • Какие могут быть дальнейшие шаги по устранению этой проблемы?

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

ScrumOn!

четверг, 14 августа 2014 г.

Путешествие по Кеневину, часть 2


В первой части мы обсудили теоретическую часть фреймворка, обмыли косточки экспертам и поговорили о типичных переходах из одного домена в другой. Во второй части, как мы и договаривались, расскажем про игру, демонстрирующую Кеневин и динамику переходов между доменами. Игра неоригинально называется «Путешествие по Кеневину» и для того, чтобы в нее поиграть нам понадобятся:
  1. Несколько наборов Командного Рисовальщика (по одному на каждую команду). Он представляет собой небольшую деревянную платформу с отверстием внутри, куда вставляется маркер и небольшими отверстиями на краях платформы, куда цепляются цветные шнурки.
  2. Люди – да, без них не обойтись. Рассчитываем по одному набору Командного Рисовальщика на команду. Каждая команда должна быть размером от 4 до 10 человек.
  3. Несколько чистых листов бумаги для флип-чартов.
  4. Достаточное пространство, поэтому заранее осматривайте помещение. Для комфортной игры на каждую команду понадобиться ~ 7-10 кв. м.
  5. Повязки на глаза.
  6. Если у вас остаются лишние игроки, которые не попадают в команды, то сделайте их наблюдателями за процессом, а после попросите поделиться своими наблюдениями.
_MG_4036.JPG
Играем. Перед началом игры попросите участников развернуть свой командный рисовальщик,  вставить маркер в отверстие посередине и сразу же отпустить нити. Важно, чтобы команды ничего не пробовали рисовать ДО. Это требуется для чистоты эксперимента.
  • Раунд 1: Попросите команды взять концы нитей в руки и дайте задание  нарисовать идеальную  окружность.
  • Раунд 2: Теперь просим нарисовать домик с окошком и ставнями, солнышко с лучами и рядом девочку, играющую с собачкой.
  • Раунд 3: Говорим командам о том, что игра значительно усложняется и теперь придется рисовать вслепую. Раздаем повязки на глаза. В этот момент они будут пытаться заранее договориться, как действовать. Ха-Ха, как же они наивны. Их ожидает серьезный удар. После того, как глаза завязаны, просим нарисовать идеального Скрам Мастера. При этом говорить запрещаем. Если у вас две команды или более, то для разнообразия можно одной команде разрешить общаться, чтобы потом сравнить их ощущения.
  • Раунд 4: Здесь можно еще раз помучать команды, и я оставляю право выбрать сценарий вам самим.
Fotor0813114043.png
После активной части игры просим всех сесть на свои места, и говорим о Кеневине. Примерно так, как мы это делали в первой части статьи. Затем просим команды рассказать о своих ощущениях, возвращаем их к трем (четырем) раундам игры «Путешествие по Кеневину»:
  • Что вы чувствовали?
  • К какому из доменов вы бы отнесли каждый раунд?
  • Почему?
  • Как изменилась динамика и что вы заметили?
Правильных ответов нет, все зависит от мироощущения. Будьте готовы к тому, что даже в одной команде не будет единодушия. И это ОК. Фиксируем переходы команд на флип-чарте и продолжаем беседовать о Кеневине. Вы можете заметить, например, что в одной из команд при погружении в Хаотический домен, появится автократичный лидер, который будет говорить всем, что делать. Одно могу точно гарантировать вам - будет нескучно.
Вы можете посмотреть короткое видео о том, как работает вживую «Путешествие по Кеневину», перейдя по ссылке.
Желаю вам удачной игры.
ScrumOn!

вторник, 12 августа 2014 г.

Путешествие по Кеневину, часть 1


О чем вы узнаете в этой статье. Статья получилась длинная, поэтому я решил разделить ее на две части. В первой мы рассмотрим недавно обновленный Кеневин Фреймворк. Это один из самых популярных на данный момент sense-making фреймворков, который помогает понять мир и происходящее в нем. Затем мы поговорим об экспертах и рассмотрим самые типичные передвижения по фреймворку. Во второй части статьи, которая выйдет позже, мы будем передвигаться по доменам Кеневина с помощью увлекательной командной игры “Путешествие по Кеневину”. Вас ожидают многочисленные фото и видео материалы, а также рисованные флип-чарты.
Кеневин Фреймворк. Мой коллега Сергей Дмитриев два года тому назад написал замечательный блог-пост о Кеневине. И в течение последних двух лет особо добавить было нечего, но совсем недавно создатель шотландец Дэйвид Сноуден обновил свою модель. Ко всему прочему, я хочу взглянуть на фреймворк под другим углом, добавить провокационные мысли знаменитого публициста и философа Нассима Талеба, а также модель Management 3.0 Юргена Апелло и рассмотреть наиболее частые переходы из домена в домен.

четверг, 7 августа 2014 г.

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


Не так давно я начал использовать в работе Кинетический Песок. Если вы о нем еще не слышали, то сейчас в Европе это одна из самых модных и популярных «игрушек». Это песок, с которым можно играть прямо… на рабочем месте. Прямо на вашем рабочем столе. И можно не опасаться, что его крупицы рассыплются, а вам потом придется долго наводить порядок. Это песок, который не сыпется, а ... течет. Настоятельно советую посмотреть короткое видео от компании производителя, а затем я объясню, зачем он может потребоваться на работе.


Связь между руками и мозгом. Канадский нейрохирург Уальдер Пенфильд разработал карту мозга человека, которую вы можете рассмотреть на картинке ниже. Обратите внимание на то, как связаны нервные окончания рук с мозгом человека. На пальцах наших рук находится огромное количество нервных окончаний, при активировании которых активно включаются и «загораются» различные части головного мозга.
0506.gif

Как мы знаем из работы палеонтологов, связи между рукой и головным мозгом занимают центральное место в развитии человека. Эти факты позволяют предположить, что наши руки является главным инструментом, с помощью которого мы накапливаем знания о мире. Мы эволюционировали, чтобы жить и осваивать трехмерное измерение, и наш мозг отражает это. Даже сейчас, когда вы читаете эти строки, ваш мозг «бегает» по строкам текста, пытаясь воспринять письмо как физический объект, потому что просто не знает другого способа понимания (Kristiansen, Per; Rasmussen, Robert, Building a Better Business Using the Lego Serious Play Method).
Таким образом, кинетический песок не просто детская игрушка, а полезный инструмент, который может помочь нашему мозгу высвободить и выплеснуть полезную креативную энергию. Кроме этого, он прекрасно успокаивает нервы, что было неоднократно проверено на собственном опыте. Я смонтировал короткий видео ролик, где показываю, как использую кинетический песок на тренингах Professional Scrum Master (PSM).




Инновация и креативность. Последнее время интернет настолько часто «жужжит» об инновации и креативности и настолько часто использует эти два слова, что ты перестаешь воспринимать их адекватно. Похоже на заезженный попсовый хит, который крутят каждый день и который быстро приедается. Давайте встряхнемся и вернем себя к истинному значению этих слов. Еще в середине 90-х годах Джек Мэтсон выпустил книгу «Инновация или смерть». Название книги стало пророческим. Скорость изменения мира и технологий стала крайне высокой. Способность креативно и творчески работать, рождать и воплощать инновационные идеи в бизнесе стало конкурентным преимуществом IT. Этот факт бесспорен.
Но организаций, которые имеют поистине инновационную культуру очень мало. Как обычно выглядят подобные организации? Что вы увидите, если зайдете в их офисы? Джек Мэтсон дает ответ на вопрос:
Стены и борды заполнены социальными активностями, картинками и граффити. Работники таких компаний находятся в приподнятом духе и часто останавливаются, чтобы поболтать друг с другом. Они счастливы здесь и наслаждаются своей работой. Атмосфера наполнена серьезной ИГРОЙ и структурированным ХАОСОМ (Matson, Jack, Innovate or Die!, 1996)
Уверен, что если бы в 1996 году уже был кинетический песок, то Джек обязательно упомянул бы его в своей книге. Дайте своим работникам возможность креативно мыслить и создавать инновации для вашего бизнеса. Для этого просто возвольте им играть прямо на рабочем месте. Мой совет – завтра же заказывайте целый самосвал кинетического песка в офис :)
Удачи вам, инновации, креативности, а также нескучной игры.
Scrum ON!

среда, 6 августа 2014 г.

Работаем, помогая друг другу. Собираем командный пазл.



Команда Разработки. У меня есть один волшебный флип-чарт, который я всегда демонстрирую командам разработки, когда мы начинаем говорить о Скраме и командной работе. Вот он:
_MG_2678.JPG
После того, как мы проходим по всем пунктам, я задаю вопрос: «Как вы думаете, что из перечисленного самое главное, без чего работа в Скраме просто невозможна?»  И получаю различные ответы. Обычно только с 3-5 попытки люди указывают на правильный, по моему мнению, ответ:

Помогает друг другу

Если отсутствует именно этот компонент, то все остальное просто теряет смысл и идет прахом. Давайте разберемся, почему?
Обязуется достичь Цели Спринта – каким образом делать это эффективно, если каждый работает сам по себе и не желает помогать своему товарищу, сидящему рядом? Кроссфункциональная –  она остается (если уже была таковой), но в случае определенных командных форс-мажоров (болезнь, отпуск, уход ценного специалиста из команды), никто не займет пустующее место, разве что из-под палки. Мы же не помогаем друг другу. 6 ± 3 человека – на самом деле, для такой команды все равно какое количество людей набрано. Ведь каждый сам за себя. Это волчья стая, а «с волками жить – по-волчьи выть». Самоорганизованная – возможно, но только если понимать под этим, что каждый организовывает свою собственную работу и не заботится о том, что происходит вокруг в команде. Но это не самоорганизация, а пародия на нее. Самоорганизованная команда отличается высоким моральным духом, сплоченностью, желанием делить радости и невзгоды вместе, креативностью и ответственностью. Это люди, которые смотрят в одну сторону. Владеет Беклогом Продукта – соблюдается чисто номинально. Часто для команды, не помогающей друг другу, это значит, что таски распределены на Спринт вперед еще на планировании и решено, кто и чем будет заниматься в течение Спринта. Вспомните математику и теорию очередей. Где быстрее проходят люди – там, где параллельно стоят несколько очередей к кассам или там, где очередь из людей одна, а к любой освобожденной кассе подходит следующий по очереди человек? Без помощи друг другу вероятность затыков и закупорок в изолированных очередях из задач велика как никогда. Придти же на помощь будет некому. 2-3 года вместе * (необязательное требование Скрама, поэтому помечено звездочкой на флип-чарте) – да хоть пять лет или полстолетия. Не имеет в этом случае никакого значения.
Co-located  * (необязательное требование Скрама, поэтому помечено звездочкой на флип-чарте) – смотрите на пункт выше.
Плоская структура. В Скрам командах нет титулов, кроме определенных Скрам Гайдом ролей (Скрам Мастер, Владелец Продукта, Команда Разработки). А куда же подевались тестировщики, бизнес аналитики, автоматизаторы, кодеры и так далее? Люди продолжают выполнять свои прежние функции, но с момента, как они погрузились в Скрам, они равны и каждый становится Разработчиком, частью Команды Разработки. Мы двигаемся исключительно ВМЕСТЕ к поставленным целям.
  • Кто отвечает за качество в Скрам команде? Команда Разработки.
  • Кто обязуется достичь Цели Спринта? Команда Разработки.
  • Кто ответственен за разработку фич? Команда Разработки.
avery head dress_quote.jpg
Собираем пазлы (Broken squares).  Очень полезная и интересная игра, которую я использую в своих командах для того, чтобы объяснить, почему так важно и необходимо работать вместе, помогая друг другу, когда мы двигаемся к общей цели.

_MG_3896.JPG

Игра рассчитана на 3-6 игроков. Цель игры – каждый участник должен собрать полный квадрат. Если хотя бы у одного члена команды квадрат не собран – цель не достигнута.
Правила игры:
  • Каждому участнику раздается свой набор из частей квадрата в зависимости от количества человек (3-6). На фотографии выше изображена схема того, как следует формировать комплекты для отдельных игроков. Разрезанные части квадрата выдаются в конвертах с А,B,C,D,E,F.
  • Команде дается 10 минут на то, чтобы каждому собрать по квадрату.
  • Разговаривать запрещено.
  • Забирать фрагменты нельзя, можно только отдавать.
Здесь можно скачать файл в формате Word и распечатать на цветной бумаге (каждой команде свой цвет). Останется только поработать ножницами и расфасовать фрагменты квадратов по отдельным конвертам (смотрите на фото ниже).
_MG_3897.JPG
Играем. Теперь самое интересное – ставим таймер и запускаем отсчет на 10 минут. Наслаждаемся процессом. Имеет смысл назначить одного-двух наблюдающих, которые будут ходить между столами и следить за процессом. В дальнейшем они смогут поделиться с нами своими наблюдениями. Вот несколько паттернов, которые мне приходилось наблюдать:
  • Несколько человек сразу собирают квадраты и расслабленно опускают руки. Работа выполнена! Только через несколько минут до них доходит, что они просто блокируют остальную команду. Приходит прозрение, и люди начинают лихорадочно помогать другим.
  • Игра доставляет настоящий Фан. Поэтому не удивляйтесь, что в помещении будет часто раздаваться смех.
  • Участники, особенно в случае почти исчерпанного времени, будут нарушать правила – показывать жестами кому и что отдавать и т.д. Не вмешивайтесь в процесс, следите лишь за тем, чтобы соблюдалось молчание и команда, все-таки, пришла за 10 минут к намеченной цели. Обычно это происходит на 7-9 минутах игры.

Fotor0805122023.jpg
Корткое видео процесса игры можно посмотреть здесь.
Разбор полетов. Самая главная часть игры, как ни странно, происходит после. Это дебриф или разбор полетов. Пытаемся «вытянуть» из процесса как можно больше, задавая открытые вопросы:
  • Что вы чувствовали во время игры?
  • Какие ваши наблюдения?
  • С какими препятствиями вы столкнулись?
  • Что могло бы вам помочь достичь цели быстрее?
  • Чем еще вы хотели бы поделиться?
Обычно участники говорят о том, что они блокировали всю команду и из-за этого потеряли много времени. Приходит понимание того, что сложно достичь Цели игры без помощи другим и наблюдением за тем, что нужно твоим товарищам. Также я часто слышу о том, что задача была бы решена намного быстрее, если бы все фрагменты были отданы вместе (общий Спринт Беклог). Играйте, обсуждайте и «вытягивайте» как можно больше из этой игры. Надеюсь, она поможет вам и вашей команде посмотреть на роль Команды Разработки с другой стороны. Желаю удачи!
P.S. Мы обязательно поиграем с вами в эту игру на тренинге Professional Scrum Master (PSM) в Нижнем Новгороде 11-12 сентября.
Scrum ON!