Ссылка с требованиями в IBM DOORS Next

IBM ® Engineering Requirements Management DOORS ® Next ® (ранее известное как DOORS Next Generation, или DNG) - это инструмент управления требованиями в платформе IBM Collaborative Lifecycle Management. Трассируемость файловых MBD- программных продуктов (блоки Simulink, Тесты, Записи в словаре данных) с элементами, управляемыми на общем сервере и доступными с помощью веб-браузера, могут быть выполнены несколькими различными способами. Выбор рабочего процесса будет зависеть от потребностей и ограничений данного проекта. Этот пример дает обзор функций интегрирования DOORS Next, поддерживаемых Simulink Requirements, он включает пошаговую инструкцию настройки и сравнивает альтернативные рабочие процессы. Работа с IBM ® DOORS ® Next ® поддерживается в Microsoft Windows ®.

Обзор

Simulink Requirements позволяет два различных способа интеграции с DOORS: прямое связывание между элементами проекта и веб-требованиями и подход live cache, где вы устанавливаете трассируемость изначально в рабочей области Simulink Requirements. Каждый подход имеет уникальные преимущества и проблемы.

Подход прямого связывания позволяет установить навигацию в один клик от вашего проекта до связанных требований в DOORS и от требований DOORS до связанных элементов проекта. Поскольку этот подход требует взаимодействия системного веб-браузера, необходимо строение сервера DOORS, а также индивидуальная настройка системного браузера пользователем. Поскольку адресаты ссылок являются 'внешними' по отношению к Simulink Requirements, можно использовать только ограниченное подмножество функций продукта Simulink Requirements. Например, для анализа состояния реализации и верификации, а также для отслеживания изменений потребуется дополнительный сценарий. С другой стороны, у вас есть выбор для хранения информации о ссылке в данных сервера DOORS, чтобы ссылки могли просматриваться и анализироваться на стороне DOORS без сеанса MATLAB/Simulink.

Подход Live Cache основывается на импорте снимка DOORS Requirements в Simulink Requirements. Переход от проекта или теста к связанному требованию в DOORS все еще возможен, но включает промежуточную запись прокси в наборе Simulink Requirements. Поскольку оба конца созданных ссылок относятся к областям семейства Simulink, можно в полной мере использовать функции трассируемости в продукте Simulink Requirements. Кэшированное содержимое может обновляться в любое время при изменении на стороне сервера DOORS. Кроме того, поскольку ссылки хранятся только на стороне MATLAB/Simulink, этот подход избегает проблем устаревших или конфликтующих каналов на сервере. Этот подход не обязательно требует строения на стороне сервера.

Детали ниже помогут вам решить, какой подход лучше всего подходит для вашего проекта.

Прямое звено

Можно непосредственно связать с программными продуктами DOORS Next, используя ссылку на выбранные элементы (Элементы ) в ярлыке DNG в меню Requirements для объектов Simulink, кода MATLAB или Simulink Test. Эта возможность подразумевает, что сеанс работы с MATLAB осведомлен о вашем выборе в веб-браузере DOORS Next, из-за чего требуются дополнительные шаги настройки:

  1. Пользовательские файлы виджета Simulink Requirements должны быть скопированы на сервер DOORS Next, чтобы сделать виджет доступным для пользователей DOORS Next.

  2. Каждый пользователь, заинтересованный в связывании с Simulink, должен добавить виджет на Mini Dashboard в веб-интерфейсе DOORS Next.

  3. Системному браузеру должно быть разрешено общение со встроенным HTTPS-сервером MATLAB (localhost:31515).

Каждый требуемый шаг настройки описан ниже.

Серверное строение

Этот шаг выполняется администратором сервера DOORS Next один раз за установку сервера IBM. Вам нужно будет скопировать dngsllink_config подпапка из MATLAB_INSTALL_DIR/toolbox/slrequirements/slrequirements/resources/ в пользовательскую папку расширений DOORS Next. Расположение пользовательской папки расширений зависит от конкретной версии сервера Jazz. Например, если на компьютере с Windows работает сервер Jazz, папка расширений может находиться здесь:

C:\Program Files\IBM\JazzTeamServer\server\liberty\servers\clm\dropins\war\extensions

Кроме того, в строении сервера DOORS NEXT может потребоваться включить dropins. Инструкция ниже основана на следующей странице IBM: https://jazz.net/wiki/bin/view/Main/RMExtensionsHostingGuide605

  1. Определение местоположения server.xml файл в C:\[JAZZ_INSTALL_DIR]\server\liberty\servers\clm папка.

  2. Откройте этот файл в текстовом редакторе и найдите эту линию: <applicationMonitor dropinsEnabled='false' pollingRate='10s' updateTrigger='mbean'/>

  3. Изменение dropinsEnabled на 'true'.

  4. Перезапустите сервер.

Более подробные инструкции по размещению пользовательских расширений см. на странице IBM.

Строение браузера клиента

Этот шаг должен выполняться один раз каждым пользователем DOORS Next, заинтересованным в связывании с MATLAB/Simulink. После dngsllink_config пользовательские файлы расширений доступны на вашем DOORS Next server, выполните следующие действия, чтобы добавить этот пользовательский виджет к мини-панели мониторинга в веб-интерфейсе DOORS Next. Убедитесь, что ваш сервер DOORS Next защищен (HTTPS), или виджет будет работать неправильно. После логгирования в DOORS Далее:

1. В Mini Dashboard нажмите кнопку «Добавить виджет»:

Откроется меню пользовательских гаджетов.

2. Нажмите Add OpenSocial Gadget:

3. Укажите URL-адрес, соответствующий расположению кода виджета Simulink Requirements на вашем сервере. Для примера:

https://JAZZSERVERNAME:9443/extensions/dngsllink_config/dngsllink_config.xml:

4. Нажмите «Добавить виджет». Теперь ваша Mini Dashboard должна отобразить виджет Simulink Requirements:

Настройка сеанса работы с MATLAB

Этот шаг необходимо выполнять каждый раз, когда сеанс работы с MATLAB перезапускается. Используйте slreq.dngConfigure Команда для подготовки Сеанса работы с MATLAB к связыванию с DOORS Next. Следуйте инструкциям и задайте требуемые значения. URL-адрес сервера, номер порта и имя пользователя хранятся в личных пользовательских настройках. Однако каждый раз необходимо вводить пароль DOORS Next.

1. Когда появится запрос, введите имя сервера DOORS Next области и номер порта. Если при просмотре страниц DOORS Next в адресной строке браузера не отображается номер порта, введите значение по умолчанию «9443».

2. Введите имя пользователя DOORS Next, которое может отличаться от имени пользователя для входа на компьютер:

3. В ответ на запрос введите пароль DOORS Next и нажмите Enter. это нормально, чтобы увидеть несколько предупреждений в командном окне MATLAB при установлении соединения с DOORS Next. Функция будет работать, если нет ошибок.

4. После установления успешного подключения к серверу появляется диалоговое окно, позволяющее выбрать проекты DOORS Next из списка, а также предпочтительный поток строения (если включен для выбранного проекта).

5. Тест соединения между браузером и локальным хостом запускается автоматически. Этот канал связи необходим для получения сообщений в сеансе работы с MATLAB при выборе элемента DOORS Next в веб-браузере. Вы можете увидеть пустую страницу браузера и всплывающее окно из MATLAB, показывающее, что вы готовы к связыванию:

6. Если вы не видите сообщение с подтверждением, как показано выше, ваш системный браузер может блокировать HTTPS-подключения к https://localhost:31515. Чтобы решить эту проблему, разрешите подключение. Точные шаги зависят от вашего веб-браузера. Для примера:

В этом случае нажмите кнопку Дополнительно, а затем щелкните гиперссылку, чтобы разрешить подключение:

