SlideShare a Scribd company logo
1 of 22
it-ip.ru | Интеллект-Партнёр | 2015
День первый
Каскадная модель
it-ip.ru | Интеллект-Партнёр | 2015
Проектирование
Разработка
Анализ
требований
Тестирование
Ввод в
эксплуатацию
Сопровождение
Так
запроектировали
Мы заказывали
маяк!!!!
А лампа зачем?
it-ip.ru | Интеллект-Партнёр | 2015
Итерационная модель
Проектирование
Разработка
Анализ
требований
Тестирование
Проектирование
Разработка
Анализ
требований
Тестирование
Проектирование
Разработка
Анализ
требований
Тестирование
Развертывание Развертывание
ЭксплуатацияА почему так
долго??? Согласовывал
и платформу
Часто менялись
требования
Специалист
был в
отпуске
С# or
Java?
Подбирали
цвет
it-ip.ru | Интеллект-Партнёр | 2015
Code-and-fix
it-ip.ru | Интеллект-Партнёр | 2015
it-ip.ru | Интеллект-Партнёр | 2015
Роли
Хватит за
мной
ходить!!!
Идите все
сюда!!!
Team
Product
owner
Scrum
master
Кто все эти люди?
Самоорганизовывается;
Самоуправляется.
Несет ответственность;
Мотивирует команду;
Знает стратегию.
Создает
атмосферу;
Проводит Stand-Up;
Следит за SCRUM.
it-ip.ru | Интеллект-Партнёр | 2015
Цель – самоорганизация
Это моя задача Это наш проект
it-ip.ru | Интеллект-Партнёр | 2015
TaskBoard
it-ip.ru | Интеллект-Партнёр | 2015
День второй
it-ip.ru | Интеллект-Партнёр | 2015
Product Backlog
И так, хочу…
it-ip.ru | Интеллект-Партнёр | 2015
Priority
Release
Next releases
Sprint
it-ip.ru | Интеллект-Партнёр | 2015
User story
«Будучи пользователем <тип_пользователя> я хочу
сделать <действие>, чтобы получить <результат>»
 Важность
 Трудозатраты
it-ip.ru | Интеллект-Партнёр | 2015
Story points
it-ip.ru | Интеллект-Партнёр | 2015
Story points
it-ip.ru | Интеллект-Партнёр | 2015
Sprint Planning
Цель1: Определить цель спринта (Sprint Goal) и Sprint Backlog -
функциональность, которая будет разработана в течение следующего
спринта для достижения цели спринта. Т.е. какие User Story будут
реализованы.
Цель2: определить, как именно будет разрабатываться определенная
функциональность для того, чтобы достичь цели спринта. Для каждого
элемента Sprint Backlog определяется список задач и оценивается их
продолжительность.
It-ip.ru | Интеллект-Партнёр | 2015
День третий
it-ip.ru | Интеллект-Партнёр | 2015
Sprint
2-4 weeks
it-ip.ru | Интеллект-Партнёр | 2015
Stand-Up
 Что я сделал сегодня
 Что я планирую
сделать завтра
 Какие были проблемы
it-ip.ru | Интеллект-Партнёр | 2015
BurnDown
2 points
Demo или sprint review
 Команда демонстрирует
прирост функциональности
продукта всем
заинтересованным лицам
 Привлекается максимальное
количество зрителей
 Нельзя демонстрировать
незавершенную
функциональность
it-ip.ru | Интеллект-Партнёр | 2015
it-ip.ru | Интеллект-Партнёр | 2015
Ретроспектива
Улучшение не продукта, а процесса:
1. Выполнили ли мы цель спринта?
2. Выполнены ли все задачи из Sprint
Backlog?
3. Какие у нас были выявлены проблемы?
4. Что было хорошего?
5. Что было плохого?
6. Что можно улучшить?
7. Что изменилось с прошлой
ретроспективы?
Спасибо
за внимание!
Вопросы?
телефон
+7(343) 266-29-00
cайт
it-ip.ru
it-ip.ru | Интеллект-Партнёр | 2015

