首页 > 其他分享 >知识分享 | 轻松实现优质建模

知识分享 | 轻松实现优质建模

时间:2024-09-11 11:47:09浏览次数:1  
标签:常量 健壮性 模型 建模 轻松 确保 分享 MXAM

前言

 

 

在基于模型的开发(MBD)领域,模型的质量对于最终产品的成功至关重要。通过阅读本文,您可了解如何提升模型质量,并在整个开发过程中确保模型的一致性和质量。

 


什么是更好的建模?

 

 

更好的建模,也被称为是创建卓越软件模型的方法,对于开发高质量的软件至关重要。这一方法的关键方面包括通过精心的布局和设计保持一致的外观,确保对象和信息不被隐藏或遮挡,并遵循结构化的方法。例如,信号流应当遵循从左到右的方向,应避免信号线交叉,所有模块名称的位置应当固定在特定位置以保持一致性。这种全面的方法可确保模型不仅在视觉上清晰明确,更能保证模型的健壮性和无误,最终提高代码质量。

 


如何让模型变得更好?

 

 

为了实现更好的模型,关注几个关键方面非常重要。以下是其中部分内容的详细解析:

1. 一致的布局和设计:

布局和设计对于模型具有良好的建模风格相当重要,有助于创建外观一致的更好的模型。例如,确定模型输入端口和输出端口的数量十分重要。随意的建模风格可能会对模型的可读性和可理解性有重大影响,这也是为什么需要通过通用风格指南来确保模型易于理解的原因,尤其是对于外部评审人员来说。

> 信号流:信号流应当遵循从左至右的方向,即从左侧的所有输入端口到位于右侧的所有输出端口。

> 信号线交叉:应避免或明确信号线交叉。

> 模块名称:所有模块名称的位置都应固定在一个特定的位置,比如模块下方。

 

 

图1: 从左至右的信号流

2. 可读性和可理解性:

为了确保模型易于理解,通用风格指南必不可少。模型的设计不应隐藏或遮挡相关对象和信息。例如,有些模块可能难以识别,这使得他们是否是常量或其数值的含义不够清楚。一个拥有良好设计的模型应当确保模块清晰可识别、大小合适,并对常量明确命名,以避免混淆。

> 魔法常量:"Magic constants(魔法常量)"是来源或含义不明确的值,应当避免。这些不明确的值可导致误解和错误。风格指南建议在工作区中对常量进行命名和定义,以此来增加可理解性和可维护性,帮助区分不同的常量并明确它们在模型中的作用。

> 信号命名:一致的信号命名可提升数据流的可理解性,并减少维护工作量。总体上讲,它还有助于提高整个模型的可理解性。

图2: 信号流的可读性和可理解性

 

3. 健壮性和避免错误:

除了确保模型布局的一致性和清晰的可读性,建模风格指南同样强调模型的健壮性,并避免易出错的建模模式。这些指南旨在提升生成代码的可测试性和质量。比如,一个设计不当的模型可能导致功能问题。此处考虑一个有三个操作数的乘积运算模块;根据信号流的顺序和数据类型,此操作可能会产生不同的结果,从而潜在地导致错误。为了避免这样的问题,应当采用级联(cascade)方式进行建模操作,即根据要求明确定义操作的步骤顺序。通过将以上所有推荐考虑在内并应用风格指南,最终的模型的健壮性和可靠性更加优秀,功能性显著提升,并且降低出错的可能性。

 

> 强数据类型:信号和接口的数据类型需强类型化,因为不一致的数据类型会导致代码效率低下、精度降低、或范围违规。

 

 

如何实现更好的模型?

 


在MBD流程中,提高模型质量对于交付成功的最终产品至关重要。MES Model Examiner® (MXAM)和MES Model & Refactor® (MoRe)是实现这一目标必不可少的工具。值得一提的是,现在MoRe已集成在所有MXAM用户许可证中,用户获得了使用高级建模功能的权限。

 

MXAM提供全面的静态分析,确保模型符合AUTOSAR和ISO 26262等标准。它评估模型结构和度量指标,并提供检查建模规范的最优方法。这有助于保持模型布局和设计的一致性,使模型在视觉上清晰易读。同时,MXAM还能自动修复违背建模规范的地方,避免”魔法常量“和确保命名惯例清晰明确,提升模型的可读性和可理解性。

 

MoRe与MXAM相辅相成,通过在Simulink中自动创建符合建模规范的模型布局,显著降低模型重构时间,并提升一致性。这样自动化帮助最大程度上减少手动错误,提高模型的健壮性和可靠性。通过确保以级联(cascade)方式进行建模操作,MoRe降低了功能问题出现的可能性,使模型健壮性提升,并且无错误。

 

