Эффективные ретроспективы

93
Эффективные ретроспективы: процесс непрерывного улучшения Вольфсон Борис

description

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

Transcript of Эффективные ретроспективы

Page 1: Эффективные ретроспективы

Эффективные ретроспективы: процесс непрерывного улучшения

Вольфсон Борис

Page 2: Эффективные ретроспективы

Технический директор

HeadHunter

Вольфсон Борис

Page 3: Эффективные ретроспективы

«Совершенствоваться не обязательно.

Выживание – дело добровольное»

Э. Деминг

Page 4: Эффективные ретроспективы

Содержание

• Теория

• Виды активностей на ретроспективах

– Открытие

– Сбор данных

– Проникновение в суть

– Принятие решение

– Закрытие

Page 5: Эффективные ретроспективы

Что такое ретроспектива?

• Что такое ретроспектива?

• Вы проводите ретроспективы?

– Что обсуждаете?

– Помогает совершенствованию процессов?

– Как часто проводите?

– Сколько длится?

Page 6: Эффективные ретроспективы

Определение

• Ретроспектива – процесс обсуждения работы с целью их улучшения результатов в будущем

Не хочешь пропустить со мной по пиву?

Не могу, я делаю список, в чем я могу усовершенствовать себя в следующем году

Не-плохая идея, сделаю тоже самое

Ничего.Совершенство достигнуто

Мда, вот это конструк-тивность.

Какая едкая зависть, тебе бы поработать над этим

Page 7: Эффективные ретроспективы

Postmortem в водопадных процессах

POSTMORTEM

Page 8: Эффективные ретроспективы

Типичные проблемы

Невозможность улучшить уже завершенный

проект

Низкая заинтересованность

участников

Формальность мероприятия

Page 9: Эффективные ретроспективы

Agile-манифест разработки программного обеспечения

Kent BeckMike Beedle

Arie van BennekumAlistair Cockburn

Ward CunninghamMartin Fowler

James GrenningJim HighsmithAndrew HuntRon Jeffries

Jon KernBrian Marick

Robert C. MartinSteve Mellor

Ken SchwaberJeff SutherlandDave Thomas

Мы постоянно открываем для себя более совершенные методы разработки программного обеспечения, занимаясь разработкой непосредственно и помогая в этом другим. Благодаря проделанной работе мы смогли осознать, что:

1. Люди и взаимодействие важнее процессов и инструментов2. Работающий продукт важнее исчерпывающей документации3. Сотрудничество с заказчиком важнее согласования условий контракта4. Готовность к изменениям важнее следования первоначальному плану

То есть, не отрицая важности того, что справа, мы всё-таки больше ценим то, что слева.

Page 10: Эффективные ретроспективы

Принципы Agile (1/2)

1. Наивысшим приоритетом для нас является удовлетворение потребностей заказчика, благодаря регулярной и ранней поставке ценного программного обеспечения.

2. Изменение требований приветствуется, даже на поздних стадиях разработки. Agile-процессы позволяют использовать изменения для обеспечения заказчику конкурентного преимущества.

3. Работающий продукт следует выпускать как можно чаще, с периодичностью от пары недель до пары месяцев.

4. На протяжении всего проекта разработчики и представители бизнеса должны ежедневно работать вместе.

5. Над проектом должны работать мотивированные профессионалы. Чтобы работа была сделана, создайте условия, обеспечьте поддержку и полностью доверьтесь им.

6. Непосредственное общение является наиболее практичным и эффективным способом обмена информацией как с самой командой, так и внутри команды.

Page 11: Эффективные ретроспективы

Принципы Agile (2/2)

7. Работающий продукт — основной показатель прогресса. 8. Инвесторы, разработчики и пользователи должны иметь

возможность поддерживать постоянный ритм бесконечно. Agile помогает наладить такой устойчивый процесс разработки.

9. Постоянное внимание к техническому совершенству и качеству проектирования повышает гибкость проекта.

10. Простота — искусство минимизации лишней работы — крайне необходима.

11. Самые лучшие требования, архитектурные и технические решения рождаются у самоорганизующихся команд.