More Related Content

Viewers also liked

рогальская совместное владение концептом продукта. изменения со скоростью б...
рогальская   совместное владение концептом продукта. изменения со скоростью б...рогальская   совместное владение концептом продукта. изменения со скоростью б...
рогальская совместное владение концептом продукта. изменения со скоростью б...Magneta AI
 
Scrum в заказной разработке
Scrum в заказной разработкеScrum в заказной разработке
Scrum в заказной разработкеAskhat Urazbaev
 
решение основной проблемы Agile (scrum) проектов в контексте ba
решение основной проблемы Agile (scrum) проектов в контексте baрешение основной проблемы Agile (scrum) проектов в контексте ba
решение основной проблемы Agile (scrum) проектов в контексте baISsoft
 
Rugby, Scrum и командная работа
Rugby, Scrum и командная работаRugby, Scrum и командная работа
Rugby, Scrum и командная работаNikita Filippov
 
3 кейса провала и успеха внедрения Agile
3 кейса провала и успеха внедрения Agile3 кейса провала и успеха внедрения Agile
3 кейса провала и успеха внедрения AgileAskhat Urazbaev
 
The Zen of Scrum - Russian
The Zen of Scrum - RussianThe Zen of Scrum - Russian
The Zen of Scrum - RussianJurgen Appelo
 

Viewers also liked (6)

рогальская совместное владение концептом продукта. изменения со скоростью б...
рогальская   совместное владение концептом продукта. изменения со скоростью б...рогальская   совместное владение концептом продукта. изменения со скоростью б...
рогальская совместное владение концептом продукта. изменения со скоростью б...
 
Scrum в заказной разработке
Scrum в заказной разработкеScrum в заказной разработке
Scrum в заказной разработке
 
решение основной проблемы Agile (scrum) проектов в контексте ba
решение основной проблемы Agile (scrum) проектов в контексте baрешение основной проблемы Agile (scrum) проектов в контексте ba
решение основной проблемы Agile (scrum) проектов в контексте ba
 
Rugby, Scrum и командная работа
Rugby, Scrum и командная работаRugby, Scrum и командная работа
Rugby, Scrum и командная работа
 
3 кейса провала и успеха внедрения Agile
3 кейса провала и успеха внедрения Agile3 кейса провала и успеха внедрения Agile
3 кейса провала и успеха внедрения Agile
 
The Zen of Scrum - Russian
The Zen of Scrum - RussianThe Zen of Scrum - Russian
The Zen of Scrum - Russian
 

Similar to Вводный курс по SCRUM

Styled-components. Что? Когда? И зачем?
Styled-components. Что? Когда? И зачем?Styled-components. Что? Когда? И зачем?
Styled-components. Что? Когда? И зачем?Vitebsk Miniq
 
Software testing in practice
Software testing in practiceSoftware testing in practice
Software testing in practicenikolay_vasiliev
 
Автоматизация тестирования встроенного ПО
Автоматизация тестирования встроенного ПОАвтоматизация тестирования встроенного ПО
Автоматизация тестирования встроенного ПОSQALab
 
Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17Igor Khrol
 
Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?SQALab
 
Lviv PMDay 2016 S Євгеній Антонов та Юрій Велигорський: Як вести розробку за ...
Lviv PMDay 2016 S Євгеній Антонов та Юрій Велигорський: Як вести розробку за ...Lviv PMDay 2016 S Євгеній Антонов та Юрій Велигорський: Як вести розробку за ...
Lviv PMDay 2016 S Євгеній Антонов та Юрій Велигорський: Як вести розробку за ...Lviv Startup Club
 
Методы управления проектами с коротким циклом - Agile от практиков_InnoTrain_...
Методы управления проектами с коротким циклом - Agile от практиков_InnoTrain_...Методы управления проектами с коротким циклом - Agile от практиков_InnoTrain_...
Методы управления проектами с коротким циклом - Agile от практиков_InnoTrain_...Анастасия Виноградова
 
