Что означает утверждение, что какой-то элемент бэклога "готов"? Понимает ли его вся команда и окружающие однозначно?
Эта статья состоит из цитат из "Руководства по Скраму". Дополнительный контент от себя оформлен не как цитаты.
Одна из ключевых концепций Скрама:
Increment — это конкретная ступенька к достижению Product Goal (цели продукта). Работа не может считаться частью Increment, если она не соответствует определению готовности.
Согласно ScrumGuide, определение готовности является одной из 3 приверженностей/commitments Скрам-команды. Другие две – цель продукта и цель спринта.
Приверженность: Определение готовности — это формальное описание состояния Increment, при котором он соответствует требованиям качества, предъявляемым продукту. Developers должны неукоснительно следовать определению готовности.
Другими словами,
в момент, когда элемент Product Backlog стал соответствовать определению готовности, рождается Increment. Если элемент Product Backlog не соответствует определению готовности, его нельзя выпускать или даже показывать на Sprint Review. Вместо этого он возвращается в Product Backlog для дальнейшего рассмотрения.
Если определение готовности для Increment является частью единых стандартов организации, все Scrum Teams должны использовать его в качестве необходимого минимума.
Если оно не определено стандартами организации, то Scrum Team должна создать определение готовности, подходящее поставляемому продукту.
Если несколько Scrum Teams работают над общим продуктом, они должны совместно определить и соблюдать одно и то же определение готовности.
Конкретные навыки, необходимые Developers, зависят от предметной области выполняемой работы и могут быть очень разными. Однако Developers всегда несут ответственность за: [...] стремление к качеству посредством соблюдения определения готовности [...]
Scrum Master [...] помогает Scrum Team фокусироваться на создании Increments с высокой ценностью, соответствующих определению готовности.
1) Оно
обеспечивает прозрачность, предоставляя всем единое общее понимание того, какая работа была выполнена в рамках Increment.
2) DoD помогает точнее планировать
Sprint Planning, тема вторая: что может быть готово в этом Sprint?
Developers обсуждают с Product Owner, какие элементы Product Backlog выбрать для включения в текущий Sprint. Выбор элементов, которые получится завершить за Sprint, может оказаться трудной задачей. Однако, чем больше Developers знают о своей прошлой производительности, своих возможностях на следующий Sprint и своем определении готовности, тем более уверенно они могут прогнозировать работу на следующий Sprint.
Sprint Planning, тема третья: как будет выполняться выбранная работа? Developers для каждого выбранного элемента Product Backlog планируют работу, необходимую для создания Increment, соответствующего определению готовности.
Цель Sprint Retrospective — запланировать повышение качества и эффективности. Scrum Team инспектирует то, как прошел последний Sprint в отношении людей, взаимодействий, процессов, инструментов и определения готовности.
Команды создают и придерживаются определения готовности.
Определение готовности:
Не путайте "Определение готовности" с "Критериями приёмки". Критерии приёмки гарантируют, что функциональность работает так, как ожидалось. Они описывают детали пользовательской истории с точки зрения тестирования. Критерии приёмки создаются командой и владельцем продукта по мере уточнения пользовательских историй.
Определение готовности содержит пункты трёх типов:
1) Политики о том, как проверять результаты. Например:
2) Обязательные задачи, отражающие технические практики. Например:
3) Обязательные задачи по процессу управления продуктом. Например:
SAFe выделяет 4 вида DoD в зависимости от уровня инкремента. Они не исключают, а дополняют друг друга. При этом используются те, которые актуальны для вашего инкремента.
Инкремент команды
(для Релизного поезда и Решения)
(для Поезда решения и Большого решения)