Спасибо! Мы свяжемся с Вами в ближайшее время.
Связаться с нами
Требования к ПО в Almware
Требования к ПО — это основной артефакт требований в Almware, используемый для описания низкоуровневых требований к программному обеспечению. В структуре артефактов Almware "требования к ПО" являются центральным артефактом, связывающий между собой верхнеуровневые требования и дополнительные артефакты требований, позволяя осуществлять трассировку.
Требования как артефакты, а не документ
В Almware заложен принцип рассмотрения требований к ПО как отдельных артефактов, декомпозируемых до отдельных функций или значимых характеристик (для нефункциональных требований).
Таким образом, в типичном случае, артефакт требования будет описывать одну функцию системы, которую пользователь может использовать через одно приложение (реализация при этом может включать несколько под-систем). Уровень декомпозиции зависит от специфики проекта и определяется аналитиком в зависимости от необходимости более или менее глубокой декомпозиции.
Например, зачастую имеет смысл разделять CRUD-операции на отдельные 4+ артефакта требования, описывающих отображение (просмотр списка и отдельной сущности также следует разделить на отдельные артефакты), добавление, изменение и удаление. Для сущностей со сложным жизненным циклом артефактов требований, соответственно, будет больше. Внутри этих артефактов следует описывать подробные требования к этим функциям по-отдельности. Общие требования для разных функций, например требования по валидации полей, единые для операций создания и изменения следует вынести в отдельный артефакт который будет связан с использующими ее артефактами или в описание фичи.
Такой подход позволяет поддерживать консистентность, а само по себе дерево артефактов уже дает немалую информацию о структуре и функциональности программного обеспечения.
Описание требований
Для описания требований можно использовать следующие инструменты:
- Текстовое описание требования;
- Перечень критериев приемки / утверждений (если настроены для данного типа требований);
- Файлы, загружаемые с компьютера пользователя;
- Диаграммы, сделанные с помощью встроенного редактора (на базе draw.io);
- Файлы из внешних сервисов (если настроена интеграция). Например, документы Google Docs или фреймы Figma.
Классификация требований
Артефакты требований к ПО классифицируются с помощью следующих атрибутов:
Название | Описание |
Тип требования к ПО | Тип требования из ранее настроенных типов. |
Приложение | Приложение (под-система), через которое реализуется требование. |
Акторы | Акторы, которые взаимодействуют с системой в контексте данного требования. |
Доменная область | Доменная область, к которой относится требование |
Набор требований | Определяет требование как часть набора требований. |
Коллекция | Требования могут быть дополнительно структурированы по коллекциям внутри фичи. |
Приоритет | Приоритет требования. |
Лейблы | Лейблы требования. |
Настраиваемые атрибуты скоро | Настраиваемые атрибуты, которые могут быть использованы для дополнительной классификации требований заданного типа |
Типы требований к ПО
Вы можете настроить типы требований, которые будут использоваться для классификации артефактов требований к ПО в соответствии с Вашим подходом к работе с требованиями.
Как минимум, можно использовать два типа:
- функциональные требования, описывающие отдельные функции системы;
- Нефункциональные требования, описывающие характеристики и другие требования, которые нельзя описать как отдельную функцию;
Связи с другими артефактами
Для требования к ПО можно задать связи с другими артефактами требований.
Связь | Описание |
Верхнеуровневые требования | Если в проекте поддерживаются верхнеуровневые требования, каждый артефакт требования следует привязывать к верхнеуровневому требованию, которое реализуется данным требованиям или которое влияет/ограничивает данный артефакт. |
Требования к ПО | Артефакты требований могут быть связаны между собой. Это может быть полезно, когда одно декомпозированное требование может использоваться в других требованиях. |
Пользовательский интерфейс | Определяет артефакты пользовательского интерфейса, реализующие требование. Связь может сопровождаться дополнительным комментарием, описывающим специфику связи. |
Модель данных | Определяет артефакты модели данных, относящиеся к требованию. Связь может сопровождаться указанием типа операции, которое осуществляет требование над данными (создание, чтение, изменение, удаление) и дополнительным комментарием. |
Программные интерфейсы (API) | Определяет API методы, реализующие требование. Связь может сопровождаться дополнительным комментарием, описывающим специфику связи. |
Настраиваеыме артефакты | Определяет связанные артефакты, которые могут быть настроены пользователем в рамках проекта. |
Тест-кейсы
Для артефакта требования к ПО можно создать набор тест-кейсов, используемых для проверки реализации требования.
Исходный код beta
Требование к ПО можно связать с юнитами. Юнит — это артефакт, описывающий программный модуль, объединяющий файлы исходного кода программного обеспечения. Данная связь используется для трассировки требования на исходный код и отслеживание изменений, которые затрагивают требование.