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

В этом примере показов, как найти требования, которые не прослеживаются для Модельно-ориентированного проектирования элементов, и как проследить эти требования, создав связи с матрицей трассируемости.

Матрица прослеживаемости отображает ссылки между элементами программных продуктов Модельно-ориентированное Проектирование, таких как объекты Requirements™ Simulink ®, элементы модели Simulink, объекты Simulink Test™ и линий кода MATLAB ®. Можно применять фильтры и фокусироваться только на элементах, которые вы хотите видеть. Можно использовать матрицу, чтобы идентифицировать несвязанные элементы и реализовать их в проекте.

Для получения дополнительной информации о том, как использовать матрицу трассируемости, смотрите Track Requirement Links with a Traceability Matrix.

Откройте Определение требований для проекта Cruise Control Model. Загрузите crs_req_func_spec набор требований.

slreqCCProjectStart;
slreq.load('crs_req_func_spec');

Сгенерируйте матрицу трассируемости

Откройте окно Матрица Трассируемость.

slreq.generateTraceabilityMatrix;

В окне Матрица нажмите Add.В диалоговом окне Select Artifacts установите значение Left crs_req_func_spec.slreqx и установите Верхнюю часть равным crs_controller.slx. Затем щелкните Сгенерировать матрицу. Матрица трассируемости генерируется с заданным набором требований слева и моделью Simulink верхней части.

Идентификация незакрытых требований

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

Прокрутка до System Interface > Inputs родительское требование. Нажмите возможности, чтобы фокусировать матричное представление на этой иерархии. Требования к детям в соответствии с Inputs не имеют ссылок на блоки в модели Simulink. Однако созданная вами матрица трассируемости показывает только ссылки между crs_req_func_spec набор требований и crs_controller модель. The crs_req_func_spec набор требований может иметь больше ссылок на другие программные продукты в вашем проекте.

Сгенерируйте матрицу трассируемости с несколькими программными продуктами

Чтобы просмотреть ссылки между несколькими программными продуктами одновременно, можно создать мультипрограммный продукт. Нажмите Configure Matrix, чтобы добавить дополнительные программные продукты в матрицу. В диалоговом окне Configure Matrix, на панели Available Artifacts, выберите crs_req_func_spec.slreqx. Программные продукты, которые имеют ссылки между выбранным программным продуктом, подсвечиваются на панели «Доступные программные продукты». В этом случае каждый программный продукт содержит ссылки между crs_req_func_spec набор требований, за исключением crs_req_func_spec.slreqx сам. Перетащите все выделенные программные продукты в верхний список программных продуктов. Значок развертывания () в предварительном просмотре матрицы указывает, что между элементами этих программных продуктов существуют ссылки.

Нажмите Update Matrix, чтобы добавить программные продукты в матрицу трассируемости. Начиная с крайнего левого столбца в верхней строке, выберите каждый программный продукт и нажмите Свернуть все. Синие линии в матрице указывают, где один программный продукт заканчивается, а другой начинается.

Выберите Inputs родительское требование и нажатие кнопки Возможностей, чтобы сосредоточиться на Inputs требования к детям. Щелкните Подсветить отсутствующие связи (Highlight Missing Links). Теперь вы можете увидеть, что некоторые требования ребенка в Inputs ссылка на элементы в crs_plant модель.

Ссылка на несвязанные Inputs Для элементов модели

The crs_controller и crs_plant модели содержат элементы модели, которые связаны с Inputs требования к детям, однако не все из Inputs требования к детям связаны. Соедините все Inputs требования ребенка к элементам модели для полной трассируемости. Сначала нажмите Configure Matrix и удалите все программные продукты из Матрица, кроме crs_req_func_spec слева, и crs_controller и crs_plant в верхней части, щелкнув правой кнопкой мыши по программным продуктам и выбрав Удалить Программные продукты. Нажмите Update Matrix. В обновленной матрице выберите Inputs родительское требование и нажатие кнопки Возможностей, чтобы сосредоточиться на Inputs требования к детям.

Некоторые требования к дочерним элементам связаны с элементами в crs_plant. Связать оставшиеся незарегистрированные Inputs требования к дочерним элементам для элементов модели в crs_controller. Выберите камеру, соответствующую crs_controller и нажмите Возможности.

Чтобы сосредоточиться на незакрытых требованиях, примените фильтр «Отсутствующие ссылки». На панели «Фильтр» в разделе «Слева» в разделе « Ссылке» нажмите «Отсутствующие Ссылки». Фильтр пропускает строки со связанными элементами. Можно проверить это, нажав Подсветку Отсутствующие Ссылки.

