当前位置: 首页 > news >正文

【UML用户指南】-02-UML的14种图

1、结构图

1、类图(class diagram)

展现了一组类、接口、协作和它们之间的关系。

在面向对象系统的建模中所建立的最常见的图就是类图。类图给出系统的静态设计视图。

包含主动类的类图给出系统的静态进程视图。构件图是类图的变体。
 

2、对象图(object diagram)

展现了一组对象以及它们之间的关系。对象图描述了在类图中所建立的事物的实例的静态快照。

和类图一样,这些图给出系统的静态设计视图或静态进程视图,但它们是从真实案例或原型案例的角度建立的。
 

3、构件图 (component diagram)

展现了一个封装的类和它的接口、端口以及由内嵌的构件和连接件构成的内部结构。

构件图用于表示系统的静态设计实现视图。对于由小的部件构建大的系统来说,

构件图是很重要的(UML 将构件图和适用于任意类的组合结构图区分开来,但由于构件和结构化类之间的差别微不足道)。
 

4、组合结构图

组合结构图描述结构化类(例如:构件或类)的内部结构,包括结构化类与系统其余部分的交互点。组合结构图用于画出结构化类的内部内容。

5、包图(package diagram)

展现了由模型本身分解而成的组织单元以及它们的依赖关系。

6、部署图(deployment diagram)

展现了对运行时的处理结点以及在其中生存的构件的配置。部署图给出了体系结构的静态部署视图。通常一个结点包含一个或多个制品。

7、制品图 (artifact diagram)

展现了计算机中一个系统的物理结构。制品包括文件、数据库和类似的物理比特集合。

制品常与部署图一起使用。制品也展现了它们实现的类和构件。UML把制品图视为部署图的变体。

2、行为图

1、用例图(use case diagram)

展现了一组用例、参与者(一种特殊的类)及它们之间的关系。

用例图给出系统的静态用例视图。这些图在对系统的行为进行组织和建模上是非常重要的。

2、顺序图/序列图(sequence diagram)

顺序图和通信图都是交互图。交互图(interaction diagram)展现了一种交互,它由一组对象或角色以及它们之间可能发送的消息构成。

交互图专注于系统的动态视图。顺序图(sequence diagram)是强调消息的时间次序的交互图;通信图(communication diagram)也是一

种交互图,它强调收发消息的对象或角色的结构组织。顺序图和通信图表达了类似的基本概念,但每种图强调概念的不同视角,顺序图强调

时间次序,通信图强调消息流经的数据结构。定时图(不包含在本书中)展现了消息交换的实际时间。
 

交互图(interaction diagram)展现了一种交互,它由一组对象或角色以及它们之间可能发送的消息构成。交互图专注于系统的动态视图。

是一种交互图,强调消息的时间次序的交互图;

3、通信图(communication diagram)

是一种交互图,它强调收发消息的对象或角色的结构组织。

顺序图和通信图表达了类似的基本概念,

每种图强调概念的不同视角,

顺序图强调时间次序,

通信图强调消息流经的数据结构。

定时图展现了消息交换的实际时间。

4、状态图 (state diagram)

展现了一个状态机,它由状态、转移、事件和活动组成。状态图展现了对象

的动态视图。它对于接口、类或协作的行为建模尤为重要,而且它强调由事件引发的对象行为,这非常有助于对反应式系统建模。
 

5、活动图(activity diagram)

将进程或其他计算的结构展示为计算内部一步一步的控制流和数据流。

活动图专注于系统的动态视图。它对于系统的功能建模特别重要,并强调对象间的控制流程。
 

6、定时图/时序图(timing  diagram)

是一种交互图,它展现了消息跨越不同对象或角色的实际时间,而不仅仅是关心消息的相对顺序。

7、交互概览图

是活动图和顺序图的混合物


 

相关文章:

  • 二叉树链式结构的前序_中序_后续_层序遍历【详细图解】
  • leetCode-hot100-数组专题之子数组+二维数组
  • SSD图、用例描述
  • React Native 之 ToastAndroid(提示语)(二十一)
  • I2C协议详解
  • 日志输出-第四章-接口级(单体应用)前后端数据加解密 Filter 实现
  • 设计模式 17 组合模式 Composite Pattern
  • 网页设计步骤总结
  • C++ Qt:QString与数字之间的相互转换
  • es和mongdb对比
  • Ai速递5.29
  • 0.25W 1.5KVDC~3KVDC 隔离超小型单输出 DC/DC 电源模块——TKE-W25系列
  • 重磅发布,2024精选《制造业商业智能BI最佳实践合集 》
  • 电量计量芯片HLW8110的前端电路设计与误差分析校正.pdf 下载
  • 一个程序员的牢狱生涯(44)询问
  • [nginx文档翻译系列] 控制nginx
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • eclipse的离线汉化
  • Iterator 和 for...of 循环
  • Javascripit类型转换比较那点事儿,双等号(==)
  • JavaWeb(学习笔记二)
  • nginx 配置多 域名 + 多 https
  • PHP 7 修改了什么呢 -- 2
  • PHP 程序员也能做的 Java 开发 30分钟使用 netty 轻松打造一个高性能 websocket 服务...
  • 阿里研究院入选中国企业智库系统影响力榜
  • 飞驰在Mesos的涡轮引擎上
  • 模型微调
  • 正则与JS中的正则
  • 7行Python代码的人脸识别
  • 阿里云ACE认证之理解CDN技术
  • ​DB-Engines 11月数据库排名:PostgreSQL坐稳同期涨幅榜冠军宝座
  • ​Distil-Whisper:比Whisper快6倍,体积小50%的语音识别模型
  • ​Spring Boot 分片上传文件
  • # Swust 12th acm 邀请赛# [ K ] 三角形判定 [题解]
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • (7)svelte 教程: Props(属性)
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (STM32笔记)九、RCC时钟树与时钟 第二部分
  • (ZT) 理解系统底层的概念是多么重要(by趋势科技邹飞)
  • (笔记)M1使用hombrew安装qemu
  • (论文阅读11/100)Fast R-CNN
  • (企业 / 公司项目)前端使用pingyin-pro将汉字转成拼音
  • (四)搭建容器云管理平台笔记—安装ETCD(不使用证书)
  • ***详解账号泄露:全球约1亿用户已泄露
  • .NET Core 成都线下面基会拉开序幕
  • .NET Core 将实体类转换为 SQL(ORM 映射)
  • .NET/C# 的字符串暂存池
  • .net和php怎么连接,php和apache之间如何连接
  • @Conditional注解详解
  • @FeignClient注解,fallback和fallbackFactory
  • @Value获取值和@ConfigurationProperties获取值用法及比较(springboot)
  • [ CTF ]【天格】战队WriteUp- 2022年第三届“网鼎杯”网络安全大赛(青龙组)
  • []使用 Tortoise SVN 创建 Externals 外部引用目录
  • [120_移动开发Android]008_android开发之Pull操作xml文件
  • [AI aider] 打造终端AI搭档:Aider让编程更智能更有趣!