工具:造卫星了只会UML2要知道SysML吗? 搞定活动图

1 简介

在前面我们知道MBSE有三大支柱,分别是建模语言、建模工具和建模思路。而其中建模语言SysML有行为图其中就有活动图,我们看看啥样。

对象管理组织OMG在对UML2.0的子集进行重用和扩展的基础上,提出了一种新的系统建模语言SysML(Systems Modeling Language),作为系统工程的标准建模语言。SysML的目的是统一系统工程中使用的建模语言。

2 行为图的活动图 act

  • 定义

活动:活动(表示法:圆角矩形或"圆角")表示功能行为流,其中可能包括可选的对象(数据)流。

它通常显示系统行为的序列和对象流向。

控制流和对象流可以是顺序的(默认的)或并行的(由分叉和连接节点指示),具体取决于条件。

示例1,某卫星系统设计的活动图

其中Action = atomic Activity,这是一个原始的可执行行为。

控制流 = 功能行为流

对象流 = 对象输入/输出到/从活动或操作的数据流。

  • 活动图(act):

活动图使用组合的控制流和对象(数据)流模型显示系统动态行为。

通过在活动定义和调用行为操作用法之间交替,可以递归分解("嵌套")活动(以及间接的活动图)(请参阅下面的使用说明)。

活动和操作可以被分配(通过表示控制块的分区(即,代表系统、子系统、子子系统等原子结构的块); 数据块(即代表持久数据存储的块)和包含数据块的信号可以分配给活动参数和操作图钉;

例2,活动图的顶级函数图

例3,活动图的函数分解图

3 活动图的目的

活动图的目的是指定动态系统行为,这些行为使用控制流和对象(数据)流来满足("满足"依赖关系)系统功能需求。如果应用得当(请参阅下面的使用说明),活动图是递归可扩展和可模拟的。

最佳使用场景:

  • 通过在活动定义和调用行为用法之间交替,递归分解("嵌套")活动。
  • 将所有活动和操作分配给代表控制块的分区。
  • 将数据块或信号分配给所有活动参数和操作引脚。
  • 确保所有活动至少满足一项功能要求。

反例:

  • Bloctivity Anti-Pattern = 混淆块和活动语法和语义。
  • SMactivity Anti-Pattern = 混淆状态机和活动语法和语义。

可以比较和对比的图:SA/SD DFD,FFBD,EFFBDs,IDEF0; BPMN BPD。

4 小结

这里粗略提供了概念和几个现成的活动图例子,一窥其貌。 后续我们继续了解其他SysML类型的图。

相关推荐
小王不爱笑1327 小时前
Spring AOP(AOP+JDBC 模板 + 转账案例)
java·后端·spring
Python私教8 小时前
Rust基本语法
后端
Python私教8 小时前
Rust环境搭建
后端
jakeswang8 小时前
ServletLess架构简介
java·后端·servletless
夕颜1119 小时前
如何让 AI 按照你的预期输出
后端
q***56389 小时前
Spring Boot--@PathVariable、@RequestParam、@RequestBody
java·spring boot·后端
q***575010 小时前
Spring Boot(七):Swagger 接口文档
java·spring boot·后端
wuxuanok10 小时前
Debug —— 部署微服务中微服务的配置文件及本地注册Nacos没问题但部署到Docker中就注册失败
docker·微服务·架构
猪猪拆迁队10 小时前
前端图形引擎架构设计:双引擎架构设计
前端·后端·架构
GISer_Jing11 小时前
Node.js 开发实战:从入门到精通
javascript·后端·node.js