UML-通信图和交互概览图(通信图和顺序图的区别与联系)
UML-通信图和交互概览图(通信图和顺序图的区别与联系)
- 一、通信图简介
- 1.消息
- 2.链接
- 二、通信图和[顺序图](https://blog.csdn.net/weixin_65032328/article/details/135587782)的联系与区别
- 三、交互概览图
- 四、顺序图转化为通信图练习
一、通信图简介
- 通信图从另一个角度描述系统对象之间的链接,强调的是发送和接受消息的对象之间的组织结构。
- 通信图由参与者、对象、链接和消息构成。
- 通信图使用长方形框表示对象,参与者使用人型符号来表示。
- 当两个对象间有消息传递时用没有箭头的直线连接,表示这两个对象之间的链接。而两个对象间传递的消息使用带箭头的直线表示,由消息发出方指向接收方。
- 顺序图通过激活期的垂直位置描述交互的时间顺序,但通信图是没有代表时间轴的生命线的,因此为表示发送消息的时间顺序,通信图的每个消息前都需要附加数字编号。顺序图中的消息编号可以省略,通信图不能省略。

1.消息
- 通信图中的消息与顺序图中的消息一样,用于描述元素间的交互明细。
- 通信图上的消息使用直线和实心箭头从消息发送者指向消息接收者。
- 与顺序图一样,通信图上的系统元素也能发送传递给自身的消息。传递给自身的消息需要一个从对象到其本身的协作链接,以便能够调用消息。
2.链接
- 链接是通信图特有的元素,是对象间发送消息的路径。链接以链接两个参与者的单一线条来表示。
- 消息是对象之间传递的数据,而链接时消息传递的基础,只有有着链接的对象才可以传递消息。
二、通信图和顺序图的联系与区别
- 通信图和顺序图在语义上是等价的,所以顺序图和通信图可以彼此转换而不会损失信息。
- 顺序图针对一个用例或子系统。
- 通信图描述对象间的协作关系及影响,针对的是整个过程中的对象。
- 顺序图侧重于描述对象交互序列,通常能够表达系统执行中的工作流。
- 通信图侧重于描述系统各对象间的关系。
- 顺序图适用于描述对象间复杂的交互。
- 通信图适用于描述多对象间的相互影响,适用于复杂的对象。
- 通信图用于组织复杂的对象群体,通过对象群体间的协作关系,实现系统行为和功能。通信图更有利于描述给定对象间的所有影响,也更适合过程设计。
- 通信图和顺序图的选择:
- 如果主要针对特定交互期间的消息流,可以使用顺序图。
- 如果集中处理交互所涉及的不同参与者与对象之间的链接,则可以使用通信图。
三、交互概览图
- 交互概览图是活动图和顺序图的混合版,其主要结构像活动图,表示一个功能的实现流程。但是参与流程的节点不是一般的动作,取而代之的是交互。
- 交互概览图是活动图的一种形式,它的节点代表交互图。交互图包含顺序图、通信图、交互概览图和时间图。大多数交互概览图标注和活动图一样。
- 交互概览图将系统内单独的交互结合起来,并针对每个特定交互使用最合理的表示法,以显示出它们如何协同工作来实现系统的主要功能。
- 交互概览图将活动图中的动作改为交互概览图的交互关系。
- 交互概览图的构成元素有初始状态、终止状态、工作流中的顺序图和通信图、交互以及判定决策点。
- 交互概览图将系统工作流中的每个过程使用顺序图或通信图来描述,并通过箭头和判定决策点将这些模型联系起来,构成一个完整的工作流。
- 交互概览图与活动图一样,都是从初始节点开始,并以最终节点结束。在这两个节点之间的控制流为两者之间的所有交互。
- 以交互概览图为用例建模时,首先必须将用例分解成单独的交互,并确定最有效表示交互的图类型。

四、顺序图转化为通信图练习
- 下图为某零售过程的顺序图,请根据此设计结果画出对应的通信图, 用于描述各个对象两两之间的协作关系。


相关文章:
UML-通信图和交互概览图(通信图和顺序图的区别与联系)
UML-通信图和交互概览图(通信图和顺序图的区别与联系) 一、通信图简介1.消息2.链接 二、通信图和[顺序图](https://blog.csdn.net/weixin_65032328/article/details/135587782)的联系与区别三、交互概览图四、顺序图转化为通信图练习 一、通信图简介 通…...
Linux 使用PS命令掌握进程管理
在Linux系统中,进程管理是系统管理员和开发人员必备的技能之一。而PS命令作为进程管理的重要工具,可以帮助我们查看和监控系统中运行的进程。本文将详细解析PS命令的使用方法和输出结果,帮助读者全面掌握进程管理的利器。 PS命令概述…...
Debian 10.13.0 安装图解
引导和开始安装 这里直接回车确认即可,选择图形化安装方式。 选择语言 这里要区分一下,当前选中的语言作为安装过程中安装器所使用的语言,这里我们选择中文简体。不过细心的同学可能发现,当你选择安装器语言之后,后续安…...
SQLite 3.45.0 发布!
SQLite 开发团队于 2024 年 01 月 18 日发布了 SQLite 3.45.0 版本,带来了一些 JSON 和优化器增强,让我们一睹为快! JSON 函数 SQLite 3.45.0 版本开始,所有的 JSON 函数将会使用全新的内部格式存储 JSON 数据,也就是…...
MongoDB聚合:$set
聚合$set阶段可以为文档添加新的字段。$set输出的文档包含输入文档中的所有现有字段和新添加的字段。$set是$addFields的别名,从MongoDB4.2开始支持。$set和$addFields等价于$project阶段,这两个阶段都等同于 $project 阶段,后者明确指定输入…...
《Python数据分析技术栈》第01章 02 Jupyter入门(Getting started with Jupyter notebooks)
02 Jupyter入门(Getting started with Jupyter notebooks) 《Python数据分析技术栈》第01章 02 Jupyter入门(Getting started with Jupyter notebooks) Before we discuss the essentials of Jupyter notebooks, let us discuss…...
【征服redis5】redis的Redisson客户端
目录 1 Redisson介绍 2. 与其他Java Redis客户端的比较 3.基本的配置与连接池 3.1 依赖和SDK 3.2 配置内容解析 4 实战案例:优雅的让Hash的某个Field过期 5 Redisson的强大功能 1 Redisson介绍 Redisson 最初由 GitHub 用户 “mrniko” 创建,并在…...
React16源码: React中的beginWork的源码实现
beginWork 1 )概述 在 renderRoot 之后,要对我们的 Fiber 树每一个节点进行对应的更新更新节点的一个入口方法,就是 beginWork这个入口方法会有帮助我们去优化整棵树的更新过程 react 它的节点其实是非常多的,如果每一次子节点的…...
5-微信小程序语法参考
1. 数据绑定 官网传送门 WXML 中的动态数据均来自对应 Page 的 data。 数据绑定使用 Mustache 语法(双大括号)将变量包起来 ts Page({data: {info: hello wechart!,msgList: [{ msg: hello }, { msg: wechart }]}, })WXML <view class"vie…...
数组练习 Leetcode 566.重塑矩阵
在 MATLAB 中,有一个非常有用的函数 reshape ,它可以将一个 m x n 矩阵重塑为另一个大小不同(r x c)的新矩阵,但保留其原始数据。 给你一个由二维数组 mat 表示的 m x n 矩阵,以及两个正整数 r 和 c &#…...
Linux centos中find命令的多种用途:按照具体应用来详细说明find的用法举例
目录 一、find命令 二、find命令的语法 (一)语法格式 (二)选项 1、选项(option)介绍 2、控制符号链接的option 3、调试选项debugopts 4、优化选项 (三)表达式expression 1、选项options 2、测试…...
服务器数据恢复—OceanStor存储raid5热备盘同步数据失败的数据恢复案例
服务器数据恢复环境: 华为OceanStor某型号存储,存储内有一组由24块硬盘组建的raid5阵列,配置1块热备盘。 服务器故障: 该存储raid5阵列中有一块硬盘离线,热备盘自动激活并开始同步数据,在热备盘同步数据的…...
Xline v0.6.1: 一个用于元数据管理的分布式KV存储
Xline是什么?我们为什么要做Xline? Xline是一个基于Curp协议的,用于管理元数据的分布式KV存储。现有的分布式KV存储大多采用Raft共识协议,需要两次RTT才能完成一次请求。当部署在单个数据中心时,节点之间的延迟较低&a…...
【CSS】解决height = line-height 文字不垂直居中(偏上、偏下)的问题
解决办法1: 查看 font-family 属性,确认是否是因为字体而导致的不垂直居中问题。 其他小知识: 基线就是小写x字母的下边缘(线) 就是我们常说的 基线。line-height 属性设置的行高也就是定义的两行文字基线之间的距离! 参考文章:…...
天津想转行学python培训班靠谱吗?
现在的职业如此繁多,很多人把高薪当成衡量工作好坏的重要标准,因此IT行业以超出其他行业几倍薪资水平成为不错的选择,而Python又以其简单易学好上手成为大家所青睐的学习目标。 Python发展前景如何 Python语言就业发展方向广泛:…...
(C语言)冒泡排序
一、运行结果; 二、源代码; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>//实现buble_sort函数; void buble_sort(int arr[], int sz) {//初始化变量值;int i 0;//嵌套循环冒泡排序;//外层循环&…...
怎么样的布局是符合可制造性的PCB布局?
满足可制造性、可装配性、可维修性要求,方便调试的时候于检测和返修,能够方便的拆卸器件: 1)极性器件的方向不要超过2种,最好都进行统一方向等要求,如图1-1所示; 图1-1 极性器件方向统一摆放 2…...
第28关 k8s监控实战之Prometheus(九)
------> 课程视频同步分享在今日头条和B站 大家好,我是博哥爱运维。早期我们经常用邮箱接收报警邮件,但是报警不及时,而且目前各云平台对邮件发送限制还比较严格,所以目前在生产中用得更为多的是基于webhook来转发报警内容到企…...
安全防御之可信计算技术
可信计算技术是一种计算机安全体系结构,旨在提高计算机系统在面临各种攻击和威胁时的安全性和保密性。它通过包括硬件加密、受限访问以及计算机系统本身的完整性验证等技术手段,确保计算机系统在各种攻击和威胁下保持高度安全和保密性。 一、可信计算基…...
FPGA引脚物理电平(内部资源,Select IO)-认知2
引脚电平 The SelectIO pins can be configured to various I/O standards, both single-ended and differential. • Single-ended I/O standards (e.g., LVCMOS, LVTTL, HSTL, PCI, and SSTL) • Differential I/O standards (e.g., LVDS, Mini_LVDS, RSDS, PPDS, BLVDS, and…...
深度强化学习在Python中的自动驾驶策略探索:运用DDPG与PPO算法技术实现及实验结果报告
python基于深度强化学习的自动驾驶策略研究 关键技术:DDPG、PPO算法、深度强化学习 内容包含:python程序实验结果报告深夜的模拟器里,一辆红色小车正在空荡的街道上蛇形前进,方向盘像喝醉似的左右乱转。这可不是什么灵异事件&…...
KiloClaw:为企业AI代理安全合规保驾护航
OpenClaw托管版KiloClaw:企业AI代理管理新方案由GitLab联合创始人Sid Sijbrandij和Scott Breitenother共同创立的Kilo,推出了面向企业的KiloClaw,它是OpenClaw平台的托管版本。该产品旨在为企业提供对员工使用AI代理执行代码库监控、邮件起草…...
Delphi经典8大天坑|第五篇:ShortString与String混用,导致字符串截断/乱码
一、现象描述项目中同时使用ShortString和string两种字符串类型,赋值时出现字符串被莫名截断(超过255字符的部分丢失),或出现乱码,尤其是在Delphi D7及以下版本中,问题更常见。典型场景:将一个长…...
3步构建数字记忆堡垒:开源工具GetQzonehistory数据留存全攻略
3步构建数字记忆堡垒:开源工具GetQzonehistory数据留存全攻略 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 在数字时代,我们的生活轨迹日益依赖在线平台&#…...
遇到一个口头机遇的答辩准备2(ai告诉的要点)
代码处理的过程,其实已经不是当时的过程了。算是事后的整理过程吧先来问下CAD二开要点,ai给出了以下十一点:一、核心原则一些操作必须包 Transaction (事务,音标:/trnˈzkʃn/)增删改图形必须用…...
场景深耕,生态共生——视程空间,让边缘算力真正落地千行百业
在AI算力产业飞速发展的今天,“有算力”已不再是核心竞争力,“能落地、能适配、能创造价值”才是破局关键。当前,众多算力企业陷入“重参数、轻场景”的内卷,导致大量算力产品停留在实验室,无法真正适配产业一线需求。…...
2026年4月OpenClaw部署教程:阿里云快速部署OpenClaw、配置百炼APIKey、集成Skill详细方法
2026年4月OpenClaw部署教程:阿里云快速部署OpenClaw、配置百炼APIKey、集成Skill详细方法。OpenClaw(原Clawdbot)作为2026年主流的AI自动化助理平台,可通过阿里云轻量服务器实现724小时稳定运行,并快速接入钉钉&#x…...
MSF(etasploit Framework)工具使用与实战
MSF工具介绍工具简介全称Metasploit Framework,是漏洞研究、渗透测试、漏洞验证的一体化平台,主要有以下五大核心模块: Auxiliary(辅助模块):漏洞扫描、信息收集、端口扫描、服务探测(无攻击载荷…...
用Python和PyTorch手把手搭建你的第一个脉冲神经网络(SNN)模型
用Python和PyTorch手把手搭建你的第一个脉冲神经网络(SNN)模型 当你第一次听说"脉冲神经网络"时,脑海中可能会浮现出科幻电影里那些会思考的机器。但事实上,这种模拟生物神经元工作方式的算法已经悄然走进现实。作为一名…...
ViGEmBus虚拟手柄驱动:让你的手柄在Windows游戏中完美适配
ViGEmBus虚拟手柄驱动:让你的手柄在Windows游戏中完美适配 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 还在为手柄无法被PC游戏识别而困扰吗&…...
