Отследите, как ваши требования относятся к вашему проекту модели при помощи Simulink® Requirements™, чтобы создать ссылки между вашими требованиями и различными элементами модели Simulink, включая блоки, Stateflow® объекты, тестовые объекты Simulink Test™, записи в словаре данных Simulink, MATLAB® строки кода и другие требования.
Каждая ссылка имеет соответствующий slreq.Link
объект. Ссылка указывает от source item до destination item.
Можно создать ссылки на блоки и объекты Stateflow из Редактора Simulink путем перетаскивания требований от Requirements Browser в Виде в перспективе Требований. Можно создать ссылки на тестовые объекты Simulink Test от менеджера по Тесту или от Редактора Требований. Для получения дополнительной информации о соединении элементов модели Simulink к требованиям смотрите Блоки Ссылки и Требования и Ссылку на Тесты от Требований.
Ссылки требования идентифицируют требование Сеансом Независимый Идентификатор (SID) вместо Пользовательского ID, такого, что ссылка остается функциональной, если Пользовательский ID изменяется.
Можно создать ссылки между этими элементами требований, сущностями модели, тестовыми артефактами и кодом:
Объекты Simulink Requirements:
slreq.Requirement
объекты
slreq.Reference
объекты
slreq.Justification
объекты
Сущности Simulink:
Блоки
Подсистемы
Записи в словаре данных Simulink
Объекты Stateflow:
Состояния
Графики и субдиаграммы
Переходы
Сущности архитектуры System Composer™:
Компоненты
Порты
Представления
Объекты Simulink Test:
Тестовые файлы
Тестовые наборы
Тесты
Итерации
Оценки
Линии кода MATLAB в:
MATLAB .m
файлы.
Блоки MATLAB function. Для получения дополнительной информации смотрите, Интегрируют Основные алгоритмы Используя блок MATLAB function.
Основанные на MATLAB тесты Simulink. Для получения дополнительной информации смотрите, что Тестовые модели Используют MATLAB-Based Тесты Simulink (Simulink Test).
Можно установить внешние артефакты как URL как места назначения ссылки путем создания структур MATLAB. Существует два доступные подхода:
Создайте целевую структуру ссылки, затем создайте ссылку между требованием и местом назначения.
myLinkDest = struct('domain', 'linktype_rmi_url', 'artifact', ... 'https://www.mathworks.com', 'id', '') myLinkDest = struct with fields: domain: 'linktype_rmi_url' artifact: 'www.mathworks.com' id: '' slreq.createLink(myReq, myLinkDest);
Создайте структуру данных ссылок требования с помощью rmi('createempty')
. Смотрите rmi
.
Каждая ссылка имеет тип, который описывает отношение между источником и целевыми элементами. Тип ссылки относится к slreq.Link
значение свойства Типа объекта.
Каждый тип ссылки имеет случай надлежащего использования. Например, Implement
соединитесь тип указывает на отношение между требованием и элементом проекта, который реализует требование. Когда вы создаете ссылку между двумя элементами, Simulink Requirements устанавливает тип ссылки и определяет элементы как источник или место назначения в зависимости от типа артефакта, которому они принадлежат. Например, если вы создаете ссылку между требованием, и элемент модели Simulink, Simulink Requirements принимает, что элемент модели реализует требование. Это устанавливает тип ссылки на Implement
и определяет элемент модели как источник и требование как место назначения.
Если нет никакого принятого типа ссылки для ссылки, созданной между двумя элементами, то Simulink Requirements устанавливает тип ссылки на Relate
.
После того, как вы создадите ссылку, можно отредактировать тип ссылки в Редакторе Требований, Перспективе Требований, или в командной строке MATLAB. В Редакторе Требований нажмите Show Links. Выберите ссылку и, в панели Details, под Properties, выберите тип нужной ссылки из списка Type.
Simulink Requirements обеспечивает шесть встроенных типов ссылки.
Прямое направление указывает, как источник относится к месту назначения. Точно так же обратное направление указывает, как место назначения относится к источнику.
Ввод | Описание | Пример источника месту назначения | Передайте направление | Обратное направление |
---|---|---|---|---|
Relate |
| Требование к требованию | Первое требование связано со вторым требованием. | Второе требование связано с первым требованием. |
Implement |
Для получения дополнительной информации смотрите Состояние Реализации Требований Анализа. | Элемент модели Simulink к требованию | Элемент модели Simulink реализует требование. | Требование реализовано элементом модели Simulink. |
Verify |
Для получения дополнительной информации смотрите Состояние Верификации Требований Анализа. | Тест Simulink к требованию | Тест Simulink проверяет требование. | Требование проверяется тестом Simulink. |
Derive | Задает, какой исходный элемент выводит целевой элемент | Импортированное требование, на которое ссылаются, к требованию | Импортированное требование, на которое ссылаются, выводит требование. | Требование выведено из импортированного требования, на которое ссылаются. |
Refine | Задает, какой исходный элемент добавляет деталь для функциональности, заданной целевым элементом | Низкоуровневое требование к требованию высокого уровня | Низкоуровневое требование совершенствовало требование высокого уровня. | Требование высокого уровня усовершенствовано низкоуровневым требованием. |
Confirm |
Для получения дополнительной информации смотрите, Включают Результаты Внешних Источников в Состояние Верификации. | Требование к внешнему результату испытаний | Требование подтверждено внешним результатом испытаний. | Внешний результат испытаний подтверждает требование. |
Implement
и Verify
соединитесь типы описывают отношения требования к модели и требования к тесту. Задайте источник и целевые артефакты тщательно, потому что эти ссылки влияют на состояние реализации и состояние верификации. Для получения дополнительной информации смотрите Состояние Верификации Требований Состояния и Анализа Реализации Требований Анализа.
Тип ссылки также влияет на направление удара в окне Traceability Diagram. Для получения дополнительной информации смотрите, Визуализируют Ссылки со Схемой Трассируемости.
В дополнение к встроенным типам можно задать типы настраиваемой ссылки. Типы настраиваемой ссылки должны быть подтипом одного из встроенных типов. Тип настраиваемой ссылки наследовал некоторую функциональность от встроенного типа, включая то, как тип ссылки способствует состояниям реализации и верификации. Для получения дополнительной информации смотрите, Задают Пользовательские Типы Требования и Ссылки.
Можно рассмотреть ссылки в Редакторе Требований или Браузере Требований. Чтобы просмотреть ссылки в Редакторе Требований, нажмите Show Links. Чтобы просмотреть ссылки в Браузере Требований, выберите Links
от View выпадающее меню.
При работе в Редакторе Simulink можно рассмотреть ссылки требования для отдельных требований. В Браузере Требований выберите Requirements
от View выпадающее меню и выбор требование. Ссылки отображены в Property Inspector под Links.
По умолчанию все исходящие ссылки от исходного артефакта хранятся в файле Набора Ссылки (.slmx
). Смотрите Устройство хранения данных Ссылки Требований для получения дополнительной информации об устройстве хранения данных ссылок требований.
Когда вы удаляете ссылку, все связанные данные удалены включая связанные комментарии и пользовательские атрибуты.
Для ссылки, которая будет разрешена, необходимо смочь перейти к исходному элементу и к целевому элементу. Если источник, место назначения, или оба не доступны, ссылка не разрешена. Источник или целевые элементы могут быть недоступными потому что:
Артефакт проекта, который содержит источник или целевой элемент, не загружается. Например, если вы загружаете набор требования, который имеет входящие ссылки из модели Simulink, это также загружает набор ссылки, который принадлежит модели. Однако, если вы не загружаете модель Simulink, ссылки не разрешены, потому что источники ссылки не доступны.
Загруженный артефакт проекта, но заданный ID не существует. Например, если вы удаляете связанное требование, ссылка становится неразрешенной, потому что сохраненный ID больше не соответствует допустимому элементу.
Если ссылка не разрешена, потому что заданный ID не существует, это - неработающая ссылка.
Чтобы видеть неразрешенные ссылки, в Редакторе Требований, нажимают Show Links. Неразрешенные ссылки обозначаются.
Если ссылка не разрешена, потому что источник или место назначения не загружаются, можно разрешить ссылку путем загрузки файла, который содержит разгруженный источник или место назначения. Если связь разорвана, можно использовать setSource
и setDestination
методы, чтобы восстановить ссылку.
Поскольку артефакты, такие как требование устанавливает, модели Simulink, словари данных, тестовые файлы и файлы MATLAB, вся информация о ссылке, связанная с артефактами, которые находятся на MATLAB, или путь к Проекту автоматически загружаются, когда тот артефакт загружается.
Загрузка информации о ссылке может быть получена в итоге правилами можно следующим образом:
Правило 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');
Редактор Требований открывает и показывает следующую информацию:
Соедините Представление наборов
Все наборы ссылки, которые содержат информацию о входящей ссылке для загруженного набора требования, загружаются согласно Правилу 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, смотрите Устройство хранения данных Ссылки Требований.
Удалить набор ссылки:
Найдите .slmx
файл. По умолчанию, когда вы создаете ссылку, она хранится в наборе ссылки с тем же именем как артефакт, которому принадлежит исходный элемент. .slmx
файл хранится в той же директории как исходный артефакт.
Лучше закрывать все загруженные артефакты прежде, чем удалить набор ссылки. Это включает наборы требования, файлы Simulink Test, код MATLAB, словари данных Simulink, и Simulink, модели Stateflow или System Composer. Вручную закройте все эти артефакты.
В командной строке MATLAB очистите загруженные ссылки путем ввода:
slreq.clear
Удалите .slmx
файл.
После удаления ссылки устанавливает файл, можно вновь открыть артефакты по мере необходимости.
setSource
| setDestination
| slreq.refreshLinkDependencies