# Ревью эпиков ## Проблема 1. Тестировщики не проводят ревью требовани в эпиках Причина: 1.1 Они не видят эпики которые в разработке 1.2 Постановщики задачи не приглашают тестировщика на ревью 2. В ходе ревью на финальном этапе тестирования находим расхождения требований и макетов - Пример: https://gitlab.sima-land.ru/groups/dev-dep/dev/-/epics/561#note_949598 ## Решение И наше любимое, создаем 2 лейбла - QA|in review - ставит ПМ когда Epic готов к ревью - QA|approved - ставит тестировщик когда провел анализ требований ### Иделаьный процесс 1. ПМ создает epic, закидывает на ревью другим ПМ, они поставили палец вверх, далее ПМ отправляет в TODO и кидает лейбл QA|in review, далее Тестер и Лид смотрят, Тестер ставит QA|approved, Лид пишет коммент что все ок/или же ставит задачку на разработку(это и означает что он со всем согласен) ### Исключения 2. ПМ создает epic, закидывает на ревью другим ПМ, они поставили палец вверх, далее ПМ отправляет в TODO и кидает лейбл QA|in review, далее Тестер и Лид смотрят, Тестер ставит QA|approved, Лид говорит что это дичь не реализуемая, как только он написал коммент и были внесены правки в эпик то ПМ снова ставит лейбл QA|in review и Тестировщик снова проверяет ## Правила таковы: - Без установки тестировщиком лейбла QA|approved Лид команды разработки не может заводить задачку на разработку - Все правки эпика ПМ должны сопровождаться сменой лейбла на QA|review если ранее был указан лейбл QA|approved ## Что включает в себя анализ требований Атрибуты требований: 1 Корректность — точное описание разрабатываемого функционала. 2 Проверяемость — формулировка требований таким образом, чтобы можно было выставить однозначный вердикт, выполнено все в соответствии с требованиями или нет. 3 Полнота — в требовании должна содержаться вся необходимая для реализации функциональности информация. 4 Недвусмысленность — требование должно содержать однозначные формулировки. 5 Непротиворечивость — требование не должно содержать внутренних противоречий и противоречий другим требованиям и документам. 7 Атомарность — требование нельзя разбить на отдельные части без потери деталей. 8 Модифицируемость — в каждое требование можно внести изменение. 9 Прослеживаемость — каждое требование должно иметь уникальный идентификатор, по которому на него можно сослаться. ### Почему это так важно и для кого это нужно Для менеджера: - Увеличивается скорость разработки — меньше одинаковых вопросов к автору требований, меньше переделок после разработки - Он раньше получает информацию, важную для принятия решений - Выше качество продукта — некоторые ошибки требований очень дорого или невозможно исправить после разработки Для автора требований: - Обратная связь сразу, пока он ещё в контексте задачи - Дополнительная информация о краевых случаях и рисках - Меньше одинаковых вопросов Для разработчика: - Качественные требования, из которых понятно, что нужно сделать - Меньше новых требований, которые появляются уже после разработки. И меньше усилий, чтобы вписать их в систему Для тестировщика: - Возможность влиять на проект в самом начале. Часто тестировщики знают, как продукт работает на самом деле и какие есть подводные камни - Меньше багов на этапе тестирования продукта - Понятнее, что должно получиться и как это проверять. Следовательно проще разрабатывать тестовую документацию.