Если вы все еще не получите всплывающее окно от MATLAB, ваш сеанс работы с MATLAB может прослушивать другой (не используемый по умолчанию) номер порта, что может произойти при запуске нескольких образцов MATLAB на том же узле. Чтобы быстро проверить номер активного порта, запустите эту команду: connector.securePort. Если эта команда возвращает что-либо кроме 31515, убедитесь, что у вас нет других образцов MATLAB, работающих на том же хосте, и перезапустите MATLAB. Повторите connector.securePort команда для подтверждения правильного номера порта. Повторный запуск slreq.dngConfigure шаги настройки.

Увидев диалоговое окно подтверждения, не закрывайте окно браузера. Лучше всего повторно использовать это же окно браузера для сеанса DOORS Next при связывании с Simulink Requirements, потому что вы только что авторизовали этот образец приложения веб-браузера для связи с MATLAB. Если вы откроете новое окно браузера, в зависимости от типа и версии веб-браузера, безопасная связь с MATLAB может быть снова заблокирована. Если это произойдет, можно просто скопировать-вставить следующий URL в адресную строку браузера: https://localhost:31515/matlab/oslc/inboundTest затем снова нажмите «Перейти к localhost», чтобы разрешить соединение с MATLAB.

Односторонние ссылки из MATLAB/Simulink в DOORS Next

В DOORS Next откройте представление Показать программные продукты для интересующего набора требований и установите флажок для элемента, с которым необходимо связать. Вы заметите, что виджет Simulink Requirements обновляется для подтверждения идентификатора и метки выбранного элемента. Эта информация отправляется в MATLAB при взаимодействии с флажками DOORS Next элемента.

В Simulink щелкните правой кнопкой мыши блок, из которого необходимо создать ссылку, затем выберите Ссылка на выбранные элементы (Элементы ) в DNG в контекстном меню Требования. MATLAB может занять несколько секунд, чтобы получить дополнительные данные из DOORS Next и создать ссылку.

Еще раз щелкните тот же блок, чтобы увидеть новую ссылку в верхней части подменю «Требования». Щелкните метку ссылки, чтобы перейти от Simulink к DOORS Next:

Примечание: если вы не видите ссылку на выбранные Элементы (Элементы ) в DNG ярлыка в контекстном меню Requirements, вам, возможно, потребуется включить опцию связывания DOORS на вкладке Selection Linking диалогового окна Requirements Settings:

Кроме того, вы можете управлять этой настройкой через API командной строки:

rmipref('SelectionLinkDoors',true);

Просмотр ссылок MATLAB/Simulink с следующей стороны DOORS

Функция интегрирования DOORS Next в Simulink Requirements позволяет запрашивать ссылки MATLAB/Simulink из контекста DOORS Next. При выборе элемента из списка программных продуктов на странице DOORS Next виджет Simulink Requirements отображает информацию о выбранном элементе и предоставляет гиперссылку для запросов ссылок, сохраненных в Simulink Requirements. Щелкните Запросить ссылки из SL, чтобы получить всплывающее окно со списком входящих ссылок для выбранного элемента DOORS Next.

Следует иметь в виду, что эти ссылки не могут быть обнаружены, когда MATLAB не работает, или когда соответствующие файлы данных не загружены на стороне Simulink. Для примера ссылка, которую мы создали выше, хранится в .slmx файл для связанной модели Simulink. Если это .slmx файл не загружается в текущем сеансе MATLAB/Simulink, ссылки во всплывающем окне браузера не сообщаются. При использовании ссылок запросов из SL для проверки ссылок сначала необходимо убедиться, что:

  1. MATLAB работает

  2. Сеанс работы с MATLAB сконфигурирован для DOORS Next linking (slreq.dngConfigure шаг был завершен)

  3. все связанные связанные программные продукты проекта загружены

Список загруженных наборов ссылок можно просмотреть, запустив Редактор требований путем ввода slreq.editor в командной строке MATLAB. В редакторе требований нажмите Показ Ссылок.

Хранение ссылок в DOORS Next для двухсторонней трассируемости

Если вы предпочитаете всегда находить свои ссылки MATLAB/Simulink в контексте DOORS Next, независимо от того, работает ли Simulink или загружены связанные программные продукты MBD, у вас есть опция действительно двунаправленного связывания. Откройте диалоговое окно Requirements Settings на вкладке Selection Linking и включите флажок Modify destination for bi-directional linking.