Почему у нас менеджеры прототипируют GUI?
Почему у нас менеджеры прототипируют GUI?Почему у нас менеджеры прототипируют GUI?
Почему у нас менеджеры прототипируют GUI?Rustem Gayfutdinov
 
Почему у нас менеджеры прототипируют GUI? Рустем Гайфутдинов
Почему у нас менеджеры прототипируют GUI?  Рустем ГайфутдиновПочему у нас менеджеры прототипируют GUI?  Рустем Гайфутдинов
Почему у нас менеджеры прототипируют GUI? Рустем ГайфутдиновAlexander Baikin
 
Scrum и kanban опыт не-применения
Scrum и kanban  опыт не-примененияScrum и kanban  опыт не-применения
Scrum и kanban опыт не-примененияitconnect2016
 
Tech Talks @NSU: Что есть QA и как в него попасть
Tech Talks @NSU: Что есть QA и как в него попастьTech Talks @NSU: Что есть QA и как в него попасть
Tech Talks @NSU: Что есть QA и как в него попастьTech Talks @NSU
 
Обзор процесса разработки ПО
Обзор процесса разработки ПООбзор процесса разработки ПО
Обзор процесса разработки ПОInfoTeCS
 
Management of projects
Management of projectsManagement of projects
Management of projectsMageCloud
 
Гибкое прототипирование для гибкой разработки (Максим Гапонов)
Гибкое прототипирование для гибкой разработки (Максим Гапонов)Гибкое прототипирование для гибкой разработки (Максим Гапонов)
Гибкое прототипирование для гибкой разработки (Максим Гапонов)Ontico
 
Доски проектов и продуктов на TFS: Agile-визуализация на уровне компании
Доски проектов и продуктов на TFS: Agile-визуализация на уровне компанииДоски проектов и продуктов на TFS: Agile-визуализация на уровне компании
Доски проектов и продуктов на TFS: Agile-визуализация на уровне компанииSergey Rogachev
 
РИТ: Клиентские технологии 2008: Case Study: Проектирование делового портала ...
РИТ: Клиентские технологии 2008: Case Study: Проектирование делового портала ...РИТ: Клиентские технологии 2008: Case Study: Проектирование делового портала ...
РИТ: Клиентские технологии 2008: Case Study: Проектирование делового портала ...Yury Vetrov
 
WordPress Open Source Ecosystem & Tide, WordCamp Saint Petersburg 2018
WordPress Open Source Ecosystem & Tide, WordCamp Saint Petersburg 2018WordPress Open Source Ecosystem & Tide, WordCamp Saint Petersburg 2018
WordPress Open Source Ecosystem & Tide, WordCamp Saint Petersburg 2018Sergey Biryukov
 
Екатерина Иванова, Евгений Джамалов. Разработка прототипа по Agile в условиях...
Екатерина Иванова, Евгений Джамалов. Разработка прототипа по Agile в условиях...Екатерина Иванова, Евгений Джамалов. Разработка прототипа по Agile в условиях...
Екатерина Иванова, Евгений Джамалов. Разработка прототипа по Agile в условиях...ScrumTrek
 

Similar to Вводный курс по SCRUM (20)

Styled-components. Что? Когда? И зачем?
Styled-components. Что? Когда? И зачем?Styled-components. Что? Когда? И зачем?
Styled-components. Что? Когда? И зачем?
 
Pretotyping
PretotypingPretotyping
Pretotyping
 
Software testing in practice
Software testing in practiceSoftware testing in practice
Software testing in practice
 
Автоматизация тестирования встроенного ПО
Автоматизация тестирования встроенного ПОАвтоматизация тестирования встроенного ПО
Автоматизация тестирования встроенного ПО
 
Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17
 
Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?
 
Lviv PMDay 2016 S Євгеній Антонов та Юрій Велигорський: Як вести розробку за ...
Lviv PMDay 2016 S Євгеній Антонов та Юрій Велигорський: Як вести розробку за ...Lviv PMDay 2016 S Євгеній Антонов та Юрій Велигорський: Як вести розробку за ...
Lviv PMDay 2016 S Євгеній Антонов та Юрій Велигорський: Як вести розробку за ...
 
