中国汽车工程师之家--聚集了汽车行业80%专业人士 

论坛口号:知无不言,言无不尽!QQ:542334618 

本站手机访问:直接在浏览器中输入本站域名即可 

  • 849查看
  • 0回复

[电子架构] SysML(4)

[复制链接]


该用户从未签到

发表于 30-3-2024 16:37:00 | 显示全部楼层 |阅读模式

汽车零部件采购、销售通信录       填写你的培训需求,我们帮你找      招募汽车专业培训老师


笔者在之前的文章提到“架构=组成+交互”,其实对于系统建模语言SysML来讲,其要解决的核心问题本质上也是两个,即系统是由哪些元素构成的以及这些元素之间的交互关系是什么。系统架构设计从某种意义上说就是对系统进行建模,或者说系统建模是系统架构设计的核心工作。

模块是系统的重要组成部分,而模块之间的关系也非常重要,甚至可能比模块本身更值得关注。

介绍完模块以及模块的结构属性和行为属性,这篇文章开始介绍模块之间的关系。

模块之间有三种主要关系:关联、泛化和依赖。

1、关联

关联有2种:引用关联和构成关联

1.1 引用关联

SysML(4)w1.jpg

图1 引用关联

在模块定义图中,引用关联的标识法是两个模块之间的实线,如图1所示。如果实线没有箭头则表示双向关联,如果一端有箭头,则表示单向关联(箭头指向被关联的模块)。

实线两端可以显示关联模块的角色名称以及多重性(为1时不显示),中间可以显示关联名称。关联名称是由建模者定义的字符串,描述能够存在于两个模块的实例之间的关联类型。

引用关联也可以用之前介绍的模块之间的结构属性之一“引用属性”来表达。如图2所示。

SysML(4)w2.jpg

图2 引用属性

引用关联和引用属性都可以表示系统中模块之间的结构化关系,具体使用哪一种方法,取决于建模者是否想在模块定义图中暴漏出所引用模块的信息。

1.2 组合关联

SysML(4)w3.jpg

图3 组合关联

组合关联表示模块在结构上的分解。组合端的模块实例由组成部分端模块的实例组合而成。

模块定义图中组合关联的标识法是两个模块之间的实线,在组合端有实心的菱形或者空心的菱形。实心菱形代表组成部分不能脱离组合端而独立存在,空心菱形则代表组成部分可以单独存在。

实线在组成部分有箭头,则代表组合端单向关联组合部分,没有箭头则表示双向关联。

组合关联与模块的组成部分属性都是表达模块之间的组合关系,具体使用哪一种方法,取决于建模者是否想在模块定义图中暴漏出组成部分模块的信息。

2、泛化

SysML(4)w4.jpg

图4 泛化

泛化表示两种模块之间的继承关系。其中,更加一般化的模块叫做超类型,更加具体的模块,叫做子类型。在系统建模时,泛化用来创建模块之间的层级关系。

泛化的标识法是一条实线,在超类型的一端有空心的三角箭头。从子类型向超类型读作“xxx是一种xxx”。例如,在图4中,可以读作:BCM是一种ECU。

泛化表示子类型模块会继承超类型模块的所有特性,比如模块的结构化属性和行为属性。此外,子类型模块还可以拥有超类型模块不具备的其它属性。

3、依赖

SysML(4)w5.jpg

当模块1依赖模块2时,这意味着当模块2发生改变时,模块1可能也需要改变。在两个模块之间创建依赖关系是为了确立它们之间的可追溯性。比如当市场配置表发生变更时,电气功能列表可能也需要进行变更。

未完待续。。。。。。


该用户从未签到

发表于 13-3-2025 06:28:00 | 显示全部楼层
尊敬的楼主您好,您所探讨的关于系统建模语言SysML中关于模块间关系的部分,是系统架构设计中至关重要的环节。模块间的关联关系,确实包括引用关联和构成关联等。引用关联体现了模块间的信息交互,这种交互不改变物理结构,却对系统整体功能有着直接影响。构成关联则描述了模块间的物理连接,决定了系统整体架构的稳定性与效能。因此,深入探讨和理解模块间关系的含义和特点,对系统设计者和工程师来说是非常必要的。期待后续文章能详细阐述这两种关联的具体应用和实现方式。

[内容由汽车工程师之家人工智能总结,欢迎免费使用,见贴尾]
回复 支持 反对

使用道具 举报



该用户从未签到

发表于 13-3-2025 06:28:00 | 显示全部楼层
贵方提及的关于系统建模语言SysML的探讨非常深入。关于模块间的关系,本人深表赞同。模块作为系统架构的基础,其之间的关系错综复杂,对于系统的整体性能有着至关重要的影响。

关于模块间的关联关系,引用关联是一种非常重要的关系。此关系主要表示模块间的信息交互,一个模块通过接口引用另一个模块的功能或服务。此外,构成关联则展示了模块间的组成结构关系,体现了模块间的层次和依赖。具体的引用关联图对于理解系统的工作流程和模块间的交互有着极其重要的意义。

期待后续关于模块间泛化和依赖关系的详细解析,相信对系统架构设计会有更深入的理解。

[内容由汽车工程师之家人工智能总结,欢迎免费使用,见贴尾]
回复 支持 反对

使用道具 举报

快速发帖

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|Archiver|汽车工程师之家 ( 渝ICP备18012993号-1 )

GMT+8, 16-7-2025 23:10 , Processed in 0.392694 second(s), 36 queries .

Powered by Discuz! X3.5

© 2001-2013 Comsenz Inc.