Отследите, как ваши требования связаны с проектом модели, используя Simulink® Requirements™ для создания ссылок между вашими требованиями и различными элементами модели Simulink, включая блоки, Stateflow® объекты, тестовые объекты Simulink Test™, записей в словаре данных Simulink, MATLAB® кодовые линии и другие требования.
Можно создать ссылки с блоками и объектами Stateflow из редактора Simulink путем перетаскивания требований из Requirements Browser в перспективном представлении Requirements. Можно создать ссылки на тестовые объекты Simulink Test из Диспетчера тестов или из Редактора требований. Для получения дополнительной информации о связывании элементов модели Simulink с требованиями, смотрите Ссылки на блоки и требования и Связь с тестами из требований.
Ссылки с требованиями соединяются с SID требования (Session Independent Identifier), а не с его пользовательским идентификатором.
Можно создать ссылки между элементами требований, сущностями модели, тестовыми программными продуктами и кодом:
Объекты Simulink Requirements:
slreq.Requirement
объекты
slreq.Reference
объекты
slreq.Justification
объекты
Сущности Simulink
Блоки
Подсистемы
Словари данных
Объекты Stateflow:
Государства
Графики и субдиаграммы
Переходы
Simulink Test:
Тестовые файлы
Тестовые наборы
Тесты
Итерации
Оценки
Код MATLAB линий
System Composer™ архитектурные модели
Можно задать внешние программные продукты, такие как URL, в качестве адресатов ссылок путем создания структур MATLAB. Существует два подхода:
Создайте структуру назначения ссылки.
myLinkDest = struct('domain', 'linktype_rmi_url', 'artifact', ... 'www.mathworks.com', 'id', '') myLinkDest = struct with fields: domain: 'linktype_rmi_url' artifact: 'www.mathworks.com' id: '' % Create a link between requirement myReq and mylinkDest slreq.createLink(myReq, myLinkDest);
Создайте требуемую структуру данных, используя rmi('createempty')
. Посмотрите rmi
.
Чтобы отследить, как элементы проекта связаны с вашими требованиями, можно задать типы ссылок для ссылок требований. Типы ссылки также описывают характер ссылок требования-требования, например, когда требование определяется более высоким уровнем потребности.
Simulink Requirements предоставляет эти типы ссылок.
Напечатать | Описание |
---|---|
Связанные с | Общая связь между требованием и элементом модели. Эта ссылка является двунаправленной. |
Реализовано | Определяет, какие элементы модели реализуют это требование. Эти типы ссылок вносят вклад в метрику состояния реализации. |
Орудия | |
Проверено | Определяет, какие элементы модели верификации или тесты проверяют, что это требование удовлетворено. Эти типы ссылок вносят вклад в метрику состояния верификации. |
Проверяет | |
Получено из | Определяет, какие программные продукты назначения получают из этого исходного программного продукта. |
Происходит | |
Очищается | Задает, какие программные продукты добавляют дополнительные детали для функций, заданных исходным программным продуктом. |
Уточнено | |
Подтверждает | Задает связь между набором требований и внешним источником результатов. Эти типы ссылок вносят вклад в метрику состояния верификации. |
Подтверждено |
Чтобы задать тип ссылки, откройте Редактор требований (Requirements Editor) щелкните Show Links. Выберите ссылку и, на панели Details, в разделе Properties, выберите требуемый тип ссылки из меню Type.
Можно также создать пользовательские типы ссылок. Для получения дополнительной информации см. раздел «Определение пользовательских типов требований и ссылок».
Ссылки с требованиями имеют исходный программный продукт и программный продукт назначения. Большинство типов ссылки определяется относительно направления ссылки. Тип Related to link обозначает общее соотношение между двумя сущностями.
Реализации/реализации и проверки/проверки типов ссылок описывают отношения модель требования. Укажите исходный и целевой программные продукты для требований с этими типами ссылок, поскольку итоговые метрики состояния реализации и состояния верификации получают из этих типов ссылок. Для получения дополнительной информации о сводных метриках состояния реализации и состояния верификации смотрите Статус реализации требований и Статус верификации требований.
Ссылки можно просмотреть в редакторе требований или браузере требований. Чтобы просмотреть ссылки в редакторе требований, нажмите кнопку Show Links. Чтобы просмотреть ссылки в браузере требований, выберите Links
из раскрывающегося меню View.
При работе в Редактор можно просмотреть ссылки на требования для отдельных требований. В браузере требований выберите Requirements
в раскрывающемся меню View и выберите требование. Ссылки отображаются в инспекторе Property Inspector под Links.
По умолчанию все исходящие ссылки из исходного программного продукта хранятся в файле Link Set (.slmx
). Для получения дополнительной информации о требованиях к ресурсам хранения см. Requirements Link Storage.
При удалении ссылки Simulink Requirements не сохраняет CommentedBy, CommentedOn или SID для ссылки.
Разрешённая ссылка имеет доступный источник и место назначения. Если источник или адресат ссылки недоступен, ссылка не разрешена. Для примера:
Ссылка становится неразрешенной, если вы удаляете связанный блок из модели.
Ссылка не разрешена, если исходный или целевой файл, такой как тестовый файл Simulink Test, не загружен в память.
В представлении ссылок неразрешённые ссылки обозначаются как. Используйте setSource
и setDestination
методы для разрешения ссылок.
Для программных продуктов, таких как наборы требований, модели Simulink, словари данных, тестовые файлы и файлы MATLAB, вся информация о ссылках, относящаяся к программным продуктам, которые находятся в пути MATLAB или Project, автоматически загружается при загрузке этого программного продукта.
Загрузка информации о ссылке может быть суммирована правилами следующим образом:
Правило 1: Загрузка программного продукта, такого как наборы требований, модели Simulink, словари данных, тестовые файлы и файлы MATLAB, которые находятся в MATLAB или пути проекта, загружает все входящие и исходящие наборы ссылок для этого программного продукта. Каждый программный продукт может иметь один исходящий набор ссылок и один или несколько наборов ссылок, содержащих информацию о ссылках от других программных продуктов.
Правило 2: Если загруженный программный продукт имеет исходящие ссылки на набор требований, то набор требований также загружается вместе с информацией о ссылке. Этот загруженный набор требований также имеет право следовать Правилу 1 для дальнейшей загрузки необходимой информации о ссылке.
Применение этих правил может быть проиллюстрировано с помощью slreqCCProjectStart
проект в трех сценариях. Выполните следующие действия:
Закройте все модели Simulink и наборы требований перед открытием проекта.
Загрузите slreqCCProjectStart
в MATLAB:
slreqCCProjectStart
Сценарий 1:
Откройте модель crs_controller.slx
:
open_system('crs_controller.slx');
Откройте редактор требований:
slreq.editor
В редакторе требований отображается следующая информация:
Ссылка на информацию из набора исходящих каналов crs_controller.slmx
загружается в соответствии с Правилом 1.
Набор требований crs_req_func_spec.slreqx
и наборы ссылок crs_req.slmx
, crs_controllerdic.slmx
, DriverSWRequest_Tests.slmx
, и crs_plant.slmx
загружаются в соответствии с Правилом 2.
Закройте модель и Редактор требований.
Сценарий 2:
Откройте набор требований crs_req_func_spec.slreqx
:
slreq.open('crs_req_func_spec.slreqx');
Откроется Редактор требований (Requirements Editor), в котором появится следующая информация:
Представление наборов ссылок
Все наборы ссылок, которые содержат информацию о входящей ссылке для загруженного набора требований, загружаются в соответствии с Правилом 1.
Закройте Редактор требований.
Сценарий 3:
Откройте модель crs_plant.slx
:
open_system('crs_plant.slx');
Откройте редактор требований:
slreq.editor
В редакторе требований отображается следующая информация:
Ссылка на информацию из набора исходящих каналов crs_plant.slmx
загружается в соответствии с Правилом 1.
Наборы требований crs_req_func_spec.slreqx
и crs_req.slreqx
и все наборы ссылок, которые содержат информацию о входящей ссылке для этих требований, загружаются в соответствии с Правилом 2.
Закройте модель и Редактор требований.
Информация о ссылке не загружается автоматически, если вы сохраняете ссылки с моделью как встроенный набор ссылок. Можно также загрузить информацию о ссылке при помощи slreq.refreshLinkDependencies
команда.
Информация о ссылке автоматически выгружается при выгрузке всех связанных программных продуктов из памяти.
Наборы ссылок хранятся в .slmx
файлы. Удаление .slmx
файл во время загрузки ссылок в память может привести к неожиданному поведению.
Примечание
Если необходимо удалить файл набора ссылок, сопоставленный с моделью Simulink, убедитесь, что ссылки сохранены извне. Для получения дополнительной информации о том, как хранить ссылки на стороне из модели Simulink, смотрите Requirements Link Storage.
Чтобы удалить набор ссылок:
Найдите .slmx
файл. По умолчанию, когда вы создаете ссылку, она хранится в наборе ссылок с таким же именем, как программный продукт, к которому принадлежит исходный элемент. The .slmx
файл хранится в той же директории, что и исходный программный продукт.
Лучше всего закрыть все загруженные программные продукты перед удалением набора ссылок. Это включает наборы требований, файлы Simulink Test, код MATLAB, словари данных Simulink и модели Simulink, Stateflow или System Composer. Вручную закройте все эти программные продукты.
В командной строке MATLAB очистите загруженные ссылки путем ввода:
slreq.clear
Удалите .slmx
файл.
После удаления файла набора ссылок можно повторно открыть программные продукты по мере необходимости.
setDestination
| setSource
| slreq.refreshLinkDependencies