Также можно использовать API командной строки rmipref('BiDirectionalLinking',true) для переключения опции. Если включена двунаправленная связь, каждая новая ссылка, который вы создаете, не только добавит запись в Ссылку Simulink Requirements Set, но и вставит внешний веб- Ссылку из DOORS Next, который можно увидеть на панели Ссылок для связанного элемента DOORS Next. Для перехода от элемента DOORS Next к связанным объектам в MATLAB/Simulink можно использовать гиперссылки на панели Ссылок.

При включении параметра Modify destination for bi-directional linking опции в настройках требований примите к сведению следующее:

1. Каждый DOORS Следующий пользователь увидит эти ссылки при работе с той же версией этого проекта DOORS Next, даже если они не используют Simulink или не имеют доступа к связанным программным продуктам MBD.

2. Навигация из DOORS Next будет неудачной, если MATLAB не работает, и связанный программный продукт либо уже загружен, либо может быть найден в пути MATLAB.

3. Ссылки, вставленные в DOORS Next by Simulink Requirements, не синхронизируются автоматически. Если вы удаляете ссылку на стороне Simulink, остается ссылка на DOORS Next, и вы должны удалить ее вручную.

4. Продукт Simulink Requirements не проверяет на наличие конфликтов в ссылках DOORS Next. Для примера, если пользователь Simulink A связал требование DOORS Next с блоком в модели Simulink, ссылки, вставленные в DOORS Next, будут вести себя последовательно для этого пользователя, но пользователь B увидит ссылку из DOORS Next, и может переместить его в тот же блок в своей версии той же модели Simulink, даже если его копия модели Simulink не хранит ссылку из блока Simulink в DOORS Next. Если пользователь B решает создать свою собственную ссылку от того же блока к тому же элементу DOORS Next, в то время как его личные выборы настроены для двунаправленного соединения, это приведет к вставке дубликата ссылки на стороне DOORS Next. Если пользователь A позже передумал и удалил ссылку из блока в Simulink, а затем попытается очистить обратные ссылки из DOORS Next, обе ссылки нужно будет удалить на стороне DOORS Next, и теперь у пользователя B останется только односторонняя ссылка от Simulink до DOORS Next. Использование личных потоков и наборов изменений в DOORS Next должно минимизировать такого рода проблемы.

rmipref('BiDirectionalLinking', true);

Работа с кэшированными требованиями Наборов

Как видно из вышесказанного, как 1-сторонние, так и 2-сторонние решения прямого связывания имеют недостатки:

  • прямая привязка требует, чтобы вы изменили строение сервера DOORS Next и установили пользовательский гаджет Simulink Requirements,

  • прямая ссылка требует HTTPS-связи между вашим системным браузером и локальным процессом MATLAB, который может представлять угрозу безопасности при использовании этого же браузера для внешних веб-страниц,

  • 1-сторонние ссылки трудно обнаружить из DOORS Next side и полностью скрыты, если связанные программные продукты не загружены в текущем сеансе работы с MATLAB,

  • 2-сторонние ссылки могут стать трудными для управления в крупных многопользовательских проектах или при переключении между DOORS Next потоками и наборами изменений,

  • вы не можете управлять типом ссылок из DOORS Рядом с MATLAB/Simulink, ссылки всегда имеют типовой тип «Link To»,

  • встроенный анализ в продукте Simulink Requirements не охватывает прямые ссылки.

Чтобы устранить эти ограничения и обойти большинство сложностей, Simulink Requirements предлагает совершенно другую опцию рабочего процесса: можно кэшировать подмножество требований DOORS Next в внутренне управляемый Набор требований Simulink, затем выполнить все связывания и анализ в среде Simulink Requirements, как и с обычными внутренне управляемыми или импортированными записями.

Вы не сможете редактировать кэшированные ДВЕРИ Следующее содержимое локально, и вы не сразу увидите обновления, когда требования к источникам будут обновлены на сервере, но вы получаете преимущество нативной поддержки связывания между программными продуктами Simulink, включая перетаскивание связи с объектами Simulink, не нарушая при этом сторону сервера, и вы можете использовать все функции продукта Simulink Requirements для просмотра и анализа ссылок, включая статус реализации и верификации, а также обнаружение влияний изменений и управление ими.

