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

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

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

  • 379查看
  • 0回复

[电子架构] SysML(一)

[复制链接]


该用户从未签到

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

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


对复杂系统的建模是架构师的基础能力之一。从这篇文章开始,笔者介绍系统建模语言SysML(OMG System Modeling Language)。

SysML是一种通用的图形建模语言,用于定义、分析、设计和验证复杂系统。

这里需要注意一点,SysML仅仅是一种建模语言,不是建模方法。就像EEA建模软件PREEvision一样,它也只是对汽车电气系统建模的一种软件和工具,它不能告诉你实际操作层面应该如何建模。

SysML是基于UML的扩展,共定义了9种模型图,如图1所示。

SysML(一)w1.jpg

图1 SysML定义的模型图

我们首先来了解结构图,因为系统的结构是了解任何一个系统的基础。SysML结构图主要是对系统的组成结构以及组成元素间的关系进行描述,这也是架构的定义(组成+交互,见之前的文章“架构是个什么鬼”)所关心的最主要问题。

结构图包括:模块定义图、内部模块图、参数图(一种特殊的内部模块图)和包图。

模块定义图中可能会出现包、模型、模型库、视图、模块和约束模块。其中最重要和常见的是模块和约束模块。这篇文章笔者先重点介绍“模块”这个基本元素。

模块是SysML中的基本元素,它可以用于表示系统中的任意实体,我们可以使用模块对系统中的实体进行建模。

既然SysML是一种图形建模语言,那首先要解决的问题是如果通过一个图形来表达模块这个基本元素,如图2所示。

SysML(一)w2.jpg

图2 模块的图形表达方式

模块通过带有<<block>>标识的矩形框表示,其后带有模块的Name(用户自定义),还可以通过可选的其他分隔框,用来标识模块的其他部分。如图2所示,该模块包含"值属性" 和 "操作属性"分隔框。

模块的属性包括结构属性和行为属性两个大的类别。既然模块定义图属于结构图的一种,那么模块属性的作用就要表达出与模块结构相关的属性,本质上也就是表达模块之间的关系。

模块的名称和属性其实很好理解,系统的任何实体必然需要有个名称,而不管是结构属性还是行为属性,都是表达模块之间的一种关系。

在之前的文章“架构与关系”中,笔者提出事物之间的5种主要关系:概念关系、空间关系、时间关系、行为关系和因果关系。模块的名称可类比为概念关系,名称就是概念的命名,结构属性必然也包括空间、时间和因果关系,而行为属性可以类比为行为关系。

以上只是笔者做的一种类比,因为SysML建模语言毕竟只是对现实世界中真实系统的一种抽象,模型不是系统本身,不可能表达出系统的所有方面。因此SysML中模块的属性也不可能等同于现实世界中的实体属性,模块属性只是根据建模的需要,对实体某一方面做的一种抽象表达。

结构属性包括值属性(图2中的Values就代表值属性)、约束属性、引用属性、组成属性、端口共 5 种类型。行为属性包括操作(图2中的operations就代表操作 )和 接收(receptions)。

未完待续。。。

快速发帖

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

本版积分规则

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

GMT+8, 20-11-2024 17:23 , Processed in 0.320578 second(s), 30 queries .

Powered by Discuz! X3.5

© 2001-2013 Comsenz Inc.