ОК, это больше 7, но у хороших требований есть следующие атрибуты:
- Unique . Есть ли другие
требования, которые похожи?
- Идентифицируемый , Может ли
Требование однозначно определить? Можно ли это отследить на протяжении всего процесса разработки?
- Complete . Что-то отсутствует или
забыли? Это основательно? Является ли
включите все необходимое, чтобы сделать
это одиноко?
- Точная . Это правильно? Правильно ли определяется
Цель? Есть ли ошибки?
- Однозначный . Является
описание точное и не расплывчатое?
Есть ли единая интерпретация? Является
это легко читать и понимать?
- Последовательная . Это описание
функция написана так, чтобы это
не конфликтует с другими предметами в
спецификация?
- Соответствующий . Требуется ли утверждение
к функции? Это дополнительный
информацию, которая должна быть опущена?
Это прослеживается до
первоначальная потребность клиента?
- реализуемое . Может ли так быть
реализовано с доступным
персонал, инструменты и ресурсы
в пределах указанного бюджета и
график?
- Код свободной . Есть ли спецификация
придерживаться определения продукта и
не основной дизайн программного обеспечения,
архитектура и код?
- Testable . Можно ли это проверить? Достаточно
информация при условии, что тестер
Можно ли создать тесты для проверки выполнения требования?
- Приоритетность . Это больше или
менее важно, чем другие требования?
- Использует активный голос . Ли
спецификация использовать активный голос?
Пассивный голос не всегда определяет
кто или что выполняет действие.
- Категоризированный . Требование
логически сгруппированы с похожими
требования? Возможные категории
являются: поведенческие, производительность,
Интерфейс, Структуры данных / Элементы,
Внедрение, соответствие / качество,
Оперативность (Надежность, Безопасность,
Безопасность), Производный / Разработанный.
Достойный инструмент отслеживания требований может автоматизировать / обеспечить выполнение некоторых из вышеперечисленных, таких как Идентифицируемый, Приоритетный, Категоризованный, но остальное может проверить только команда. Ключ в том, чтобы обучить вашу команду этим атрибутам, научить их практическому применению, читая как хорошие, так и плохие примеры требований, и наладить эффективный процесс проверки, который проверяет требования достаточно рано в вашем жизненном цикле, чтобы оказать влияние на последующие действия.