Напишите нам

Напишите нам свои вопросы или предложения по Almware. Используйте эту форму или напишите нам на e-mail.

Требования к ПО

Работа с требованиями к программному обеспечению в системе Almware.

Требования к ПО — это основной артефакт требований в Almware, используемый для описания низкоуровневых требований к программному обеспечению. В структуре артефактов Almware "требования к ПО" являются центральным артефактом, связывающий между собой верхнеуровневые требования и дополнительные артефакты требований, позволяя осуществлять трассировку.

Требования к ПО в Almware

Требования как артефакты, а не документ

В Almware заложен принцип рассмотрения требований к ПО как отдельных артефактов, декомпозируемых до отдельных функций или значимых характеристик.

В наиболее частом случае, артефакт требования к ПО будет описывать одну функцию системы, доступную к использованию через определенную подсистему (реализация может включать несколько под-систем). Уровень декомпозиции зависит от специфики проекта и определяется аналитиком в зависимости от размеров проекта и требований к декомпозиции.

Мы рекомендуем декомпозировать требования до отдельных функций, различиым пользователем. Например, разделять CRUD-операции на как минимум 4-5 функциональных требований (просмотр каталога, просмотр детальной информации, создание, изменение, удаление). Для сущностей со сложным жизненным циклом и дополнительными функциями потребуется сформулировать больше функциональных требований.

Общие требования для различных функций, например требования по валидации полей, единые для операций создания и изменения можно вынести в отдельный артефакт, который будет связан с использующими ее артефактами.

Такой подход позволяет поддерживать консистентность требований, а "дерево" артефактов является в некотором смысле скелетом ПО, позволяющим быстро ориентироваться в функциональных и нефункциональных требованиях.

Описание требований

Для описания требований можно использовать следующие инструменты:

  • Текстовое описание требования;
  • Перечень критериев приемки / утверждений (если настроены для данного типа требований);
  • Файлы, загружаемые с компьютера пользователя;
  • Диаграммы, сделанные с помощью встроенного редактора (на базе draw.io);
  • Файлы из внешних сервисов (если настроена интеграция). Например, документы Google Docs или фреймы Figma.

Классификация требований

Артефакты требований к ПО классифицируются с помощью следующих атрибутов:

Название Описание
Тип требования Тип требования к ПО выбирается из ранее настроенных типов текущего проекта.
Папка Древовидный классификатор требований.
Подсистемы Подсистемы, в которых реализуется требование.
Акторы Акторы, которые взаимодействуют с системой в контексте требования.
Предметная область Предметная область, к которой относится требование.
Модуль Модуль требований группирует связанные требования.
Приоритет Приоритет требования.
Лейблы Лейблы требования.
Настраиваемые атрибуты скоро Настраиваемые атрибуты, которые могут быть использованы для дополнительной классификации требований заданного типа

Типы требований к ПО

Вы можете настроить типы требований, которые будут использоваться для классификации артефактов требований к ПО в соответствии с Вашим подходом к работе с требованиями.

Как минимум, можно использовать два типа:

  • функциональные требования, описывающие отдельные функции системы;
  • Нефункциональные требования, описывающие характеристики и другие требования, которые нельзя описать как отдельную функцию;

Связь с требованиями

Для требования к ПО можно задать связи с другими требованими.

Связь Описание
Бизнес-требования Бизнес-требования, для реализации которых необходимо требование.
Связанные требования к ПО Связи с другими требованиями к ПО. Для связей можно указать тип, определяющий характер связи (расширяет, включает и т.д.).

Связь со спецификациями

Для требования к ПО можно задать указать спецификации, которые дополняют описание требования.

Связь Описание
Пользовательские интерфейсы Определяет пользовательские интерфейсы требования.
Сущности данных Определяет артефакты модели данных, относящиеся к требованию. Связь может сопровождаться указанием типа операций, которое осуществляется в рамках требования (создание, чтение, изменение, удаление) и дополнительным комментарием.
Программные интерфейсы Определяет API методы и/или другие программные интерфейсы, необходимые для реализации требования.
Настраиваеыме артефакты Определяет связанные артефакты, которые могут быть настроены пользователем в рамках проекта

Тест-кейсы

Артефакты требования к ПО могут включать набор тест-кейсов, используемых для проверки реализации требования.

Исходный код beta

Требование к ПО может быть также связано с исходным кодом исходным кодом.  Связь с файлами исходного кода позволяет осуществлять трассировка требования на исходный код и отслеживание изменений, которые затрагивают требование.