MXAM和MoRe可共同简化开发流程,确保创建模型的设计一致、易于理解、健壮且不易出错。这样的集成最终会带来更高质量的软件开发和更高效的工作流程。

 

注:本文转载自MES模赛思 ,作者MES模赛思

 

翻译

搜索

复制

<iframe></iframe>

标签:常量,健壮性,模型,建模,轻松,确保,分享,MXAM
From: https://www.cnblogs.com/polelink/p/18408005

相关文章

  • [Linux] Microsoft Teams 无法进行屏幕分享
    在Ubuntu22.04中,MicrosoftTeams无法进行屏幕分享的问题可能与桌面环境中的屏幕共享集成缺失有关。运行以下命令可以解决这个问题:sudoaptinstallxdg-desktop-portal-gnomexdg-desktop-portalxdg-desktop-portal是一个通用的桌面门户服务,它提供了一组标准接口,允许沙盒......
  • FastGPT一站式解决方案[1-部署篇]:轻松实现RAG-智能问答系统(含sealos云端部署、docker
    FastGPT一站式解决方案[1-部署篇]:轻松实现RAG-智能问答系统(含sealos云端部署、docker部署、OneAPI&Xinference模型接入)FastGPT是一个功能强大的平台,专注于知识库训练和自动化工作流程的编排。它提供了一个简单易用的可视化界面,支持自动数据预处理和基于Flow模块的工作流编排。Fas......
  • 【数学建模国赛】写作心得
    这里是阿川的博客,祝您变得更强✨个人主页:在线OJ的阿川......
  • 从数据洞察到智能决策:合合信息&infiniflow RAG技术的实战案例分享
    从数据洞察到智能决策:合合信息&infiniflowRAG技术的实战案例分享标题取自LLamaIndex,这个内容最早提出于今年2月份LlamaIndex官方博客。从22年chatGpt爆火,23年大模型尝鲜,到24年真正用AI落地业务场景,业界普遍都发现了从MVP到PMF不是那么容易的,具体的原因有非常......
  • 计算机毕业设计选题推荐-作品分享交流平台(摄影、绘画、书法)-Java/Python项目实战(亮点:
    ✨作者主页:IT毕设梦工厂✨个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。☑文末获取源码☑精彩专栏推荐⬇⬇⬇Java项目Python项目安卓项目微信小程序项目......
  • 【干货分享】Ftrans安全数据交换系统 搭建跨网数据传输通道
    安全数据交换系统是一种专门设计用于在不同的网络、系统或组织之间安全地传输数据的软件或硬件解决方案。这种系统通常包含多种安全特性,以确保数据在传输过程中的保密性、完整性和可用性。安全数据交换系统可以解决哪些问题?安全数据交换系统主要解决以下问题:数据泄露风险:通过加......
  • 小说推文:每日三位数收益轻松实现,稳定回报持久保障!
    该项目操作简便,仅需制作和发布视频即可,且全程可通过AI工具完成。项目潜力巨大,短视频平台用户基础广泛,覆盖面广。此外,同一视频可发布至多个平台,不会被判定为非原创。随着短视频平台的持续发展和用户基数的增长,小说推文项目依然具有很大的发展潜力。我们希望更多的人能发现并......
  • 小说推文:每日三位数收益轻松实现,稳定回报持久保障!
    该项目操作简便,仅需制作和发布视频即可,且全程可通过AI工具完成。项目潜力巨大,短视频平台用户基础广泛,覆盖面广。此外,同一视频可发布至多个平台,不会被判定为非原创。随着短视频平台的持续发展和用户基数的增长,小说推文项目依然具有很大的发展潜力。我们希望更多的人能发现并......
  • 小说推文:每日三位数收益轻松实现,稳定回报持久保障!
    该项目操作简便,仅需制作和发布视频即可,且全程可通过AI工具完成。项目潜力巨大,短视频平台用户基础广泛,覆盖面广。此外,同一视频可发布至多个平台,不会被判定为非原创。随着短视频平台的持续发展和用户基数的增长,小说推文项目依然具有很大的发展潜力。我们希望更多的人能发现并......
  • 响应式布局全解析:让你轻松掌握多端适配
    最近,山海鲸可视化的许多组件新增了一个非常实用的功能,叫作“响应式布局”。今天我来为大家介绍一下这个新功能以及它如何提升我们在不同设备上的使用体验。你可能在用手机浏览网页时注意到,有些网站在手机和电脑上的显示方式几乎相同。然而,由于手机和电脑的屏幕尺寸差异,这些网页......