Захват СЛЕДУЮЩИХ наборов DOORS в набор Simulink Requirements

В редакторе требований нажмите кнопку Импорт. Выберите «IBM DOORS Next Generation» в селекторе типа документа:

Как и прежде, вам будет предложено пароль входа DOORS Next. Если это ваше начальное подключение для текущего сеанса работы с MATLAB, вам также будет предложено подтвердить URL-адрес сервера и имя пользователя.

Селектор расположения документа будет заполнен именами всех проектов DOORS Next, доступных на указанном сервере. После выбора проекта для импорта появятся дополнительные элементы управления опции:

Для захвата содержимого DOORS Next в Simulink Requirements поддерживаются два различных режима. Можно импортировать указанный модуль, включая иерархические отношения между требованиями DOORS Next, или можно переключиться в режим Filter by query, который создает плоский список совпадающих требований.

При использовании опции Filter by query, в большинстве случаев, вам не нужно будет вводить выражение запроса вручную, но используйте диалоговое окно Query Builder, чтобы сконфигурировать фильтр:

При импорте с помощью Фильтра по запросу можно использовать только один фильтр за раз.

В обоих случаях вы получаете узел Импорт верхнего уровня с идентификатором, соответствующим имени вашего проекта DOORS Next. В Сводном тексте узла Импорт будут указаны параметры, используемые при сборе данных из DOORS Next. Теперь можно работать с импортированными элементами так же, как с обычными записями в Simulink Requirements:

  • создавать ссылки со связанными программными продуктами MBD и использовать все встроенные возможности анализа.

  • перейдите к исходным требованиям в DOORS Next нажав кнопку Показать в документе,

  • обновить захваченное содержимое с помощью кнопки Update from Server,

  • когда вы сохраняете в .slreqx файл, ссылки сохраняются в соответствующее .slmx файл.

Одно из существенных различий, однако, заключается в том, что вы не можете разблокировать и изменить кэшированные требования: все необходимые обновления должны происходить на стороне сервера. Затем нажмите кнопку «Повторно запустить запрос» для узла «Импорт» (или кнопку «Обновить с сервера» для одного требования), чтобы извлечь обновления с сервера.

Вы не можете импортировать изображения или таблицы из DOORS Next to Simulink Requirements.

Связь с захваченными ДВЕРЯМИ Следующие элементы

Теперь, когда вы захватили коллекцию требований DOORS Next, представляющую интерес, в набор требований и сохранили его в .slreqx файл, вы можете легко установить трассируемость между требованиями и дизайном, затем управлять наборами ссылок вместе с остальными программными продуктами MBD, не затрагивая других пользователей того же проекта DOORS Next. Например, можно переключить модель Simulink в перспективный вид Requirements, затем открыть захваченный набор требований DOORS Next в браузере требований и создать ссылки перетаскиванием мышью между браузером требований и блоками в схеме Simulink. Связанные блоки будут подсвечены вместе со связанными кэшированными элементами DOORS Next в браузере требований.

Просмотр и анализ данных трассируемости

Как и со ссылками на внутренне управляемые требования, вы можете получить дополнительные сведения о ссылках при выборе Links в раскрывающемся списке View. Можно редактировать такие свойства ссылки, как «Тип», «Описание», «Обоснование», «Ключевые слова» и «Комментарии».

Как и все другие ссылки Simulink Requirements, вы включаете отображение статуса реализации и верификации, чтобы проверить, какие требования не имеют покрытия, и какие тесты необходимо перезапустить или обновить.

Когда DOORS Следующие требования на сервере обновляются или удаляются, вы выполняете автоматическое обновление кэшированных подмножеств требований в Simulink Requirements, и вы проверяете представление Links на наличие отмеченных устаревших или разорванных ссылок, чтобы быстро идентифицировать необходимые изменения проекта или тестирования.