工具:造卫星了只会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类型的图。

相关推荐
GoGeekBaird1 小时前
我开源了 BeeWeave,给 AI Agent 搭一个越用越懂你的知识创作台
后端·github
犀利豆4 小时前
AI in Harness(四)
人工智能·后端
Hui Baby5 小时前
Spring Security
java·后端·spring
leoZ2315 小时前
Claude 驱动的全栈开发:Spring Boot + Vue 的 BS 架构实践
vue.js·spring boot·架构
逝水无殇6 小时前
C# 运算符重载详解
开发语言·后端·c#
苏三说技术6 小时前
2026编程圈很火的10个Skills
后端
前端H6 小时前
微前端 v3 架构升级:从加载隔离到状态协同
前端·架构·状态模式
用户8356290780516 小时前
使用 Python 自动化 Excel 公式和函数:完整指南
后端·python
LYFlied6 小时前
Anthropic Agent隔离架构解读:比权限弹窗更可靠的是限制爆炸半径
人工智能·架构·软件工程·claude·安全架构·ai agent
编程(变成)小辣鸡7 小时前
Spring事务失效场景
java·后端·spring