【研发日记】Matlab/Simulink开箱报告(十一)——Requirements Toolbox

目录

前言

[Requirements Toolbox](#Requirements Toolbox)

编写需求

需求联接设计

需求跟踪开发进度

追溯性矩阵

分析和应用

总结


前言

见《开箱报告,Simulink Toolbox库模块使用指南(六)------S-Fuction模块(TLC)

见《开箱报告,Simulink Toolbox库模块使用指南(七)------S-Fuction Builder模块

见《研发日记,MatlabSimulink开箱报告(八)------Lookup Table模块

见《研发日记,MatlabSimulink开箱报告(九)------Simulink Test模块

见《【研发日记】Matlab/Simulink开箱报告(十)------Signal Routing模块

Requirements Toolbox

Requirements Toolbox是Matlab中用来编写、链接和追溯需求的一个工具,Mathworks官方Help对该部分内容的说明如下所示:

Requirements Toolbox在Matlab中的位置在App选项卡 -> 验证、确认和测试 -> 需求编辑器,示例如下:

本文选取Requirements Toolbox中几个有代表性的应用为例,详细介绍一下具体的用法。

编写需求

打开需求编辑器后,点击新建需求集创建一个新的需求集。将需求集命名为 ReqrDemo,然后将需求集保存在 ReqrDemoProj工程的文件夹中。示例如下:

选择需求集并点击"添加需求",以向需求集添加需求。在右窗格中,使用需求中的文本向摘要属性和描述属性添加信息。摘要属性是用于标识需求的简短短语。描述属性包含有关所需行为的详细信息。点击保存来保存对需求集的更改。示例如下:

Tip1:除了上述手动编辑需求的方式之外,还可以使用其他文档直接导入需求,例如Microsoft的Word和Excel,IBM的Doors Next等;

Tip2:需求变更时,在需求编辑器里边自动会有红色高亮底纹提示,通过链接快速跳转过去,就能很方便地修改对应的代码;

需求联接设计

在Requirements Toolbox中可以创建需求与设计之间的链接,以此来建立项目开发的可追溯性。本文我们建立的完整需求和整体设计示例如下:

Matlab 复制代码
function y = fen(u,v)

inputs = [u,v];
if min(isfinite(inputs)) == 0
	error("inputs error!");
else
	y = u+ V;
end

if y<0
	y=0;
elseif y > 10
	y= 10;
end

本文中建需求与设计之间建立链接的过程是1、在需求编辑器中,选中第一条需求"输入端口"。2、在MATLAB编辑器中,选择fcn函数的函数定义行。3、右键链接到需求编辑器中的所选内容。4、链接成功后就可以在需求浏览器中查看到对应链接内容,可以用于快速跳转。示例如下:

Tip1:在MATLAB编辑器中,有需求链接的代码行会有黄色高亮底纹,右键也能跳转到对应的需求内容。

Tip2:项目开发迭代的时候,如果需求链接的代码发生了修改,那么在需求编辑器中点击刷新之后,对应的需求就会有红色高亮底纹,可以用于评审代码变更对需求的影响范围。

需求跟踪开发进度

基于需求的设计开发过程中,当一些设计开发出来之后,就可以用上面的方法与需求一一联接起来。在需求编辑器里会自动把这些统计起来,然后以进度条的形式呈现出来,这样就能一目了然地看到设计开发的进度,示例如下:

Tip1:需求的类型有功能性、信息性和容器三种类型,默认是功能性,会正常统计进开发进度中;

Tip2:需求的链接有实现、验证、细化、派生、涉及和确认证六种类型,默认是实现,会正常统计进开发进度中。

追溯性矩阵

需求联接到设计文件中的代码后,Requirements Toolbox会自动分析可追溯性,并以可视化的追溯性矩阵呈现出来,显示全部工件之间存在的链接关系,可以很方便地找到有缺失的地方,指导我们消除缺失。追溯性矩阵的用法示例如下:

Tips:确实的地方补充上链接之后,再回去查看开发进度,所有进度条就都拉满了。

分析和应用

Requirements Toolbox在Simulink模型开发中的作用非常强大,尤其是应用于模块化开发多人协作的大型项目时优势会更加明显,例如一些整车控制系统,车路协同系统等等的开发。项目中把这个工具箱用起来之后,可以自动跟踪开发进度,分析追溯性,指导工程师评审上下游影响范围,消除设计缺失,大大提高设计一致性、完整性和正确性,提高工程师的工作效率。主要适用于配备模块化开发团队的软件项目,可以使团队成员真正地有机结合在一起,提高需求和设计的可控性,减少软件Bug。

总结

以上就是本人在使用Simulink Test时,一些个人理解和分析的总结,首先介绍了Simulink Test的基本知识,然后展示它的使用方法,最后分析了该模块的特点和适用场景。

后续还会分享另外几个最近总结的Simulink Toolbox库模块,欢迎评论区留言、点赞、收藏和关注,这些鼓励和支持都将成文本人持续分享的动力。

另外,上述例程使用的Demo工程,可以到笔者的主页查找和下载。


版权声明:原创文章,转载和引用请注明出处和链接,侵权必究!

相关推荐
时也-K1 小时前
软件工程章节知识梳理-软件过程模型
软件工程
学习使我健康3 小时前
MVP模式
android·github·软件工程
王莎莎-MinerU5 小时前
MinerU 生态全景:Skills、RAG、MCP、Cursor Rules
人工智能·深度学习·计算机视觉·chatgpt·pdf·软件工程
TheRouter6 小时前
AI 不会消灭软件工程,它只会消灭低维的软件工程
人工智能·软件工程
EasyTrack7 小时前
易趋入选中国信通院高质量数字化转型技术解决方案集(2025 年)
项目管理·企业数字化转型·项目管理工具·易趋项目管理软件·易趋项目管理平台
lulu12165440789 小时前
Claude Opus 4.7有哪些重大升级?软件工程和视觉能力全面解析
java·人工智能·python·软件工程·ai编程
企业管理8MSaaS21 小时前
中小企业研发流程标准化与自动化管理系统
项目管理·中小企业·研发管理
一路往蓝-Anbo1 天前
第二章:STM32 bxCAN 控制器详解:从内存到总线的“中转站”
stm32·单片机·嵌入式硬件·软件工程
猴哥聊项目管理1 天前
IPD需求管理流程:从收集到验证的全链路设计
项目管理·项目经理·华为ipd管理流程·研发团队·ipd需求管理·ipd管理·ipd管理流程
JAVA+C语言1 天前
R+Python 双语言开发首选:RStudio 2025 下载安装详细教程
性能优化·软件工程