Main Content

本页采用了机器翻译。点击此处可查看英文原文。

ReqIF 文件导入需求

您可以从使用需求交换格式 (ReqIF™) 文件的第三方需求管理工具导入需求和链接。Requirements Toolbox™ 将 ReqIF 需求和链接类型及属性映射到 Requirements Toolbox 需求和链接类型及属性以及自定义属性。您可以在第三方工具中管理需求,也可以将需求迁移到Requirements Toolbox。如果您在第三方工具中管理需求,您还可以在工具中导入的引用需求和原始需求之间导航。

选择导入映射

当您从 ReqIF 文件导入需求和链接时,必须选择一个导入映射,将 ReqIF 需求和链接类型及属性映射到 Requirements Toolbox 需求和链接类型、属性和自定义属性。

提示

除了使用内置或通用映射之外,您还可以在导入期间创建配置文件,以映射 ReqIF 需求和链接类型及属性。Requirements Toolbox 将每个 ReqIF 需求和链接类型映射到配置文件中的新原型,并将需求和链接属性映射到原型属性。有关更多信息,请参阅 从 ReqIF 文件导入时使用原型

Requirements Toolbox 包含这些第三方工具的导入映射:

  • IBM® DOORS®

  • IBM DOORS Next

  • Polarion®

  • PREEvision

  • Jama

Requirements Toolbox 还包含一个通用映射,如果您的第三方工具没有导入映射,则可以使用它。

当您导入 ReqIF 文件时,软件会根据您选择的导入映射来映射需求和链接类型和属性。

导入映射描述
  • IBM DOORS

  • IBM DOORS Next

  • Polarion

  • PREEvision

  • Jama

  • 需求导入时将 Type 设置为 Functional

  • 需求属性映射到内置需求属性,包括 Custom IDIDSummaryDescriptionCreatedByCreateOnModifiedByModifiedOn,或者映射到新的自定义属性。每个工具的导入映射以不同的方式映射需求属性。

  • 链接导入时将 Type 设置为该工具映射文件中描述的类型,或 Relate

  • 链接属性 Text 映射到链接属性Description。其他链接属性不导入。

泛型
  • 需求导入时将 Type 设置为 Functional

  • 需求属性映射到内置需求属性,包括 Custom IDIDSummaryDescription,或者映射到新的自定义属性。

  • 链接导入时将 Type 设置为 Relate

  • 链接属性 Text 映射到链接属性Description。其他链接属性不导入。

导入需求后,您可以编辑类型和属性映射。有关更多信息,请参阅 Map ReqIF 类型和属性

定义替代映射

您还可以为您的工具定义自定义导入映射,指定如何映射需求和链接类型和属性。

要定义自定义导入映射,请创建一个使用类似于目录 fullfile(matlabroot,"toolbox","slrequirements","slrequirements","attribute_maps") 中定义的映射文件的结构体的 XML 文件。在 XML 文件中,将 datamodel.MappingOptions 元素的 name 属性设置为第三方工具在生成的 ReqIF 文件中为 REQ-IF-TOOL-ID 元素指定的相同名称。

要使用自定义导入映射,请使用 rmipref 函数的 ReqifMappingFilePath 名称值参量注册包含该映射的文件夹。当您导入 ReqIF 文件时,如果自定义导入映射 XML 文件中的名称与 ReqIF 文件中的名称匹配,Requirements Toolbox 会选择与您的第三方工具匹配的导入映射。否则,您可以从列表中选择自定义映射。有关更多信息,请参阅 导入需求

要刷新已注册的自定义导入映射,请使用 slreq.updateReqIfMappings 函数。要取消注册自定义导入映射,请将 rmiprefreqifMappingFilePath 名称值参量设置为空字符串,然后刷新已注册的自定义导入映射。

导入需求