12. Команда должна систематически анализировать возможные способы улучшения эффективности и соответственно корректировать стиль своей работы.

Page 12: Эффективные ретроспективы

Циклические ретроспективы

Page 13: Эффективные ретроспективы

Ретроспектива в Scrum

Page 14: Эффективные ретроспективы

Ретроспектива в Kanban

1. Визуализация потока

2. Ограничение кол-ва задач в работе

3. Управление потоком

4. Явные правила

5. Циклы обратной связи

6. Коллективные улучшения через эксперименты

Page 15: Эффективные ретроспективы

Ретроспектива in the long run

Время

Эф

фек

тивн

ост

ь

Плато эффективности

Page 16: Эффективные ретроспективы

Рост эффективности

•Быстрый рост

•Решение проблем и устранение боли

Плато эффективности

•Нет проблем

•Нет роста

Гиперэффективность

•Медленный ступенчатый рост

•Использование возможностей

•Эксперименты

Ретроспектива in the long run

Page 17: Эффективные ретроспективы

Что обсуждать, если «проблем нет»

Скорость команды и ее

изменение

Нереализованные истории

пользователей

Дефекты и их причины

Качество процессов

Социальную атмосферу

Page 18: Эффективные ретроспективы

Цикл Деминга-Шухарта

Plan

Do

Check

Act

Page 19: Эффективные ретроспективы

A3 шаблон

Page 20: Эффективные ретроспективы

Ретроспектива ретроспектив

Page 22: Эффективные ретроспективы

Главное правило ретроспективы

В независимости от того, что удастся выяснить в результате ретроспективы,

каждый член команды сделал всё, чтобы добиться успеха

Page 23: Эффективные ретроспективы

Звать ли начальника/заказчика?

Page 24: Эффективные ретроспективы

Структура ретроспективы

Открытие – 5%

Сбор данных – 30%-50%

Проникновение в суть – 20%-30%

Принятие решение – 10%

Закрытие – 5%-10%

Page 25: Эффективные ретроспективы

Длительность

• Обычно ретроспектива занимает от 30 минут до 4 часов и ее продолжительность зависит от следующих факторов:

– Длина спринта

– Размер команды

– Наличие проблем

Page 26: Эффективные ретроспективы

Зачем взрослым играть?

Позитивность Вовлеченность

Креативность

Page 27: Эффективные ретроспективы

Имитация улучшений

Page 28: Эффективные ретроспективы

АКТИВНОСТИ ДЛЯ ОТКРЫТИЯ

Page 29: Эффективные ретроспективы

Можно использовать айсбрекеры

Page 30: Эффективные ретроспективы

Визуальный телефон

http://www.funretrospectives.com/visual-phone/

Оригинальное предложение Рисунок Восстановленное предложение

Page 31: Эффективные ретроспективы

Пунктуальный Павел

http://www.funretrospectives.com/punctual-paulo/

Page 32: Эффективные ретроспективы

ESVP: как проводить?

• Цели– Сфокусировать команду на ретроспективе– Понять отношение каждого члена команды к

ретроспективе

Каждый член команды определяет к какой роли на ретроспективе он себя относит:1. Explorer – исследователь2. Shopper – покупатель 3. Vacationers - отпускники4. Prisoner – узники

(с) Алексей Пикулев

Page 33: Эффективные ретроспективы

ESVP

http://www.funretrospectives.com/esvp-explorer-shopper-vacationer-prisoner/

Page 34: Эффективные ретроспективы

Check In: как проводить?

• Цели– Сфокусировать команду на ретроспективе– Услышать каждого члена команды

Каждый член команды отвечает одним или двумя словами на вопрос скрам-мастера:1. Опиши своё состояние одним словом?2. Какие твои ожидания от ретро?

Можно использовать и другие вопросы, например, с метафорами:«Какой машиной ты себя ощущаешь на ретро?»

Page 35: Эффективные ретроспективы

Safety Check

http://www.funretrospectives.com/safety-check/

Page 36: Эффективные ретроспективы

Happiness radar

http://www.funretrospectives.com/happiness-radar/

Page 37: Эффективные ретроспективы

Happiness radar