Методы управления проектами с коротким циклом - Agile от практиков_InnoTrain_...
Методы управления проектами с коротким циклом - Agile от практиков_InnoTrain_...Методы управления проектами с коротким циклом - Agile от практиков_InnoTrain_...
Методы управления проектами с коротким циклом - Agile от практиков_InnoTrain_...
 
Почему у нас менеджеры прототипируют GUI?
Почему у нас менеджеры прототипируют GUI?Почему у нас менеджеры прототипируют GUI?
Почему у нас менеджеры прототипируют GUI?
 
Почему у нас менеджеры прототипируют GUI? Рустем Гайфутдинов
Почему у нас менеджеры прототипируют GUI?  Рустем ГайфутдиновПочему у нас менеджеры прототипируют GUI?  Рустем Гайфутдинов
Почему у нас менеджеры прототипируют GUI? Рустем Гайфутдинов
 
Scrum и kanban опыт не-применения
Scrum и kanban  опыт не-примененияScrum и kanban  опыт не-применения
Scrum и kanban опыт не-применения
 
Tech Talks @NSU: Что есть QA и как в него попасть
Tech Talks @NSU: Что есть QA и как в него попастьTech Talks @NSU: Что есть QA и как в него попасть
Tech Talks @NSU: Что есть QA и как в него попасть
 
Обзор процесса разработки ПО
Обзор процесса разработки ПООбзор процесса разработки ПО
Обзор процесса разработки ПО
 
Management of projects
Management of projectsManagement of projects
Management of projects
 
Agile
AgileAgile
Agile
 
Гибкое прототипирование для гибкой разработки (Максим Гапонов)
Гибкое прототипирование для гибкой разработки (Максим Гапонов)Гибкое прототипирование для гибкой разработки (Максим Гапонов)
Гибкое прототипирование для гибкой разработки (Максим Гапонов)
 
Доски проектов и продуктов на TFS: Agile-визуализация на уровне компании
Доски проектов и продуктов на TFS: Agile-визуализация на уровне компанииДоски проектов и продуктов на TFS: Agile-визуализация на уровне компании
Доски проектов и продуктов на TFS: Agile-визуализация на уровне компании
 
РИТ: Клиентские технологии 2008: Case Study: Проектирование делового портала ...
РИТ: Клиентские технологии 2008: Case Study: Проектирование делового портала ...РИТ: Клиентские технологии 2008: Case Study: Проектирование делового портала ...
РИТ: Клиентские технологии 2008: Case Study: Проектирование делового портала ...
 
WordPress Open Source Ecosystem & Tide, WordCamp Saint Petersburg 2018
WordPress Open Source Ecosystem & Tide, WordCamp Saint Petersburg 2018WordPress Open Source Ecosystem & Tide, WordCamp Saint Petersburg 2018
WordPress Open Source Ecosystem & Tide, WordCamp Saint Petersburg 2018
 
Екатерина Иванова, Евгений Джамалов. Разработка прототипа по Agile в условиях...
Екатерина Иванова, Евгений Джамалов. Разработка прототипа по Agile в условиях...Екатерина Иванова, Евгений Джамалов. Разработка прототипа по Agile в условиях...
Екатерина Иванова, Евгений Джамалов. Разработка прототипа по Agile в условиях...
 

Вводный курс по SCRUM

