Критерии приемки в Agile: что это такое и как правильно писать acceptance criteria
В статье обсудим, что такое критерии приемки (acceptance criteria) в Agile: зачем нужны, как писать и применять на практике. Разберем отличия от user stories, ключевые принципы и конкретные примеры.
Вольный перевод статьи Acceptance criteria: examples and best practices, опубликованной на сайте atlassian.com
В современной разработке программного обеспечения (ПО) успешный запуск продукта напрямую зависит от слаженной работы всей команды. Одним из ключевых компонентов эффективной коммуникации и контроля качества в Agile методологиях являются критерии приемки (acceptance criteria) — четкие условия и требования, которые должен удовлетворять функционал для успешного завершения работы.

В этой статье мы подробно рассмотрим, что такое критерии приемки, как они помогают команде достигать общих целей, и как правильно создавать тестируемые и измеримые acceptance criteria. Вы узнаете разницу между пользовательскими историями и критериями приемки, получите практические рекомендации и ответы на частые вопросы, а также найдете примеры эффективных критериев приемки.
Что такое критерии приемки (acceptance criteria) в разработке ПО?
Критерии приемки — это конкретный список условий или требований, которые необходимо выполнить для того, чтобы функционал, пользовательская история или релиз считались готовыми к использованию и приемке клиентом. По сути, это проверяемые и понятные утверждения, фиксирующие, какой результат должен предоставить продукт, без описания технической реализации.
Критерии приемки гарантируют, что конечный продукт соответствует ожиданиям и потребностям клиентов, сокращая риски недопонимания и переделок.
Отличия acceptance criteria и user stories
Хотя эти понятия тесно связаны в Agile, у них разные цели:
- User story (пользовательская история) формулирует, почему нужна определённая функция, раскрывает нужды пользователя и контекст её использования. Это основа управления бэклогом проекта.
- Acceptance criteria (критерии приемки) описывают, какие конкретные требования функционал должен удовлетворять, и служат основой для проверки корректности выполнения задачи.
Пример:
User story: «Как клиент, я хочу искать товары по названию, чтобы быстро находить нужные позиции».
Acceptance criteria:
- Поиск возвращает точные совпадения названий.
- Поиск поддерживает частичное совпадение (минимум 3 символа).
- Результаты отображаются удобно и структурировано.
Таким образом, пользовательские истории задают контекст, а критерии приемки — конкретные технические и бизнес-условия.
Ключевые характеристики хороших критериев приемки для Agile-команд
Чтобы acceptance criteria эффективно выполняли свои задачи, они должны быть:
- Ясными и лаконичными. Формулировки должны быть понятны всем: разработчикам, тестировщикам и менеджерам без лишних терминов.
- Проверяемыми (тестируемыми). Каждый критерий должен превращаться в конкретный тестовый сценарий.
- Фокусированными на результате. Описывайте, что должен сделать функционал, а не как именно.
- Измеримыми. Используйте конкретные параметры, например, размеры, количество, формат данных.
- Независимыми. Каждый критерий следует проверять отдельно для быстрого выявления проблем.
Зачем нужны критерии приемки в разработке ПО?

Использование четких критериев приемки приносит команде и продукту несколько важных преимуществ:
- Общее понимание задач и требований. Все члены проекта говорят на одном языке, что снижает количество ошибок и разночтений.
- Минимизация переделок. Когда критерии четко прописаны, команда знает, когда задача считается выполненной.
- Упрощение тестирования. Тестировщики сразу получают конкретные требования для проверки функционала.
- Контроль прогресса. Для менеджеров каждый выполненный критерий — явный показатель продвижения работ.
- Повышение качества готового продукта. Продукт лучше соответствует ожиданиям и требованиям конечных пользователей.
Критерии приемки — мост между видением заказчика и технической реализацией.
Кто отвечает за написание acceptance criteria?
В Agile процесс создания критериев приемки — командная работа с распределением ролей:
- Владелец продукта (Product Owner). Формулирует начальные требования с учетом потребностей клиента.
- Разработчики. Анализируют, насколько критерии ясны и выполнимы, помогают уточнить формулировки.
- Scrum-мастер. Модерирует обсуждения и следит за процессом согласования.
Чаще всего владелец продукта инициирует создание критериев, но их окончательная версия – результат совместной работы команды.
Практическая инструкция: как написать эффективные acceptance criteria
Для создания качественных критериев приемки следуйте пошаговому алгоритму:
- Связывайте acceptance criteria с конкретной user story.
- Опирайтесь на результат и пользовательский опыт, а не на технические детали.
- Пишите просто и понятно, избегая двусмысленности.
- Убедитесь, что каждый критерий легко проверить и протестировать.
- Используйте измеримые показатели (числа, форматы, размеры).
- Формулируйте так, чтобы критерии можно было проверять независимо друг от друга.
- Включайте критерии для User Acceptance Testing (UAT) — оценки удобства и соответствия требованиям пользователей.
- Вовлекайте в создание критериев владельца продукта, разработчиков и заинтересованных участников.
- Регулярно пересматривайте и корректируйте acceptance criteria по мере уточнения задачи или в ходе спринта.
Придерживаясь этих правил, вы улучшите коммуникацию и качество продукта.
Примеры acceptance criteria

