Тестирование требований — это не про поиск багов в коде. Это процесс проверки того, насколько сами требования корректны, полны и понятны.
Зачем это вообще нужно?
Ошибки в требованиях → баги в реализации → потери времени и денег.
Тестирование требований позволяет:
Выявлять дефекты до этапа кодинга
Экономить время команды
Делать ожидания всех сторон прозрачными
Повышать качество продукта без доработок «в последний момент»
Как понять, что требование хорошо сформулировано:

Какие техники тестирования требований использовать?
Взаимный просмотр
Показываем свою работу коллегам
Вопросы
Уточняем у заказчиков и коллег
Тест-кейсы и чек-листы
Прорабатываем набор вопросов для проверки требований
Рисунки
Наглядно представляем приложение
Прототипирование
Делаем наброски интерфейса и переходов между экранными формами
Исследование поведения системы
Мысленно моделируем работу пользователя с системой
Как проверить количество и атомарность?
Делаем блок-схему, чтобы увидеть дубли и лишние шаги
Проверяем, что требование описывает Create / Read / Update / Delete / List
При помощи сценария использования проверяем, что требование покрывает весь путь пользователя
Используем таблицу решений, чтобы убедиться, что все варианты условий покрыты
Ищем отсылки на неопределенную информацию — если есть «и т.д.», «как обычно», стоит уточнить
Проверяем на союз «и» — часто он объединяет в одном требовании сразу два, а иногда и больше
Как проверить выполнимость и однозначность?
Хорошее требование не вызывает споров — его можно понять одинаково, реализовать и проверить результат.
Что важно:
Терминология
Отсутствие качественных определений
Простое изложение
Возможность составить набор тестов
Тестирование внешних сервисов
Как проверить актуальность и последовательность?
Если требование забыли, потеряли или поняли не так — беда в процессе.
На что обращаем внимание:
Одно требование описано в одном месте
Есть user story или хотя бы сценарий использования
У автора требований есть знание предметной области
Учтены интересы всех пользователей
Договоренности из чатов перенесены в документацию
Согласована дата последнего обновления требований и документации
Хорошие требования — это результат не только опыта, но и осознанной практики.