要从 ReqIF 文件导入需求:

  1. 使用以下方法之一打开需求编辑器

    • 在 MATLAB® 命令行中,输入:

      slreq.editor
    • 在 MATLAB App 选项卡中,在验证、确认和测试下,点击需求编辑器

    • 在 Simulink® App 选项卡中,在模型验证、确认和测试下,点击需求编辑器

  2. 需求编辑器中,点击导入

  3. 在导入需求对话框中,将文档类型设置为 ReqIF 文件(* reqif 或 * reqifz)

  4. 文档位置旁边,点击浏览并选择ReqIF文件。

    The Importing Requirements dialog is shown with Document type set to ReqIF file, Document location set to CruiseControlReqs.reqif, Attribute mapping set to Generic, and Allow updates from external source selected.

  5. 属性映射下,将源工具设置为您想要的导入映射。请参阅选择导入映射

  6. 目标下,点击浏览。输入文件名,选择保存新需求集的位置,然后点击保存

  7. 选择是否允许更新导入的需求。如果您想在第三方工具中管理导入的需求,请选择支持外部源更新,它将需求作为引用需求导入。如果您想将您的需求迁移到Requirements Toolbox,请清除支持外部源更新。有关导入选项的更多信息,请参阅 选择导入模式

  8. 点击导入导入需求。

导入的需求维护需求层次结构。

提示

要导入与需求相关的图像,请使用第三方工具将需求导出为.reqifz文件,然后将该文件导入到Requirements Toolbox

从具有多个规范的 ReqIF 文件导入需求

ReqIF文件中的需求属于规范。如果您导入包含多个源规范的 ReqIF 文件,则可以在导入需求对话框中的源设定部分中选择这些规范。您可以:

  • 选择单个 ReqIF 源规范导入到需求集。在导入需求对话框中,在源设定下,选择导入单个设定并从列表中选择一个规范。

  • 将 ReqIF 源规范合并为一个需求集。在导入需求对话框中,在源设定下,选择将所有设定组合到一个需求集中

    如果您选择支持外部源更新,那么每个规范都会导入到单独的导入节点。您可以独立更新每个导入节点。否则,每个源规范都作为父需求导入,而规范中的所有需求都作为其子需求导入。

  • 将每个 ReqIF 源规范导入到单独的需求集。在导入需求对话框中,在源设定下,选择将每个设定导入一个单独的需求集中。在目标下,文件夹旁边,点击浏览并选择用于保存需求集的目标文件夹位置。

    The Importing Requirements dialog is shown with Source specifications set to Combine all specifications into one Requirement Set.

    生成的需求集文件名与源规范名称相同。如果您拥有与选定目标中的某个源规范同名的现有需求集文件,则会覆盖该文件。

提示

对于较大的 ReqIF 文件,考虑将每个源规范导入单独的需求集,有助于减少文件冲突并帮助您跟踪各个需求集集中的差异。

在决定对包含多个源规范的 ReqIF 文件使用哪种导入方法时,请考虑是否要导入链接以及是否计划导出回 ReqIF。有关更多信息,请参阅 导入链接具有多个规范的 ReqIF 文件的注意事项

导入链接

当您将 ReqIF 文件导入到需求集时,您也可以导入链接。要导入链接,请在“导入需求”对话框中的“源链接”下选择“导入链接”以保留来自“ReqIF”文件的链接。导入后,Requirements Toolbox 链接集文件包含需求和其他基于模型的设计项目之间的链接。

The Importing Requirements dialog is shown with Import links selected.

使用多个源规范从 ReqIF 文件导入链接

当您从具有多个源规范的 ReqIF 文件导入链接时,您导入源规范的方式会影响链接导入。如果您:

  • 将单个规范导入需求集,Requirements Toolbox仅导入链接该规范内需求的链接。此次导入可能会遗漏来自ReqIF文件的某些链接。

  • 将多个 ReqIF 源规范合并为一个需求集,解析后的链接导入到一个链接集中。

  • 将每个 ReqIF 源规范导入到单独的需求集,将解析的链接导入到单独的链接集。

Requirements Toolbox 生成的 ReqIF 文件中导入链接

如果您将 Requirements Toolbox 中的需求链接到需求集未包含的项(如 Simulink模块),然后将该需求和相关链接导出到 ReqIF 文件,则导出过程会将链接项的链接代理对象插入到 ReqIF 文件中。Requirements Toolbox 将链接代理对象的类型名称设置为描述某些链接对象的对象的名称。有关更多信息,请参阅 导出链接

当您重新导入此 ReqIF 文件时,软件仅针对类型名称不是 Requirement 的链接代理对象重建与链接代理对象和需求的链接。指向类型名称设置为 Requirement 的链接代理对象的链接无法重建。

要在导入 ReqIF 文件时重建链接,请在“导入需求”对话框中:

  1. 源设定下,选择将所有设定组合到一个需求集中将每个设定导入一个单独的需求集中

  2. 源链接下,选择导入链接