Editor's Notes

  1. Каскадная модель жизненного цикла («модель водопада», англ. waterfall model) была предложена в 1970 г. Уинстоном Ройсом. Она предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе. Требования, определенные на стадии формирования требований, строго документируются в виде технического задания и фиксируются на все время разработки проекта. Каждая стадия завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков. Традиционно состоит из этапов (читаю с экрана) В настоящее время используется в некоторых Государственных структурах из-за формализма, тщательного документирования и возможности безболезненно поменять подрядчика. Click Но у этой модели есть существенный недостаток, если на любом из этапов произойдет отклонение от требуемого функционала, то это будет выявлено только на этапе сопровождения.
  2. При программировании, например, может обнаружиться, что реализация некоторой функции очень громоздка, неэффективна и вступает в противоречие с требуемой от системы производительностью. В этом случае требуется перепроектирование, а может быть, и переделка спецификаций. Потребность в перепроектировании возникает регулярно на любом этапе жизненного цикла как из-за допущенных на предыдущих шагах ошибок и неточностей, так и из-за изменений внешних требований к условиям эксплуатации системы. Процесс итеративной (или инкрементальной) разработки стал эволюционным развитием модели водопада. Процесс состоит из серии повторяющихся итераций, каждая из которых фактически является полноценным мини-проектом с фазами определения требований, анализа, дизайна и т.д. В результате очередной итерации продукт приобретает новую функциональность или улучшения в существующей функциональности. Итеративная модель используется во многих фреймворках разработки, включая OMU (Oracle Unified Method), RUP (Rational Unified Process) компании IBM и MSF (Microsoft Solutions Framework). Это тяжеловесные Enterprise-стандарты, которые включают десятки ролей, множество различных процессов, документов, спецификаций, моделей. Click именно в противовес этой модели были созданы гибкие модели разработки (Agile) или модели быстрой разработки (RAD - rapid application development).
  3. Click Однако необдуманная погоня за скоростью и гибкостью может создать серьезные проблемы. Используя Code-and-Fix, мы только пишем код. Здесь все очень просто: нет необходимости что-либо планировать, нет необходимости что-либо документировать. Как показал опыт, такой подход очень скоро приводит к коду, который невозможно поддерживать: исправление одной ошибки приводит к появлению нескольких новых; внесение минимальных изменений в одну из частей программы, приводит к разрушению функций, реализуемых другими частями.
  4. Scrum (Скрам) — это не аббревиатура, этот термин взят из регби, который обозначает схватку вокруг мяча. На диаграмме изображены основные артефакты SCRUM, а именно роли – Product Owner, Team, Scrum-master; Пулы функциональности – Product Backlog, Sprint Backlog; Коммуникации – Sprint Planning Meeting, Stand-Up, Sprint Review, ретроспектива. И главное, цикл Sprint.
  5. И так, прошу ответить – Кто эти люди? Click Это основные роли. Основные роли полностью включены в проект и в скрам-процесс. Click К ним относятся: Скрам-мастер (ScrumMaster) — проводит совещания (Scrum meetings) следит за соблюдением всех принципов скрам, разрешает противоречия и защищает команду от отвлекающих факторов. Данная роль не предполагает ничего иного, кроме корректного ведения скрам-процесса. Руководитель проекта скорее относится к владельцу проекта и не должен фигурировать в качестве скрам-мастера. Владелец проекта (Product Owner) — представляет интересы конечных пользователей и других заинтересованных в продукте сторон – это тот, кто видит цель продукта или кому кажется, что он видит цель продукта, но важно то, что он может ее сформулировать и начать процесс движения к ее достижению Скрам-команда (Scrum Team) — кросс-функциональная команда разработчиков проекта, состоящая из специалистов разных профилей: тестировщиков, архитекторов, аналитиков, программистов и т. д. Размер команды в идеале составляет 7±2 человека. Команда является единственным полностью вовлечённым участником разработки и отвечает за результат как единое целое. Дополнительные роли: Пользователи (End-Users) Клиенты, Продавцы (Customers, Stakeholders) — лица, которые инициируют проект и для кого проект будет приносить выгоду. Они вовлечены в скрам только во время обзорного совещания по спринту. Управляющие (Managers) — люди, которые управляют персоналом. Эксперты-консультанты (Consulting Experts) Иногда основные роли называют – свиньи, а дополнительные – куры.
  6. Без комментариев (30 сек) Click
  7. Традиционно на доске задач отображаются колонки – «В планах», «В процессе», «Готово», но также могут быть представлены и другие колонки, например, тестирование. Существует возможность использовать разный цвет карточек, например, когда мы использовали patterns microsoft, разными цветами показывали слои приложения – слой доступа к данным, слой представления, слой бизнес-логики, слой сквозной функциональности. Но использование цветов – дело вкуса команды, главное, чтобы все понимали значение цвета и стикеры были в наличии (какой-нибудь фиолетовый стикер). Click Далее карточки перемещаются слева-направо. Основная цель такого процесса – в любой момент времени, любое заинтересованное лицо должно понимать в каком состоянии находится проект, лишь взглянув на TaskBoard. Click Таким образом можно проводить анализ, основываясь на местах скопления карточек и диаграммы BurnDown – примеры, большое количество незапланированных задач, задачи выполняются без учета их приоритета, появились неразрешимые задачи, задачи решаются слишком быстро. Мы получили первое представление о доске задач, про то как попадают задачи на доску, чем отличаются карточки и что на них изображено, кто и когда перемещает карточки, а также что изображено на диаграмме справа – мы поговорим завтра.
  8. Product backlog – это основа Scrum’а. С него все начинается. По существу, product backlog является списком функциональных требований, которые упорядочены по степени важности. При этом все требования описаны на понятном для заказчика языке. Также описание каждого элемента списка включает в себя следующие поля: • ID – уникальный идентификатор. Применяется для идентификации в случае переименования. • Название – краткое описание, например, “Просмотр журнала своих транзакций”. Оно должно быть однозначным, чтобы разработчики и product owner могли примерно понять, о чем идет речь, и отличить одну историю от другой. • Важность (Importance) – степень важности данной задачи, по мнению product owner'а. Например, 10. Или 150. Чем больше значение, тем выше важность. Все элементы, которые, по мнению product owner’а имеют гипотетическую возможность попасть в следующий спринт, должны иметь уникальное значение важности. • Предварительная оценка (initial estimate) – начальная оценка объема работ, необходимого для реализации истории по сравнению с другими историями. Измеряется в story point’ах. • Как продемонстрировать (how to demo) – краткое пояснение того, как завершённая задача будет продемонстрирована в конце спринта. По сути, это простой тестовый сценарий типа “Сделайте это, сделайте то – должно получиться то-то”. • Примечания – любая другая информация: пояснения, ссылки на дополнительные источники информации, и т.д. Обычно она представлена в форме кратких тезисов.
  9. Реальная производительность рассчитывается на основании начальной оценки каждой истории. Любые изменения оценки в течение спринта игнорируются. Я уже слышу ваши возражения: “Какая от этого польза? Высокий или низкий уровень производительности зависит от миллиона факторов! Недалёкие программисты, неправильная начальная оценка, изменение объёма работ, незапланированные потрясения в ходе спринта и т.д.” Согласен, производительность – это приблизительная величина. Но, тем не менее, очень полезная. Она лучше, чем ничего. Производительность даёт нам следующее: “Независимо от причин, мы имеем разницу между запланированным и выполненным объемом работ”. А что, если история была почти закончена? Почему мы не используем дробные значения для таких историй при подсчете реальной производительности? Потому, что Scrum (как и гибкая разработка (agile), да и бережливое производство (lean)) ориентирован на то, чтобы создавать законченный, готовый к поставке продукт! Ценность реализованной наполовину истории нулевая (а то и отрицательная). См. книгу “Managing the Design Factory” автора Donald Reinertsen или одну из книг авторов Mary Poppendieck и Tom Poppendieck. Так каким же магическим способом мы оцениваем производительность? Проще всего оценить производительность, проанализировав предыдущие результаты команды. Какая производительность была в течение нескольких последних спринтов? Приблизительно такой же она будет и в следующем спринте.
  10. Истории должны быть не слишком маленькими, но и не слишком большими (в смысле оценок). Если вы получили кучу историй в половину story point’а, то вы наверняка падёте жертвой микроменеджмента. С другой стороны, история в 40 story point’ов несёт в себе риск того, что к концу спринта её успеют закончить лишь частично, а незавершённая история не представляет ценности для вашей компании, она только увеличивает накладные расходы. Дальше – больше: если ваша прогнозируемая производительность 70 story point’ов, а две наиболее важные истории оценены в 40, то планирование несколько усложнится. Команда станет перед выбором: или расслабиться (т.е. включить в спринт только одну историю), или взять на себя невыполнимые обязательства (т.е. включить обе). Я считаю, что практически всегда есть возможность разбить историю на более мелкие. Однако, в этом случае нужно следить за тем, чтобы меньшие истории всё ещё представляли ценность с точки зрения бизнеса.
  11. Планирование спринта – наиболее важная часть Scrum’a. Плохо проведённое планирование может испортить весь спринт. Цель планирования заключается в том, чтобы, с одной стороны, дать команде достаточно информации для спокойной работы в течение нескольких недель, а с другой – убедить product owner’а в том, что команда сможет сделать свою работу. Хорошо-хорошо, это было весьма расплывчатое определение. Давайте лучше поговорим о том, что должно быть итогом планирования: • Цель спринта. • Список участников команды (и степень их занятости, если она не стопроцентная). • Sprint backlog (список историй, которые вошли в спринт). • Дата демонстрации. • Место и время проведения ежедневного Scrum’а Определение даты демо. А это значит, что вам придётся определиться с длиной спринта. Какая же длина оптимальна? Короткие спринты – удобны. Они позволяют компании быть максимально “гибкой”, а значит готовой часто корректировать свои планы. Короткий спринт = короткий цикл обратной связи = частые релизы = быстрые отзывы от клиентов = меньше времени тратится на работу в неправильном направлении = быстрое обучение, совершенствование и т.д. Но с другой стороны длинные спринты тоже хороши. У команды остаётся больше времени, чтобы набрать темп, больше пространства для манёвров, чтобы решить возникшие проблемы, а также больше времени для достижения цели спринта, а у вас меньше накладных расходов, таких как планирование спринта, демо и т.д. В основном короткие спринты больше нравятся product owner’у, а длинные – разработчикам. Поэтому длина спринта – это всегда компромисс. Но общепризнанной длинной спринта является от двух до четырех недель.
  12. Цикл выпуска продукта в Scrum состоит из ряда итераций, которые называются спринтами. Спринт имеет фиксированную длительность и обычно составляет от 2 до 4 недель. Во время спринта происходят ежедневные скрам-митинги и вся команда добивается выполнения цели спринта. В реальной жизни невозможно постоянно бежать как спринтер. Между забегами вам в любом случае нужен отдых. Если вы бежите с постоянной максимальной скоростью, то, по сути, вы просто бежите трусцой. То же самое наблюдается в Scrum'е, да и в разработке программного обеспечения в целом. Спринты очень изматывают. Как у разработчика, у вас никогда нет времени, чтобы расслабиться, каждый день вы должны стоять на этом проклятом Scrum-митинге и рассказывать всем, чего вы добились вчера.
  13. Это собрание, которое в среднем длится 10-20 минут, на котором существует правило: не члены команды не говорят и не задают вопросов. Это собрание позволяет каждому участнику команды быть вовлеченным в процесс. Лучшие ежедневные Скрам-митинги происходят когда: Начинается всегда в одно и тоже время; Команда стоит напротив своей физической доски задач полукругом, другие заинтересованные лица за полукругом; Участники передают друг другу “говорящий маркер” – тот, кто держит маркер говорит. Остальные слушают и задают уточняющие вопросы; Скрам-мастер стоит в стороне в полоборота к команде и записывает на доске основные проблемы и горячие темы. Он это делает для команды. Иногда он прерывает говорящего словами: “Похоже, это горячая тема. Для кого это еще важно? Вы хотели бы ее обсудить отдельно после митинга? ОК. Записал. Идем дальше?” Время от времени Скрам-мастер вставляет короткие вопросы, направляющие команду ко взаимодействию:- Понятна ли всем суть проблемы?- Для кого это еще является проблемой?- Кто мог бы помочь?- Чем я мог бы помочь?- Что еще важного нам стоит сегодня обсудить, пока мы все вместе? После встречи Скрам-мастер может предложить команде пройтись по каждой задаче в To Do и убедиться, что они в работе. Или провести мини-ретроспективу самого Скрам-митинга, повысив его пользу для всей команды.
  14. Диаграмма сгорания задач — диаграмма, показывающая количество сделанной и оставшейся работы. Является основным инструментом Scrum для отслеживания прогресса итерации. Суть Burndown графика легко объяснить: Ось X показывает дни в Спринте (итерации) Ось Y показывает количество оставшейся работы (в чем бы вы ее не измеряли: Пункты (Story Points), идеальные часы, идеальные дни или даже просто количество задач). Идеальная линия показывает ожидаемый прогресс Реальная линия показывает реальный прогресс и количество оставшейся работ Несмотря на свою простоту – BurnDown диаграмма является мощным инструментом аналитики скрам-процесса. Что мы видим на этой диаграмме? Click Правильно, осталось три дня, а мы отстаем на 2 StoryPoints. Если копнуть глубже – в прошлую пятницу работа остановилась – мы не учли в спринте корпоратив? Или может столкнулись с неразрешимой проблемой? Или незапланированные задачи, которые не отображаются на диаграмме, останавливают весь процесс? Кстати, чтобы были видны незапланированные задачи можно использовать диаграмму BurnUp
  15. Демонстрация спринта – очень важная часть Scrum'а, которую многие все же недооценивают. "Ой, а нам что, обязательно делать демо? Мы все равно ничего интересного не покажем!" "У меня куча работы, не хватало еще смотреть чужие демо!" Хорошо выполненное демо оказывает огромное воздействие, даже если оно не показалось захватывающим. • Положительная оценка работы воодушевляет команду. • Все остальные узнают, чем занимается ваша команда. • На демо заинтересованные стороны обмениваются жизненно важными отзывами. • Демо проходит в дружеской атмосфере, поэтому разные команды могут свободно общаться между собой и обсуждать насущные вопросы. Это ценный опыт. • Проведение демо заставляет команду действительно доделывать задачи и выпускать их (даже если это всего лишь на тестовый сервер). Без демо мы постоянно оказывались с кучей на 99% сделанной работы. Проводя демо, мы можем получить меньше сделанных задач, но они будут действительно закончены, что (в нашем случае) намного лучше, чем куча функционала, который "типа" сделан и будет болтаться под ногами в следующем спринте. Если команду заставлять проводить демо, когда у них ничего толком не работает, им будет не по себе. Команда будет запинаться и спотыкаться, показывая функциональность. Это очень неприятно. В следующем спринте команда действительно постарается все доделать! Они будут думать "ладно, может, в следующем спринте стоит показать всего две вещи вместо пяти, но, черт возьми, в этот раз они будут РАБОТАТЬ!". Команда знает, что демо придется проводить несмотря ни на что, и благодаря этому шансы увидеть там что-то пристойное значительно возрастают.
  16. Наиболее важная вещь в отношении ретроспектив – это их проведение. По некоторым причинам команды не проявляют должного интереса к проведению ретроспектив. Без небольшого давления со стороны многие команды часто пропускают ретроспективу и сразу переходят к следующему спринту. Хотя при этом все вроде соглашаются, что ретроспективы крайне полезны. Я бы даже сказал, что ретроспектива является вторым по значимости мероприятием в Scrum'e (первое – это планирование спринта), потому что это самый подходящий момент для начала улучшений! Конечно, чтобы возникла хорошая идея, вам не нужна ретроспектива, она может прийти к вам в голову, когда вы дома в душевой кабинке! Но поддержит ли команда вашу идею? Может быть, но вероятность значительно выше, если идея рождается внутри команды, то есть, во время ретроспективы, когда каждый может сделать свой вклад в обсуждение идеи. Без ретроспектив вы обнаружите, что команда наступает на одни и те же грабли снова и снова.