利用数字线程监控工件可追溯性并检测过时结果
当您开发符合行业标准和准则的软件时,您需要负责创建和管理大量的工件。这些工件通常包括需求、模型、测试和生成的结果。通常情况下,这些工件之间存在依赖关系,这意味着对一个工件的更改可能需要您重新处理或重新分析下游工件和衍生工件。您可以利用这些工件及其关系的信息来帮助评估您的开发活动的状态。例如,您可以为您的工程启用数字线程。数字线程是一组元数据,用于存储有关工程中工件和关系的信息。
本页解释了数字线程的优势、数字线程的工作原理以及如何为您的工程启用数字线程支持。
数字主线的优势
数字主线允许您访问工程中工件、工件结构体以及工件之间关系的数据。您可以分析在数字线程中存储的信息,同时对工程进行更改。
拥有数字主线可以让您:
跟踪工件的更改
工件之间的追踪关系
找出过时的结果
对结果进行增量更新
当您对工程中的工件进行更改时,数字线程会识别这些更改并逐步更新元数据信息,从而为您提供一个集中的可追溯性信息和度量结果来源,您可以与团队共享这些信息和结果。

多个 MathWorks® 应用和工具利用数字线程中的信息来识别可追溯性关系、汇总度量结果并执行增量构建。
| 应用 | 功能 | 示例 |
|---|---|---|
| 可追溯性 | 点击模型设计和模型测试仪表板中的可追溯性选项卡 | 使用溯源视图探索可追溯性信息。 |
| 度量和仪表盘 |
| 使用模型测试仪表板探索测试活动的状态和质量 |
| 增量构建 | 过程顾问(CI/CD Automation Simulink Check 支持包) | 持续集成 |
数字线程分析
数字线程对您的设计执行两个主要操作:工件跟踪和派生工件跟踪。
工件追踪
在工件追溯过程中,数字线索:
识别工程文件夹中的工件
识别潜在的软件单元和组件
为每个工件创建通用唯一标识符 (UUID)。
创建设计结构体的索引
存储每个工件的表征、其内部结构体以及与其他工件的关系。
工件分析允许数字线程将设计中的众多工件和关系转换为可用的工件和可追溯性信息。

您可以使用仪表板中的跟踪视图查看数字线程中的工件和可追溯性信息的子集。跟踪视图是一个交互式图,显示工程中工件的特定预设可追溯性信息。例如,您可以查看数字线程追溯到工程中软件单元的需求链接和设计工件。如果将光标指向图中的某个工件,就可以查看该工件的详细信息并直接打开该工件。有关详细信息,请参阅使用溯源视图探索可追溯性信息。。
随着您对设计进行更改,数字线程会持续监控工程文件夹中的文件,并逐步更新其对工件和工件关系的表示。数字线程可以检测到何时移动工程文件,并为工件和工件内的元素保持相同的 UUID。如果数字线程无法分析某个工件或关系,则会返回警告或错误消息。有关详细信息,请参阅在工程中查看工件问题。
衍生工件的跟踪
数字线程可以跟踪 MathWorks 应用程序(如测试管理器)的输出,以帮助您识别新的工件并维护有关影响您设计的工件的最新信息。例如,如果您运行一个测试,数字线程会记录有关测试依赖项的信息,并且可以识别上游依赖项更改时需要重新运行哪些测试。
有关数字线程如何帮助您识别和解决常见可追溯性问题的示例,请参阅 修复基于需求的测试问题。
启用数字线程支持
要为您的工程启用数字线程支持,您需要为您的工程启用工件跟踪。如果您使用像模型测试仪表板这样的 App,当您第一次打开该应用程序时,该 App 会自动提示您为工程启用工件跟踪。
下次您使用需要数字线程的应用程序或工具时,数字线程软件会对您的工程进行初步分析,并创建用于存储数字线程的衍生文件。
数字线程创建
首次打开需要数字线程的应用程序或使用 API 时,数字线程软件会执行初始分析,识别工程中的每个工件、其内部结构体以及工件之间的可追溯性关系。
数字线程会在您的工程中创建一个新文件夹 (derived),并将分析结果存储在 derived 文件夹内的两个文件中。
artifacts.dmr- 存储工程中工件的信息、其内部结构体以及工件之间的可追溯性关系。resultservice.dmr- 存储任何度量结果
初步分析之后,数字线程可以跟踪工程中工件的变化,并逐步更新存储在 DMR 文件中的元数据信息。DMR 文件与平台无关,并且在 MATLAB 会话中持续存在,这使得数字线程能够跨不同的工件执行可追溯性分析,而无需在本地加载或访问工件。
注意
数字线程无法在不同的 MATLAB 版本之间移植。如果您的工程有来自先前版本的 DMR 文件,则数字线程会将文件重命名为 artifacts.dmr.old,并为当前版本创建一个新的 DMR 文件。
您可以通过在仪表板工具栏中点击选项和点击数字线索设置来查看工程的数字线程设置。
在 CI 中分享数字线程
如果您使用持续集成 (CI) 系统,则可以将数字线程的 DMR 文件视为派生工件,从而在团队中共享工程的数字线程。当团队成员从源代码控制克隆工程时,他们可以下载最新的衍生文件,包括包含工程最新分析的现有数字线程。团队成员随后即可照常开展工程工作。当团队成员向源代码控制系统提交更改时,他们不会将任何衍生工件检入源代码控制系统。相反,CI 系统对数字线程执行增量更新。要更新 CI 系统中的数字线程,您可以让 CI 系统使用 execute 函数执行度量引擎,或者使用 updateArtifacts 函数更新跟踪信息。然后,您可以使用数据库或存储库管理工具来管理派生的 DMR 文件。

另请参阅
metric.Engine | digitalthread.settings | execute | updateArtifacts