重建的链接使用Requirements Toolbox默认链接存储。有关更多信息,请参阅 需求链接存储。重建的链接将附加到包含链接源的工件的链接集。如果链接集不可用,则导入过程将创建一个与工件具有相同基本文件名的链接集,并将其存储在与工件相同的文件夹中。

Map ReqIF 类型和属性

导入需求后,您可以编辑 ReqIF 需求类型到 Requirements Toolbox 需求类型如何映射。根据您导入需求的方式,选择导入节点或顶级需求。在右侧窗格中的“属性映射”下,您可以编辑属性映射。您可以通过点击保存映射来保存当前映射。您可以通过点击加载映射来加载已保存的映射。有关更多信息,请参阅 编辑导入需求的属性映射

映射需求类型

要映射 ReqIF 需求类型:

  1. 打开需求编辑器。如果您将 ReqIF需求作为引用需求导入,请选择导入节点。如果您将 ReqIF需求作为需求导入,请选择顶级需求。

  2. 在右侧窗格中的“属性映射”下,点击“映射对象类型”。

    The imported requirements are shown in the Requirements Editor. The import node is selected and the mouse points to the Map Object Types button in the right pane, under Attribute Mapping. Several external attributes from the ReqIF file are shown.

  3. 在“映射对象类型”对话框中,导入的(外部)类型列出了 ReqIF 需求类型,而内部(内置或自定义)类型列出了可用的 Requirements Toolbox 需求类型。从列表中选择一个需求类型。有关需求类型的更多信息,请参阅 需求类型。您还可以选择 <添加自定义子类型> 来添加作为内置类型的子类型的自定义需求类型。有关自定义需求类型的更多信息,请参阅 使用 sl_customization 文件定义自定义需求和链接类型

    The Map Object Types dialog shows three imported requirement types and the requirement type that they map to in Requirements Toolbox.

    要添加自定义需求类型:

    1. 在添加需求子类型对话框中,将要扩展的父类型名称设置为您希望自定义需求类型继承的内置需求类型。

    2. 新子类型名称旁边,输入新的自定义需求类型的名称。

    3. 描述旁边,输入新的自定义需求类型的描述。

    4. 点击确定创建自定义需求类型。

    The Add Subtype for Requirements dialog has a drop-down menu for Parent type name to extend, a text field for New subtype name, and a text field for a description of the subtype.

  4. 点击确定来映射类型。对话框列出了更新项目的数量。

从导入的需求导航至原始需求

要从导入的引用需求导航到第三方应用中的原始需求,请创建一个导航回调函数并在 MATLAB 中注册该函数。

  1. 创建导航回调函数。或者,您可以使用 Requirements Toolbox 模板来开发导航回调函数。生成模板:

    1. 将您的需求导入到 Requirements Toolbox。

    2. 需求编辑器中,选择一个引用的需求,然后在右侧窗格中的属性下点击在文档中显示

    3. 在需求导航错误对话框中,点击转至编辑器。生成的模板在MATLAB编辑器中打开并保存在当前文件夹中。将导航回调函数添加到模板。

  2. 使用 slreq.registerNavigationFcn 为生成 ReqIF 文件的应用程序注册导航回调函数。输入生成 ReqIF 文件的应用程序的名称,该名称在 Import 节点的 Domain属性中指定。使用slreq.getNavigationFcn确认您已注册回调。

    注意

    当您注册导航回调函数并指定第三方应用的名称时,Requirements Toolbox 会将回调函数与您从指定应用程序生成的 ReqIF 文件导入的所有需求相关联。

要从 Requirements Toolbox 中引用的需求导航到第三方应用中的原始需求,请在需求编辑器中选择一个引用的需求,然后在右侧窗格中的属性下点击在文档中显示

注意

如果由于 Polarion 强制执行的导航 URL 更改而导致您在从 Polarion 中的需求导航到 MATLAB 或 Simulink 中的项目时遇到问题,则可能需要应用配置更改。打开 <polarion_installation>/polarion/configuration/ 文件夹中的 polarion.properties 文件,并通过将 localhost 替换为服务器的外部已知名称来修改这些行:

  • repo=http://localhost:80/repo/

  • base.url=http://localhost:80/

另请参阅

App

函数

相关主题