超全的UML画图讲解,收藏了
Posted Java编程技术乐园
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了超全的UML画图讲解,收藏了相关的知识,希望对你有一定的参考价值。
怕什么真理无穷
进一步有近一步的欢喜
时序图
内容
描述了对象之间传递消息的时间顺序
用来表示用例的行为顺序
是强调消息时间顺序的交互图
描述类系统中类和类之间的交互,将这些交互建模成消息交换
元素
1.对象
对象代表时序图中的对象在交互过程中所扮演的角色
2.生命线
生命线是一条虚线,表示时序图中的对象在一段时间内的存在
每个对象的底部中心位置都带有生命线
生命线是一个时间线,从时序图的顶部一直延伸到底部
所用的时间取决于交互持续的时间
对象与生命线结合在一起成为对象的生命线
对象的生命线包含巨像的对象图标以及图标下面的生命线
3.激活
时序图可以描述对象的激活和去激活
激活代表时序图中的对象执行一项操作的时期
期活期可以被理解成C语言语义中一对花括号“{}”中的内容
激活表示该对象被占用以完成某个任务
去激活指的是对象处于空闲状态,在等待消息
4.消息
消息是定义交互和协作中交换信息的类
用于对实体间的通信内容建模
消息用于在实体间传递信息,允许实体请求其他服务
它可以激发某个操作,唤起信号或导致目标对象的创建或撤销
消息是两个对象之间的单路通信,从发送方到接收方的控制信息流
符号 | 含义 |
---|---|
绘制两个对象之间的过程调用 | |
在两个对象之间绘制消息 | |
显示过程调用返回的消息 | |
绘制反身消息 | |
绘制两个对象之间的异步消息 |
机房收费系统时序图
协作图
内容
是动态图的另一种表现形式
强调参加交互的各对象结构的信息
是一种类图,包含各类元角色和关联角色,而不仅仅是类元和关联
强调参加交互的各对象的组织
协作图可以被视为对象图的扩展
元素
1.对象(Object)
对象代表协作图交互中所扮演的角色,和时序图中对象的概念类似。只不过在协作图中,无法表示对象的创建和撤销,多以在协作图中的位置没有限制。
2.链(Link)
协作图中链的符号和对象图中链所用的顾浩是一样的,即一条 连接两个角色的实线。
符号 | 含义 |
---|---|
创建对象之间的通信路径 | |
显示对象可以调用自己的属性 | |
在两个对象之间或一个对象本身增加消息 | |
在两个对象之间多一个对象本身从反方向增加消息 | |
显示两个对象之间的信息流 | |
在反方向显示两个对象之间的信息流 |
3.消息
消息代表协作图中对象间通过链接发送的消息
链接用于传输或实现纤细的传递
一条消息会触发接受对象中的一项操作
协作图中的消息类型与时序图中的相同,只不过为了说明交互过程中消息的时间顺序,需要给消息添加顺序号
机房收费系统协作图
活动图
概述
活动是某件事情正在进行的状态,既可以是现实生活中正在进行的某项工作,也可以是软件系统中某某类对象的一个操作
活动是在状态机中它的一个非原子的执行,它由一系列动作组成,动作由kezhixing算组成,这些计算能够使系统的状态发生变化或返回一个值。
#元素
1.动作状态
动作状态是原子的,它是构造活动图的最小单位,已经无法能分解-不可中断
瞬时性
不可中断
动作状态可以有入转换,入转换既可以是动作流,也可以是对象流动作状态至少有一条出转换,这条转换以内部动作的完成为起点,与外部事件无关
动作状态和状态图中的状态不同,它不能有入口动作和出口动作,更不能有内部转移
在一张活动图中,动作状态允许多处出现
2.活动状态
可以分解成其他子活动或动作转太,由于它是一个不可中断的动作或操作的组合,所以可以被中断
活动状态的内部活动可以用另一个活动图表示
和动作状态不同,活动状态可以有入口动作和出口动作,也可以有内部转移
动作状态是活动状态的一个特例,如果某个活动状态只包含一个动作,那么它就是一个动作状态
3.动作流
当一个动作状态或活动状态结束时,该状态就会转换到下一个状态,这就是无触发转移或称为自由转移。无触发转移实际上是灭有任何特定的事件触发的转移,即当状态结束工作时就自动的发生转移
4.分支与合并
描述了软件对象在不同的判断结果下所执行的不同动作。
5分叉和汇合
一个分叉表示把一个控制流分解成两个或多个的并发运行控制流,也就是说分叉可以有一个输入转换和两个或多个输出转换,每隔转换都是独立的控制流。
汇合代表两个或多个并发控制流同步发生。当所有的控制流都到达汇合点后,控制才继续向下进行。一个汇合可以有两个或多个转换和一个输入输出转换。
6.泳道
泳道将活动图的活动状态分组,每一组表示负责那些活动的业务组织。在活动如里泳道区分了活动的不同职责,在泳道活动图中,每一个活动都只能明确的属于一个泳道。从语义上,泳道可以被理解为一个模型包。
机房收费系统活动图
状态图
状态机
状态机由状态组成,各状态由转移链接在一起。状态是对象执行某项活动或等待某个事件时的条件。转移是两个状态之间的关系,它由某个事件触发,然后执行特定的操作或评估并导致特定的结束状态。
状态图
状态图(Statechart Diagram)是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的事件做出反应。
1.状态
名字 | 由一个字符串组成,用以识别不同的状态 |
---|---|
入喉/出口动作 | 表示进入/退出这个状态所执行的动作 |
内部装换 | 不会引起状态变化 |
延迟事件 | 延迟事件该状态下暂不处理,但将推迟到该对象的另一个状态下事件处理队列 |
子状态 | 一个状态内部还包括其他状态,即为子状态 |
2.转换
源状态 | 转换之前的状态 |
---|---|
目标状态 | 转换完成后,目标所处的状态 |
触发事件 | 状态机描述了对象具有事件驱动的动态行为 |
监护条件 | 监护条件可以引用对象的属性值和触发事件的参数 |
动作 | 当转变被激活时,它对应的动作被执行 |
机房收费系统状态图
组件图
概述
组件图描述软件组件以及组件之间的关系,组件本身是代码的物理模块,组件图则显示了代码的结构
组件图中可以包含包和子系统
组件图描述了软件的各种组件和他们之间的依赖关系
元素
1.组件
组件是定义了良好接口的物理实现单元。组件是系统中可替换的物理部件,它包装了实现而且遵从并统一提供一组接口实现。组件一般表示实际存在的、物理的物件,它具有很广泛的的定义。组件的名字位于组件图标的内部,组件名是一个文本串。
2.接口
接口是一个类提供给另一个类的一组操作。如果一个类个一个父类之间没有继承关系,但这些类的行为可能包括同样的一些操作,这些操作具有同样的构造,那么不同的类之间就可以使用接口来重用这些操作。
接口有两种类型:导出接口和导入接口
导出接口:导出接口由提供操作的组件提供
导入接口:访问服务的组件使用导入接口
3.关系
组件中可以包括以下关系:依赖、泛化、关联和实现。从概念上理解,组件图可以算作一种特殊的类图,它重点描述系统的组件以及它们之间的关系。
依赖关系:
实现关系:
机房收费系统组件图
配置图
概述
配置图显示了运行软件系统的物理硬件,以及如何将软件部署到硬件上
配置图中可以包括包和子系统,它们可以将系统中的模型元素组织成更大的组块。
配置图中还可以包含组件这些组件都必须存在于配置图中的节点上
配置图描述了运行系统的硬件拓扑
配置图常被用于模拟系统的静态配置视图
节点
节点是在运行时代表计算资源的物理元素。它通常拥有一些内存,并具有处理能力。
1.名称
- 节点的名字位于节点图标的内部
- 节点名是一个文本串
- 组件名前可以加上包的名字
2.节点类型
1)处理器:处理器是能够执行软件、具有计算能力的节点,服务器、工作站和其他具有处理能力的机器都是处理器。
2)设备:设备是没有计算能力的节点,通常情况下都是通过其外接口为外部提供某种服务,哑终端、打印机和扫描仪等都属于设备
组件
配置图中还可以包含组件,可将组件包含在节点符号中,表示它们处在同一个节点上,并且在同一个节点上执行。
关系
配置图中一般包括依赖关系和关联关系
关系 | 图形 |
---|---|
关联关系 | |
依赖关系 |
配置图中的依赖关系常用于配置图的组件和组件之间
机房收费系统配置图
推荐阅读
以上是关于超全的UML画图讲解,收藏了的主要内容,如果未能解决你的问题,请参考以下文章