http://www.funretrospectives.com/happiness-radar-3-ls-dot-voting/

Page 38: Эффективные ретроспективы

АКТИВНОСТИ ДЛЯ СБОРА ДАННЫХ

Page 39: Эффективные ретроспективы

Hot-air Balloon

http://www.funretrospectives.com/hot-air-balloon/

Page 40: Эффективные ретроспективы

Speed Car

http://www.funretrospectives.com/speed-car/

Page 41: Эффективные ретроспективы

Speedboat

© Mikhail Podurets

Page 42: Эффективные ретроспективы

Worked well, kinda Worked, didn’t Work

http://www.funretrospectives.com/www-activity-worked-well-kinda-worked-didnt-work/

Page 43: Эффективные ретроспективы

KALM – Keep, Add, More, Less

http://www.funretrospectives.com/kalm-keep-add-more-less/

Page 44: Эффективные ретроспективы

Open the box

http://www.funretrospectives.com/open-the-box/

Page 45: Эффективные ретроспективы

Open the box

http://www.funretrospectives.com/open-the-box/

Page 46: Эффективные ретроспективы

Future direction, Lessons learned, Accomplishments and Problem areas

http://www.funretrospectives.com/flap-activity-future-direction-lessons-learned-accomplishments-and-problem-areas/

Page 47: Эффективные ретроспективы

Starfish

http://www.funretrospectives.com/starfish/

Page 48: Эффективные ретроспективы

Small starfish

http://www.funretrospectives.com/small-starfish/

Page 49: Эффективные ретроспективы

Timeline

Page 50: Эффективные ретроспективы

Timeline: цели

• Стимулировать воспоминания о прошедшем

• Создать «картинку» с нескольких перспектив

• Получить факты и/или ощущения участников

Page 51: Эффективные ретроспективы

Как проводить

Page 52: Эффективные ретроспективы
Page 53: Эффективные ретроспективы

The story of a Story

Page 54: Эффективные ретроспективы

Team Radar: цели

• Измерение того, насколько команда удовлетворена по различным аспектам работы

Page 55: Эффективные ретроспективы

Team Radar: как проводить?

Page 56: Эффективные ретроспективы

Lessons learned quadrants

http://www.funretrospectives.com/lessons-learned-quadrants-planning-vs-success/

Page 57: Эффективные ретроспективы

Lessons learned quadrants

http://www.funretrospectives.com/lessons-learned-quadrants-planning-vs-success/

Page 58: Эффективные ретроспективы

АКТИВНОСТИ ДЛЯ ПРОНИКНОВЕНИЯ В СУТЬ

Page 59: Эффективные ретроспективы

Hot-air Balloon -> Bad Weather

http://www.funretrospectives.com/hot-air-balloon-bad-weather/

Page 60: Эффективные ретроспективы

Speed Car – Abyss

http://www.funretrospectives.com/speed-car-abyss/

Page 61: Эффективные ретроспективы

Brainstorming/Filtering

• Цель – сгенерировать большое кол-во идей

• Проводим мозговой штурм

– Free-for-all

– Round-robin

– С подготовкой

• Создаем фильтры для идей

• Пропускаем идея через фильтры

Page 62: Эффективные ретроспективы

Value Stream Mapping

Page 63: Эффективные ретроспективы

Value Stream Mapping

Page 64: Эффективные ретроспективы

Пять «почему»

Why?!

Page 65: Эффективные ретроспективы

Пять почему

• Цель – быстро понять глубинные причины

• Делимся на небольшие группы 2-4 человека

• По каждой проблеме спрашиваем пять раз «почему»

• По каждому уровню выбираем решение

Page 66: Эффективные ретроспективы

Пять «почему»: пример

Симптом Действие

На сайте выдается сообщение об ошибке подключения к БД

• Проверить все ли в порядке с БД

В конфиге прописана тестовая БД

• Добавить в стандарт деплойментапроверку конфигов

• Проверять работоспособность сайта после выноса

• Сделать автоматические smoke-тесты

Разработчик забыл поменять конфиг при выносе

• Проинструктировать разработчиков по порядку выноса сайтов

Недостаточная внимательность

