【研发日记】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工程,可以到笔者的主页查找和下载。


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

相关推荐
鸭鸭鸭进京赶烤3 分钟前
计算机工程:解锁未来科技之门!
人工智能·科技·opencv·ai·机器人·硬件工程·软件工程
艾思科蓝 AiScholar5 小时前
【连续多届EI稳定收录&出版级别高&高录用快检索】第五届机械设计与仿真国际学术会议(MDS 2025)
人工智能·数学建模·自然语言处理·系统架构·机器人·软件工程·拓扑学
A_cainiao_A1 天前
【软考】【2025年系统分析师拿证之路】【啃书】第七章 软件工程(八)
软件工程
开开心心就好1 天前
极速、免费、体积小,一款PDF转图片软件
人工智能·智能手机·eclipse·pdf·软件工程·软件需求
夏旭泽2 天前
软件工程的基本原理
软件工程
夏旭泽2 天前
软件工程的本质特征
软件工程
風落2 天前
《告别复杂PDF编辑,PDF Eraser开启便捷办公新体验》
pdf·软件工程·软件需求
欧尼戏精少女2 天前
26岁备考PMP,经验分享
职场和发展·项目管理·求职招聘·pmp·pmp备考
计软考研大C哥2 天前
【25考研】考清华的软件工程专业的研究生需要准备什么?
经验分享·考研·软件工程
软启3 天前
2、技术专家转型管理者:优势与挑战并存
项目管理