Свернуть CruiseControlMode, DriverSwRequest и TargetSpeedThrottle подсистемы путем выбора каждой подсистемы и нажатия кнопки Свернуть все. Создайте ссылку между Enable Switch требование и enbl Блок путем выбора камеры, соответствующей этим двум элементам, и нажатия кнопки Создать. В диалоговом окне «Создание ссылок» установите для параметра «Тип» значение Implements, затем нажмите кнопку Создать, чтобы создать ссылку между этими двумя элементами.

Можно создать несколько ссылки в то время, когда вы удерживаете Ctrl, выбрать камеры, в которых вы хотите создать ссылки, и нажать Создать ссылки. Создайте ссылки между оставшимися требованиями и соответствующим элементом модели:

  • The Cancel Switch требование и cncl блок

  • The Set Switch требование и set блок

  • The Resume Switch требование и resume блок

  • The Increment Switch требование и inc блок

  • The Decrement Switch требование и dec блок

  • The Key Position требование и key блок

В диалоговом окне «Создание ссылок» установите значение «Type» равным Implements для всех ссылок.

Очистить фильтр Отсутствующие ссылки можно нажав кнопку Удалить фильтр в списке верхних программных продуктов. Щелкните Показать все (Show All), чтобы показать все программные продукты. Все Inputs дочерние требования привязываются к элементам проекта, поэтому они больше не подсвечиваются. Сверните иерархии под crs_controller и crs_plant. Значок развертывания () указывает, что все Inputs требования к детям связаны.

Открытые элементы в контексте программного продукта

Можно открыть элементы в строках и столбцах контекста программного продукта, дважды щелкнув камеру, соответствующую элементу. Для примера двойной клик по камере, соответствующей блоку Simulink, открывает модель Simulink и подсистему, в которой находится блок.

Откройте Enable Switch требование в редакторе требований путем двойного щелчка по нему. Добавить дополнительный текст к требованию Описание: "The Cruise button enables the cruise control as long as all other conditions are met." Затем нажмите кнопку Сохранить.

В редакторе требований сводные данные требований и связанная ссылка (перечисленные на панели «Сведения» в разделе « Ссылках») выделены красным цветом, поскольку ссылка, связанная с этим требованием, имеет проблему с изменениями.

Просмотр и устранение проблем с изменениями

При изменении требования, связанного с другим элементом, требование выделяется красным цветом, что указывает на проблему изменения, связанную со ссылкой. У ссылки возникла проблема с изменениями, поскольку вы изменили описание Enable Switch требование.

Вернитесь к матрице трассируемости. Нажмите Обновить, чтобы обновить матрицу. Выберите Inputs родительское требование и нажатие кнопки Возможностей, чтобы сосредоточиться на Inputs требования к детям. Выберите «Подсветить отсутствующие связи» > «Подсветить измененные связи», затем выберите «Подсветить отсутствующие связи» > «Показать только измененные связи». Отображаются ссылки, связанные с проблемами изменения, а требования, связанный элемент и ссылка выделены красным цветом.

Поскольку вы изменили только описание, это изменение не повлияло на реализацию или верификацию требования. Для устранения проблемы с изменением выберите камеру, содержащую ссылку, а затем щелкните Удалить проблему с изменениями. В разделе "Комментарий" введите "Added additional information to the requirement description."Затем нажмите кнопку" Удалить все ".

Можно просмотреть комментарий, выбрав ссылку в редакторе требований, на панели сведений в разделе Комментарии.

Сгенерируйте отчет из матрицы трассируемости

Обновите матрицу, чтобы отразить устраненные проблемы с изменениями, нажав кнопку Обновить. Выберите Inputs требования к родителям и нажатию кнопки Возможностей. Разверните все ссылки, выбрав камеру, содержащую значок развертывания () и нажатие Развернуть все (Expand All). Сверните все иерархии, не содержащие ссылок, нажав Свернуть все. В этом представлении показаны ссылки на Inputs требования к детям. Сгенерируйте HTML, содержащий статический снимок текущего представления матрицы трассируемости, щелкнув Экспорт > Сгенерировать HTML. Выберите место для сохранения файла и нажмите кнопку Сохранить.

Очистка

Очистите открытые наборы требований и наборы ссылок и закройте окно Матрица Трассируемость. Закройте все открытые модели.

slreq.clear;
bdclose all;

См. также

|

Похожие темы