Матрица прослеживаемости требований (RTM) — это документ или инструмент, который используется для отслеживания и управления требованиями на протяжении всего жизненного цикла разработки программного обеспечения (SDLC). Он помогает убедиться, что каждое бизнес-требование связано с соответствующими функциональными, техническими и тестовыми случаями.
1. Что такое RTM?
📌 RTM — это структурированная таблица или документ, который отображает связь требований с тестами, проектированием и реализацией.
✅ Задачи RTM:
- Обеспечивает, что ни одно требование не будет упущено в процессе разработки и тестирования.
- Помогает в анализе воздействия при изменениях.
- Обеспечивает прослеживаемость от бизнес-потребностей → функциональных спецификаций → тестов → дефектов.
2. Типы RTM
Тип RTM | Цель |
---|---|
Прямой | Отображает бизнес-требования → функциональные спецификации → тесты (обеспечивает, что все требования охвачены). |
Обратный | Отображает тесты → функциональные спецификации → бизнес-требования (обеспечивает, что не добавлена лишняя функциональность). |
Двунаправленный | Обеспечивает как прямое, так и обратное отображение (лучшая практика для полного покрытия). |
3. Пример RTM
Требование ID | Бизнес-требование | ID функциональной спецификации | ID теста | Статус |
---|---|---|---|---|
REQ-001 | Пользователь может зарегистрироваться с email и паролем | FUNC-001 | TC-001, TC-002 | ✅ Пройдено |
REQ-002 | Система отправляет OTP для двухфакторной аутентификации | FUNC-002 | TC-003 | ❌ Не пройдено |
REQ-003 | Пользователи могут сбросить пароль через email | FUNC-003 | TC-004, TC-005 | ✅ Пройдено |
📌 Как это работает:
- REQ-001 → Определяет бизнес-потребность (Регистрация пользователя).
- FUNC-001 → Указывает, как это реализовано (Процесс регистрации с email и паролем).
- TC-001, TC-002 → Тесты для проверки регистрации пользователя.
- Статус → Показывает, реализовано ли требование и прошло ли оно тестирование.
4. Преимущества использования RTM
✅ Обеспечивает полное покрытие требований.
✅ Раннее выявление недостающей функциональности.
✅ Улучшение анализа воздействия изменений.
✅ Повышение эффективности коммуникации между бизнесом, разработкой и QA-командами.
✅ Помогает в процессе соблюдения стандартов и аудита.
5. Как RTM используется на разных этапах SDLC
Этап | Применение RTM |
---|---|
Сбор требований | Связывает бизнес-потребности с функциональными спецификациями. |
Проектирование и разработка | Обеспечивает реализацию всех требований. |
Тестирование (QA) | Связывает требования с тестовыми случаями для полного покрытия. |
UAT и развертывание | Подтверждает, что все бизнес-потребности выполнены перед релизом. |
6. Лучшие практики для RTM
✅ Используйте уникальные идентификаторы для каждого требования (REQ-001, FUNC-001, TC-001 и т.д.).
✅ Обновляйте RTM на протяжении всего проекта.
✅ Автоматизируйте RTM в JIRA, Confluence.
✅ Используйте двунаправленную прослеживаемость для отслеживания как прямых, так и обратных связей.
7. RTM в Agile и Waterfall
Модель Waterfall: RTM широко используется для отслеживания требований от начала до конца.
Модель Agile: RTM может быть более легким, с фокусом на пользовательские истории, связанные с критериями приемки и тестами.
📌 Пример RTM для Agile
ID пользовательской истории | Пользовательская история | Критерии приемки | Тесты |
---|---|---|---|
US-101 | Как пользователь, я могу сбросить свой пароль | На email должен быть отправлен email с ссылкой для сброса пароля | TC-001, TC-002 |
8. Инструменты для RTM
✔️ JIRA (связь требований с тестами в Xray, Zephyr, TestRail)
✔️ Confluence (документирование связи требований с тестами)
✔️ Excel/Google Sheets (ручное отслеживание для небольших проектов)
✔️ Инструменты управления тестированием (HP ALM, TestRail, qTest)