1 SysML定义
背景:
一直以来,系统工程师在进行模型系统建模时,往往会遇到建模方法不规范、不统一的问题,不同的建模方法之间包含的符号与语义不同,导致了其彼此之间不能互相操作和重用,严重影响了系统工程项目的质量和效率。
为了支持基于模型的系统工程(Model Based System Engineering, MBSE),国际系统工程学会(INCOSE)以及对象管理组织(OMG)在对统一模型语言UML进行重用和扩展的基础上,推出了一种标准的系统建模语言SysML。
定义:
系统建模语言(Systems Modeling Language)简称SysML,是针对系统工程应用的通用建模语言。系统建模语言可以进行许多系统及超系统的规格、分析、设计及验证与确认的工作。
SysML支持的系统可能包括硬件设备、软件输入、人员、规程、设施、以及其它人造和自然系统元素。SysML能够帮助实现系统的规范定义和架构设计,并定义组件的规范。这些软件可以使用其它领域语言进行设计,比如UML进行软件设计,VHDL进行电气设计等。SysML的使用有助于MBSE方法论的应用,创造一个内聚的、一致的系统模型 !
2 SysML和UML的关系
从与UML2的关系上看,SysML在一定程度上重用了UML2部分元模型,同时针对系统工程对UML进行扩展,增加了诸如需求、块、限制之类的描述系统的元素和相关图形的支持,最终确保其支持多种体系结构架构标准。如图所示,UML2中被SysML重用的部分称为UML4SysML,另外的SysML Profile是SysML中额外扩展的部分。

3 SysML的内容
内容:
从内容上看,SysML支持从结构、行为模型、需求和参数四个方面来构建系统模型,其中
•结构模型强调系统的层次以及对象之间的相互连接关系;
•行为模型强调系统中对象的行为,包括它们的活动、交互和状态历史;
•需求模型强调需求之间的追溯关系以及设计对需求的满足关系;
•参数模型强调系统或部件的属性之间的约束关系。
其SysML包含的内容如图所示,SysML提供了九种图来支持用户进行系统建模。

1)包图:包图是用来组织模型的图形,它可以按照层次关系、图表类型和视点将模型进行分类。
(2)需求图:需求是指系统必须满足的能力或条件,一个需求能够分解成多个子需求。需求图能够描述需求和需求之间以及需求和其它建模元素之间的关系。需求的描述可以有图形、表格和树形结构等各种形式。
(3)活动图:活动图用于描述工作流、业务流程,或者是将执行流分解为一系列活动和子活动的算法。活动图可以是简单活动的序列,或带有条件分支和并发的复杂系列的并行活动。泳道可以添加到活动图以显示负责执行每个活动的实体。活动图强调活动的输入和输出、顺序和条件。
(4)序列图:序列图用于描述对象间的消息交互序列。
(5)状态机图:状态机图通过状态以及状态之间的转移对离散行为建模,他把行为表示为对象的状态历史。在状态的转移、进入和退出过程中会调用活动,并指定相关的事件和守卫事件。
(6)用例图:用例图描述了外部参与者对系统的应用,这是通过系统向参与者提供一系列服务来实现的。用例图包括用例、参与者以及他们之间的通信,参与者可以是用户、外部系统或其他环境实体,它们和系统直接或间接交互。
(7)模块定义图:模块定义图显示系统和系统的基本结构元素(模块,Block),以及它们之间的关系/依赖性。但是,它一般用来描述复杂系统的层次结构,而不显示模块内部的连接关系。
(8)内部模块图:内部模块图显示模块定义图所定义的系统结构的实现。他包含了一组套件的部件(即模块的实例),这些部件由端口和接口彼此连接在一起。
(9)参数图:参数图定义了一组系统属性以及属性之间的参数关系。参数关系用来表示系统的结构模型中属性之间的依赖关系,说明了一个属性值的变化怎样影响其它的属性值,参数关系是没有方向的,可以是基本的数学操作符,也可以是和物理系统的性质有关的数学表达式如F=m*a等。参数模型是分析模型,把行为模型和结构模型与工程分析模型如性能模型和可靠性模型等结合在一起,能用来支持权衡分析,评价各种备选的解决方案。
4 SysML模型图定义
一幅示例的SysML图如下所示,每幅图都有外框、内容区域和头部。图的外框是外部的矩形,内容区域是框框内部的区域,其中可以现实模型的元素和关系,头部位于图的左上角。

头部信息的格式一般包含四段信息:
•图的类型
•模型元素类型
•模型元素名称
•图的名称

各图类型的缩写:

5 模型与视图的关系
模型的图永远不是模型本身,它只是模型的视图!


原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/tech/dev/319426.html