Definition of Done

Тема дорожной карты · Business Analysis

Definition of Done (DoD) — это командный чек-лист, который должен быть выполнен для каждой истории в спринте. Этот список включает в себя обязательные проверки, такие как code review, прохождение unit-тестов, интеграционных тестов, обновление документации, деплой на staging-среду, проверку доступности и производительности. DoD является единым для всех историй в одном спринте, в отличие от персональных для каждой истории критериев принятия. Слабый DoD является одним из самых распространённых источников накопленного технического долга.

Как это работает

Строить DoD необходимо как командный процесс, который обычно обсуждается на ретроспективе. Каждый пункт в списке должен быть (а) верифицируемым (то есть проверяемым как "да" или "нет"), (б) автоматически обеспеченным, где это возможно (например, через CI-проверки, lint-правила, сканеры доступности), (в) пересматриваемым на ретроспективе, но обязательным внутри спринта. Типичный DoD включает 8-15 пунктов. Важно вывести его на доску команды для удобного доступа во время code review и не забывать о его выполнении до релиза.

Когда применять

Установите DoD при формировании команды и пересматривайте его на каждом ретроспективном собрании для добавления или уточнения пунктов. Ужесточайте DoD, когда (а) баги продолжают убегать в production (добавьте конкретные категории тестов), (б) проблемы доступности или производительности повторяются (добавьте сканеры в DoD), (в) проблемы деплоя (добавьте деплой на staging-среду как пункт DoD). Ослабление DoD следует делать крайне редко, так как это почти всегда увеличивает накопленный технический долг.

Типичные ошибки

(1) Aspirational DoD — пункты, которые команда не может верифицировать ('система должна быть безопасной' без security-сканера в CI). (2) DoD никто не упоминает — написан и забыт; необходимо повесить его видимо. (3) Путаница DoD и Acceptance Criteria — DoD является общекомандным и консистентным, в то время как Acceptance Criteria (AC) являются персональными для каждой истории. Команды, путающие эти понятия, часто имеют слабый DoD, потому что AC несут вес непоследовательно.

Связанные понятия

Полезные ресурсы