Все записи

Как тестировать требования

Тестирование требований — это не про поиск багов в коде. Это процесс проверки того, насколько сами требования корректны, полны и понятны.

Зачем это вообще нужно?

Ошибки в требованиях → баги в реализации → потери времени и денег.

Тестирование требований позволяет:

— Выявлять дефекты до этапа кодинга
— Экономить время команды
— Делать ожидания всех сторон прозрачными
— Повышать качество продукта без доработок «в последний момент»

Как понять, что требование хорошо сформулировано:

Frame 26.png

Какие техники тестирования требований использовать?

Взаимный просмотр
Показываем свою работу коллегам

Вопросы
Уточняем у заказчиков и коллег

Тест-кейсы и чек-листы
Прорабатываем набор вопросов для проверки требований

Рисунки
Наглядно представляем приложение

Прототипирование
Делаем наброски интерфейса и переходов между экранными формами

Исследование поведения системы
Мысленно моделируем работу пользователя с системой

Как проверить количество и атомарность?

— Делаем блок-схему, чтобы увидеть дубли и лишние шаги
— Проверяем, что требование описывает Create / Read / Update / Delete / List
— При помощи сценария использования проверяем, что требование покрывает весь путь пользователя
— Используем таблицу решений, чтобы убедиться, что все варианты условий покрыты
— Ищем отсылки на неопределенную информацию — если есть «и т.д.», «как обычно», стоит уточнить
— Проверяем на союз «и» — часто он объединяет в одном требовании сразу два, а иногда и больше

Как проверить выполнимость и однозначность?

Хорошее требование не вызывает споров — его можно понять одинаково, реализовать и проверить результат.

Что важно:
— Терминология
— Отсутствие качественных определений
— Простое изложение
— Возможность составить набор тестов
— Тестирование внешних сервисов

Как проверить актуальность и последовательность?

Если требование забыли, потеряли или поняли не так — беда в процессе.

На что обращаем внимание:
— Одно требование описано в одном месте
— Есть user story или хотя бы сценарий использования
— У автора требований есть знание предметной области
— Учтены интересы всех пользователей
— Договоренности из чатов перенесены в документацию
— Согласована дата последнего обновления требований и документации
Хорошие требования — это результат не только опыта, но и осознанной практики.

Похожие новости

Когда результату проверки нельзя доверять

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

Ринат, iOS-разработчик в Naumen, рассказал о двух таких случаях из практики и о том, почему при оценке тестов он смотрит не только на покрытие.

Как найти нужное: секционирование данных на котах

Как найти одного кота среди сотни других? 

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

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

В статье она рассказала, как работает этот подход, что важно учитывать при его реализации и при чем здесь коты.

Как мы готовили редизайн продукта с помощью исследований

Сделать красивый интерфейс часто недостаточно. Можно обновить экраны, но так и не решить реальные проблемы пользователей.

В статье Илона, продуктовый дизайнер Project Ruler, рассказывает, как команда подошла к редизайну через исследования: изучала конкурентов, разговаривала с пользователями, проверяла навигацию и выясняла, какие функции действительно важны для MVP.

Все новости