• Заменить ручную смену конфига на автоматическое определение окружения и выставления соответствующей БД

Page 67: Эффективные ретроспективы

Root Cause Analysis

http://www.crisp.se/henrik.kniberg/cause-effect-diagrams.pdf

Page 68: Эффективные ретроспективы

Дерево дефектов

Page 69: Эффективные ретроспективы

Контрольные карты Шухарта

Page 70: Эффективные ретроспективы

Диаграмма Исикавы

Page 71: Эффективные ретроспективы
Page 72: Эффективные ретроспективы
Page 73: Эффективные ретроспективы

АКТИВНОСТИ ДЛЯ ПРИНЯТИЯ РЕШЕНИЙ

Page 74: Эффективные ретроспективы

SMART

Буква Английский термин Русский термин

S Specific Точные и конкретные

M Measurable Измеримые

A Achievable Достижимые

R Relevant Релевантные

T Time bound/framed Цели со сроком

Page 75: Эффективные ретроспективы

Plus Minus Voting

http://www.funretrospectives.com/plus-minus-voting/

Page 76: Эффективные ретроспективы

Голосование точками

http://www.funretrospectives.com/dot-voting/

Page 77: Эффективные ретроспективы

© Alex Troshin

Page 78: Эффективные ретроспективы

АКТИВНОСТИ ДЛЯ ЗАКРЫТИЯ

Page 79: Эффективные ретроспективы

Цветной фидбек

http://www.funretrospectives.com/qcon-quick-feedback-on-talks/

Page 80: Эффективные ретроспективы

Learning Scale

http://www.funretrospectives.com/learning-scale/

Page 81: Эффективные ретроспективы

Who-What-When

http://www.funretrospectives.com/the-who-what-when-steps-to-action/

Page 82: Эффективные ретроспективы

Feedback and ROI

http://www.funretrospectives.com/feedback-and-roi/

Page 83: Эффективные ретроспективы

+/Delta

Page 84: Эффективные ретроспективы

Благодарности

• Цель – поблагодарить участников и закончить на позитивной ноте ретро

• Члены команды выбирают кого поблагодарить за что-то очень конкретное

• «Я хочу поблагодарить _________ за ___________»

Page 85: Эффективные ретроспективы

ЗАВЕРШЕНИЕ

Page 86: Эффективные ретроспективы

Структура ретроспективы

Открытие – 5%

Сбор данных – 30%-50%

Проникновение в суть – 20%-30%

Принятие решение – 10%

Закрытие – 5%-10%

Page 87: Эффективные ретроспективы

Как испортить ретроспективу?

1. Не подготавливаться2. Не фокусироваться3. Не собирать данные4. Один или два человека доминируют на ретроспективе5. Фокусироваться на обстоятельствах вне возможностей

команды6. Откусывать больше, чем команда может прожевать7. Выбирать действия, для которых у команды

недостаточно энергии8. Держать план улучшений отдельно от беклога

Page 88: Эффективные ретроспективы

Что почитать?

Page 89: Эффективные ретроспективы

http://www.piter.com/collection/kariera-v-it-industrii/product/gibkoe-upravlenie-proektami-i-produktami

Page 90: Эффективные ретроспективы

Что почитать в Интернете?

• http://agileretrospectivewiki.org/

• http://www.funretrospectives.com/

• http://blog.falkayn.com/2008/11/my-first-agile-retrospective.html

• http://www.estherderby.com/2010/06/eight-reasons-retrospectives-fail-and-what-you-can-do-about-them.html

Page 91: Эффективные ретроспективы

Интересные презентации по ретроспективам

• Правила хорошей ретроспективы или ключ к непрерывным улучшениям -http://www.slideshare.net/VLDCORP/ss-29004309

• Первое правило распределенных самоорганизующихся систем -http://www.slideshare.net/tim.com.ua/agilebasecamp-15-2014

Page 92: Эффективные ретроспективы

Генератор планов ретроспектив

www.plans-for-retrospectives.com

Retr-O-Mat contains 44 activities, allowing for 36867 combinations (9x8x8x8x8+3) and I'm

constantly adding more.

Page 93: Эффективные ретроспективы