Отчет о требованиях - это функция в RMI, которая сканирует модель Simulink на наличие ссылок на внешние документы требований и создает отчет. Если документы доступны для чтения во время создания отчета по требованиям, имеется возможность вставки связанных фрагментов документа в созданное содержимое для создания более подробного отчета.
В этом примере используется модель Power Window Controller и используется внешний набор ссылок. Подробное описание функции внешнего хранилища в RMI приведено в разделе Управление требованиями без изменения файлов модели Simulink.
Выполните следующие команды, чтобы включить внешние ссылки, связать примерную модель с внешними данными RMI и открыть модель Simulink.
rmipref('StoreDataExternally', true); rmimap.map('slvnvdemo_powerwindowController', 'slvnvdemo_powerwindowOffice.slmx');
Mapping .../slrequirements-ex02666684/slvnvdemo_powerwindowController.slx to slvnvdemo_powerwindowOffice.slmx
open_system('slvnvdemo_powerwindowController');Выделите связи в модели, чтобы найти объекты со ссылками и перейти к документам. На вкладке Приложения откройте Диспетчер требований. На вкладке Требования (Requirements) щелкните Выделить связи (Highlight Links). Либо проанализируйте следующий код.
rmi('highlightModel', 'slvnvdemo_powerwindowController');
Включенные ссылки демонстрируют несколько возможных стилей связи с документами Microsoft Office:
control подсистема ссылается на основной подзаголовок в документе Word. Вычислите код для перехода к control подсистема.
rmidemo_callback('locate','slvnvdemo_powerwindowController/control');
Оба truth tables ссылка на подзаголовок и таблицу. Вычислите код для перехода к Truth Table и Truth Table1 блоки.
rmidemo_callback('locate',{'slvnvdemo_powerwindowController/Truth Table', ... 'slvnvdemo_powerwindowController/Truth Table1'});
Сторона водителя Mux1 ссылки на подзаголовок, включая некоторые точки маркеров. Вычислите код для перехода к блоку Mux1.
rmidemo_callback('locate','slvnvdemo_powerwindowController/Mux1');
Пассажирская сторона Mux4 ссылается только на подзаголовок. Вычислите код для перехода к Mux4 блок.
rmidemo_callback('locate','slvnvdemo_powerwindowController/Mux4');
В модели Simulink на вкладке Требования щелкните Общий доступ > Параметры отчета.
Снимите флажок «Включить сведения из связанных документов» на вкладке «Отчет» диалогового окна «Параметры требований».

В модели Simulink на вкладке Требования (Requirements) щелкните Общий доступ (Share) > Создать отчет об отслеживании модели (Generate Model Traceability Report).
Обратите внимание, что таблицы в отчете содержат только короткие метки ссылок. Это те же самые метки строк, которые отображаются в контекстных меню объектов и в диалоговом окне «Редактор связей».

В модели Simulink на вкладке Требования щелкните Общий доступ > Параметры отчета.
На этот раз выберите Включить сведения из связанных документов.
Повторно создайте отчет, щелкнув Общий доступ > Создать отчет об отслеживании модели.
Когда целевой диапазон в документе Microsoft Word включает таблицу, таблица теперь включается в созданный отчет.

Если целевое расположение в Microsoft Word является подзаголовком, дочернее содержимое включается в созданный отчет. Используйте эту функцию с осторожностью: ссылка на основной подзаголовок в документе может означать, что из документа в отчет копируются большие объемы текста.

Если целевым расположением является диапазон ячеек в Microsoft Excel, целевой фрагмент листа вставляется в отчет.

Если целевое расположение представляет собой одну ячейку в документе Microsoft Excel, содержимое ячеек справа от целевой ячейки также вставляется в отчет.

Для пользователей, связанных с IBM Rational DOORS, RMI обеспечивает больший контроль над тем, какие атрибуты объекта следует включить в таблицы требований.

Конфигурация по умолчанию будет включать заголовок объекта DOORS, текст объекта DOORS и все другие атрибуты, кроме «Created Thru», все атрибуты с пустыми строковыми значениями и системные атрибуты, которые являются ложными.
Список имен атрибутов, включаемых в создаваемый отчет, сохраняется как часть настроек RMI в разделе user prefdir.
Используйте RptgenRMI.doorsAttribs включение/исключение определенных атрибутов и/или групп атрибутов.
current_settings = RptgenRMI.doorsAttribs('show')current_settings = 6x1 cell
{'Object Text' }
{'$AllAttributes$' }
{'$NonEmpty$' }
{'-Created Thru' }
{'+Last Modified By'}
{'+Last Modified On'}
help RptgenRMI.doorsAttribs RESULT = RptgenRMI.doorsAttribs(ACTION, ARG)
API for selecting which DOORS attributes to include in generated
requirements report when the "Include details from linked documents"
option in the Requirements Settings is enabled.
Returned RESULT indicates whether the current setting was modified,
except for the 'show' action, where RESULT is a cell array of the
currently configured items.
'add' and 'remove' ACTIONS allow you to add or remove attribute named ARG
Use TYPE actions to include/exclude groups of attributes. Valid ARG
values are 'all', 'user' or 'none'.
Attributes with empty string values are skipped by default to save space
in generated requirements tables. Use the 'nonempty' ACTION to set the
empty value filter 'on' or 'off' for user-defined attributes only.
Use 'show' to query the currently configured set of attributes. Use
'default' to restore the default state.
Examples:
>> RptgenRMI.doorsAttribs('default');
>> RptgenRMI.doorsAttribs('show')
ans =
'Object Heading'
'Object Text'
'$AllAttributes$'
'$NonEmpty$'
'-Created Thru'
where macro entries are labeled with '$', explicitly added attribute
names are prefixed with '+' and explicitly excluded attribute names are
prefixed with a '-'. The default configuration will include DOORS Object
Heading, DOORS Object Text, and all other attributes, except "Created
Thru", attributes with empty string values, and system attributes that
are false.
To limit the list of attributes to a user-defined subset:
>> RptgenRMI.doorsAttribs('type', 'user')
To exclude "Last Modified By" attribute:
>> RptgenRMI.doorsAttribs('remove', 'Last Modified By')
To include "Last Modified On" attribute, even when system attributes are
not included as a group:
>> RptgenRMI.doorsAttribs('add', 'Last Modified On')
To turn OFF the "empty value" filter for user-defined attributes:
>> RptgenRMI.doorsAttribs('nonempty', 'off')
If the link label is always the same as the Object Heading for the target
DOORS object and you do not want to duplicate the information in the
report, skip the Object Heading:
>> RptgenRMI.doorsAttribs('remove', 'Object Heading')
Documentation for RptgenRMI.doorsAttribs
doc RptgenRMI.doorsAttribs
Команды очистки. Удаление открытых наборов требований без сохранения изменений и закрытие открытых моделей без сохранения изменений.
slreq.clear;
bdclose all;