确保良好的模型架构对于开发安全和可靠的软件非常重要。本文为您介绍MES Model Examiner? (MXAM)如何优化模型架构,简化复杂度管理步骤,并最终提升软件质量。
符合ISO 26262标准的模型架构分析和可视化
一个良好的模型架构是模型能够生成安全软件的重要前提。MXAM能够帮助您分析Simulink、Stateflow、Embedded Coder和TargetLink模型的架构。分析结果包括了所有相关软件指标,以实际评估您模型的架构,复杂度和大小。MXAM快速且准确的结构与复杂度分析让您的模型一览无余,并有助于改进生成的代码。
MXAM如何降低模型复杂度,并改进生成代码
1. 快速结构概览
MXAM能够为您提供模型结构的快速和清晰的可视化概览,包括子系统、状态图结构、界面设计以及已分析系统属性的客观图表和指标。MXAM根据完善的软件指标评估模型复杂度,同时提供关于模型中使用到的要素的数量和类型的详细信息。

图1:使用MXAM中的工件导航实现快速结构概览

图2:工件导航中的control_logic
2. 对模型大小进行实际测量
我的模型大小究竟如何?MXAM中的指标“全局复杂度”能够轻松并客观地回答您的这个问题。为了计算全局复杂度,应考虑分析模块中的所有要素,也应考虑嵌套子系统中的内容。全局复杂度同样反映了模型实现的复杂度,也为效果测试和审查提供了可靠的测量标准。

图3:通过度量指标提供对模型规模的实际测量

图3:通过度量指标提供对模型规模的实际测量
3. 细致入微的分析
在“局部复杂度”数据的帮助下,我们对已实现功能的局部分布进行评估。MXAM基于halstead公制量来计算Simulink、Stateflow和TargetLink模型子系统的局部复杂度。
评估表能够快速识别复杂度热点,即模型中由于功能不平衡而导致复杂度过高的部分。由于这些部分的复杂度,这些热点通常更难测试,且更易出错。重构是常见的推荐做法,因为可以通过MXAM中可用的模型度量指标组合来帮助确定优先级。
通过“非相干度度量指标”可以评估一个子系统是否特别适合进一步拆分。该度量指标能够评估给定的Simulink子系统在多大程度上仅与一项任务有关,或是否实现了多个独立任务。如果子系统的耦合度较低,那么通过适当的拆分进行重构会更加容易。

图5:MXRAY度量显示的复杂度与非相干度
4. 高效查找子系统中的克隆
MXAM可检测克隆并评估子系统内部的依赖关系,帮助您识别复杂、易出错的模型部分,同时降低模型复杂度。这为您满足ISO 26262软件架构相关的关键要求提供了可靠支持。即使模型布局和参数发生变化,MXAM也能够轻松识别出克隆部分。因此,通过可重复使用的组件(比如引用模型或库子系统),重复使用过的功能可以被安全识别且集中化。通过这样的方式,模型和代码大小即得以控制。

图6:使用MXAM发现的克隆部分
5. 全面的文档
MXAM生成的全面报告能够让模型复杂度和结构质量的评估结果一目了然。报告中的色标可直接突出显示模型复杂度热点。详细的指标度量图表使模型实现更加透明。

图7:MXAM中关于"度量指标概览" 的综合文档
使用MXAM改进模型架构的优势
透明
- 识别复杂的模型部分(热点)
- 查找重复的子系统
简化
- 可视化模型结构
- 评估结构复杂度
度量指标
- 在模型层面计算所有相关软件度量指标
- 计算模型相关的度量指标
合规性
- 确保符合安全标准,如ISO 26262/IEC 61508(架构设计原则,第6部分,第7章)
- 确保符合质量标准ASPICE(评估软件细节设计,基本实践SWE.3.BP4)
欢迎您了解MXAM,并申请免费试用!
注:对于MES工具老用户:模型度量和复杂度分析曾是MES旧工具MXRAY的重点功能。MXRAY的功能现已完全集成在MXAM中(自MXAM v.6起)。MXRAY现已不再以独立工具提供。
*文章内容来源:MES模赛思官方网站
-
MES
+关注
关注
5文章
1098浏览量
31244 -
子系统
+关注
关注
0文章
115浏览量
12937 -
ISO
+关注
关注
0文章
288浏览量
40412
发布评论请先 登录
【大语言模型:原理与工程实践】核心技术综述
【《大语言模型应用指南》阅读体验】+ 基础知识学习
【「大模型时代的基础架构」阅读体验】+ 未知领域的感受
《AI Agent 应用与项目实战》阅读心得3——RAG架构与部署本地知识库
kicad的架构移植复杂度评估
基于可拓云的网络信任评估模型

流域重金属生态风险评估系统模型综述

评论