Пример 1
User story: «Как клиент, я хочу искать товары по названию, чтобы быстро находить нужные позиции».
Acceptance criteria:
- Поиск выводит результаты с точным совпадением названия.
- Обрабатывается частичное совпадение (от 3 символов).
- Результаты включают название, изображение и цену.
- Вывод не превышает 20 товаров на странице (пагинация).
Пример 2
User story: «Как зарегистрированный пользователь, я хочу редактировать данные аккаунта, чтобы профиль оставался актуальным».
Acceptance criteria:
- Пользователь может открыть раздел «Редактировать профиль».
- Разрешено изменять имя, фамилию, email и телефон.
- После сохранения изменения фиксируются в системе.
- Появляется подтверждающее сообщение об успешном обновлении.
Пример 3
User story: «Как администратор, я хочу генерировать отчёты о действиях пользователей и отслеживать их активность».
Acceptance criteria:
- В админ-панели есть раздел «Отчёты».
- В отчётах отображаются типы активности: входы, просмотры, покупки.
- Есть возможность фильтровать данные по дате и типу пользователя.
- Отчёты доступны для скачивания в форматах CSV, PDF и других.
Ответы на частые вопросы: критерии приемки
1. В чем разница между acceptance criteria и Definition of Done (DoD)?
Acceptance criteria определяют, что должен выполнять конкретный функционал в пользовательской истории. Definition of Done — это более широкий набор критериев качества, применимых к завершению всех задач спринта или релиза, включая тестирование, документацию и стандарты безопасности.
2. Когда лучше писать критерии приемки?
Оптимально формировать acceptance criteria до начала разработки — во время обсуждения бэклога или планирования спринта. Это помогает избежать разночтений и сэкономить время на корректировках.
3. С какими сложностями можно столкнуться при создании acceptance criteria?
- Неясные формулировки, вызывающие неоднозначность и споры.
- Сложность балансирования между излишней детализацией и общими требованиями.
- Разногласия между заинтересованными сторонами по поводу степени готовности задач.
- Склонность к излишнему усложнению критериев, замедляющему процессы.
Заключение
Критерии приемки — важный инструмент в Agile-разработке, позволяющий обеспечивать прозрачность, тестируемость и качество продукта. Правильно составленные acceptance criteria помогут вашей команде избежать множества ошибок, улучшить коммуникацию и ускорить процесс вывода продукта на рынок.
Используйте приведенные рекомендации и примеры, чтобы создавать четкие, проверяемые и измеримые критерии, которые будут всегда на одной волне с потребностями пользователей и бизнес-задачами.
Если вы хотите углубить знания и изучить инструменты гибкого управления, присоединяйтесь к одному из тренингов по Agile и Scrum — освойте основы Agile или прокачайте свои навыки в области профессионального коучинга, менторства и фасилитации.

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

Представьте, что инопланетяне хотят создать продукт для людей, который изменит их жизнь. Проблема в том, что они никогда не взаимодействовали с нами, а только наблюдали издалека. В нашем мире важно познакомиться с клиентами, понять их потребности и предложить решения — для этого существует подход кастдев (customer development, CustDev). В статье я объясню, что такое кастдев, как его проводить и какие этапы важны, а в конце приведу пример компании Dropbox, которая вовремя изучила обратную связь от пользователей и запустила классный продукт, который действительно нужен людям.

Рассказываем, что такое продуктовая Гемба и как этот метод помогает создавать лучшие продукты, а также делимся пошаговым гайдом, чтобы реализовать его на практике