Гибкое управление проектами (Agile)

Критерии готовности (Definition of Done)

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

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

Представьте организацию корпоративного мероприятия: без четкого чек-листа того, что считается «готовым к проведению», одни участники команды могут считать достаточным забронировать зал, другие — что нужно еще подготовить презентации, а третьи — что без кейтеринга мероприятие не состоится. Критерии готовности работают по тому же принципу — они устраняют разночтения в понимании того, когда работа действительно завершена.

Команда говорит на одном языке качества

Во-первых, критерии готовности синхронизируют ожидания всех участников команды относительно качества работы. Раньше разработчик мог считать задачу выполненной после написания кода, тестировщик — после проверки функциональности, а продакт-менеджер ждал еще и обновления документации. Теперь все заранее знают полный список требований. Во-вторых, они ускоряют процесс приемки работы, поскольку исключают необходимость каждый раз обсуждать, что именно нужно сделать для завершения задачи. Команда просто сверяется с заранее согласованным списком критериев.

Как выглядят критерии готовности в реальной команде

Команда разработки мобильного приложения для банка определила свои критерии готовности для пользовательских историй: код написан и покрыт unit-тестами, функциональность протестирована на всех поддерживаемых устройствах, интерфейс соответствует дизайн-системе, изменения задокументированы в confluence, код прошел код-ревью и влит в основную ветку. Когда разработчик завершает работу над функцией входа по отпечатку пальца, он проверяет каждый пункт. Только после выполнения всех критериев задача переходит в статус «готово» и может быть включена в релиз.

Когда критерии готовности превращаются в бюрократию

Некоторые команды создают слишком детализированные критерии, включающие десятки пунктов для каждого типа задач. Такой подход замедляет работу и превращает полезный инструмент в формальную процедуру. Другие команды, наоборот, формулируют критерии слишком расплывчато: «код должен быть качественным» или «дизайн должен быть красивым». Подобные формулировки не помогают команде прийти к единому пониманию готовности. Третья распространенная ошибка — создание единых критериев для всех типов задач, не учитывая их специфику.

Критерии готовности как инструмент непрерывного улучшения

Хорошо сформулированные критерии готовности становятся основой для повышения качества продукта и эффективности команды. Они помогают выявлять узкие места в процессе разработки: если команда регулярно «спотыкается» на определенном критерии, это сигнал для улучшения процесса или инструментов. Критерии готовности также интегрируются с другими Agile-практиками: они используются при планировании спринта для оценки объема работы, при проведении ретроспектив для анализа качества выполненных задач, и при демонстрации результатов спринта для подтверждения готовности функций.

"Каждый проект начинается с разговора о задаче. Часто за исходным запросом кроется большой организационный контекст, который нужно изучить для правильного решения задачи. Поэтому мы много спрашиваем на старте."
Дмитрий Лобасев, управляющий партнер OnAgile

Сначала слушаем, задаём вопросы, разбираемся в ситуации. Потом предлагаем подход и только тогда обсуждаем условия.

Расскажите о вашей задаче