Scrum Master (курс) : Лекция 4
Contents
[hide]Цель лекции
Понять важность эмпирической природы Scrum и как именно Scrum мастер должен ей соотвествовать.
Вводная к лекции вопрос #4 первого теста по курсу, необходимость идентификации спринта как эксперимента.
Тезисы
Эмперицизм
Эмперический подход состоит в том, что высказывается гипотеза (предположение), к ней определяется ожидаемый результат и ставится эксперимент по проверке гипотезы. Гипотезы, подтвержденные экспериментом - единственный достоверный источник знаний и основа для принятия решений в Scrum.
Основы скрам сущесвуют исключительно для поддержки его эмпирической природы:
- Инспекция необходима для того, чтобы гипотезу можно было проверять
- Прозрачность необходима потому что от каждого участника эксперимента требуется понимание целей, мы не можем выдать инструкции заранее (у нас нет пока еще проверенных знаний), а значит каждый участник должен прилагать усилия к наилучшему достижению целей эксперимента.
- Поскольку сам по себе процесс тоже не может быть установлен как "единственно верный", он тоже будет меняться под воздействием знаний, полученных в экспериментах.
В этом отличие Scrum от традиционных методов разработки.
Традиционные методы разработки исходили из того, что можно построить исчерпывающий список (т.н. "требования"), четкое соблюдение которого гарантирует успех проекта.
Измерение как проверка эксперимента
Для возможности проверки гипотезы необходимо соблюдение двух условий (кстати тех же самых, что предъявлились с требованиям в старых методах)
- Характеристика должна быть наблюдаемой
- Характеристика должна быть измеримой
Наблюдаемой означает что у нас должны быть средства провести измерение. Это не только "в принципе возможно" (например совсем никак нельзя читать мысли), это должно быть и "нам доступно" (например глупо ожидать что в нашем распоряжении будет масс-спектрометр или электронный микроскоп).
Измеримой означает что у нас должна быть возможность зарегестировать и сравнить (хотя бы на совпадает/не совпадает) результат наблюдения. Измерения не обязательно должны быть численными, это могут быть и да/нет, вкусно/не вкусно. Важна только возможность записи и сравнения.
По способу получения измерения могут быть
Объективными - т.е. такими, которые может провести любой человек, в любое время и при помощи установленной процедуры.
Субъективными - т.е. такими, в которых мы используем человека в качестве инструмента для измерения.
Самое важное для нас отличие что для субъективных измерений требуется привлечение человека, которые не всегда может быть доступен и не всегда может быть заинтересован в использовании его как инструмент для измерения. Поэтому перед нами еще стоит задача замотивировать субъекта (чего не надо делать, скажем, для линейки).
В случае Scrum измерения, проводимые в рамках review являются субъективными - мы используем заказчика в качестве способа измерения верности нашей гипотезы.
Отсюда исключительная важность releasable increment.
Если нет increment (улучшения, новой или большей ценности) - заказчик плохо привлекается для измерения.
Если нет releasable (улучшением нельзя воспользоваться немедленно если захочется) - заказчик плохо привлекается для измерения.
Замечание - при выставлении численных критерирев надо быть осторожными, особенно если они связаны с вознаграждением. Хотим мы этого или нет, но как только дело начинает касаться денег - то целью немедленно становится подгонка работы под оптимальные численные измерения, а цель ради которой эти измерения нужны немедленно забывается.
Эмперицизм как единственный критерий верности реализации Scrum
Весь Scrum guide можно было ограничить одним предложением - Scrum - это метод организации процессов (framework) основанный на эмпирическом подходе. Все остальное служит исключительно для того, чтобы облегчить реализацию Scrum.
Важно. Основы и ценности подобранны так, что при их соблюдении и демонстарции создаются все необходимые предпосылки для реализации эмпирического подхода. Это НЕ гарантирует что такой подход действительно имеет место. Это всего лишь говорить что при их наличии ничего не должно серьезно мешать реализации такого подхода.
Т.е. это инструменты которые облегчают Scrum-мастеру внедрение Scrum.
- По ценностям проще оценивать и корректировать поведение каждого отдельного участника.
- Поддерживая основы Scrum проще обеспечивать условия для реализации эмпирического подхода.
Но все это вполне можно соблюсти формально, так что окончательной проверкой является только то, что работа ведется именно эмпирическим путем.
Scrum-мастер и эмпирицизм
Алгоритм реализации эмпирического подхода:
- Высказать гипотезу что определенный действия/изменения приведут к достижению ценности. Ценность должна быть четко привязана к бизнес потребностям заказчика, компании, команды.
- Определить что конкретно мы будем измерять, каким образом и какого результата ожидаем
- Определить шаги которые требуются для проверки гипотезы (спланировать эксперимент)
- Провести эксперимент
- Проверить гипотезу по результатам экспериментах
- На основе полученных результатов принять решение.
- Повторить :-)
Обязанность Scrum-мастера:
- применять эмпирический подход самому;
- использовать наличие эмпирического метода как "финальный и окончательный" критерий верности применения Scrum;
- способствовать чтобы все процессы в команде и компании шли с применением эмпирического подхода.
По сути текущие домашние задания для двух предыдущих лекций - это формулирование гипотезы «что можно изменить в моей команде чтобы она стала лучше». Дальнейшая работа будет состоять в планировании и проведении эксперимента.
ДЗ
Используя знание об эмпирической природе скрам и используя первые два шага эмпирического процесса выше - обоснуйте наличие и важность timebox в Scrum.