UML中的图
类图
描述一组对象、接口、协作和他们之间的关系。
对象图
描述一组对象及他们之间的关系。
识别图是类图还是对象图,可通过图中第一栏是否包含 :来判断,包含 :的图为对象图,否则为类图。
用例图
描述一组用例(功能)、参与者及他们之间的关系
用例之间的关系包括如下
包含关系(include):大功能包含小功能
扩展关系(extend):小功能指向大功能
泛化关系:儿子和父亲(空心箭头表示)
用例建模流程如下:
识别参与者
合并需求获得用例
细化用例描述
调整用例模型(可选)
顺序图
他是一种交互图,展现了一种交互。它由一组对象或者参与者以及他们之间可能发生的消息构成。
交互图专注于系统的动态视图。
顺序图是强调消息的时间次序的交互图。
顺序图相对于通信图在了解业务逻辑方面更有优势侧重于代码层面
实线箭头:调用消息
虚线箭头:返回消息
注意:以()为标准。
通信图
也是一种交互图,它强调收发消息的对象或者参与者的结构组织。
顺序图和通信图表达类似的基本概念,但强调的概念不同。顺序图强调的是时序(业务),通信图强调的是对象之间的组织结构(关系)。
侧重于代码层面
活动图
专注于系统的动态视图。表达的是业务逻辑,侧重于业务,不涉及代码,
考察点:专业术语。开始(使用实心圆表示)
结束(实心圆外再加一个圆圈)
流(箭头)
并发分岔(第一个实心矩形)
并发汇合(下一个实心矩形)
动作(空心椭圆加描述)
分支(空心菱形)
监护表达式(分支的条件)
状态图
描述一个状态机,它由状态、转移、事件和活动组成。
一个状态只能有一个初态,但是终态可以有一个或多个,也可以没有终态。
状态图由以下五个部分组成:一般状态(起始状态、终止状态)
事件
监护条件
动作
转移(转换)
状态转换
格式:事件(参数) 【条件】/ 动作
构件图(组件图)
(模块)描述一个封装的类和他的接口、端口,以及由内嵌的构件和连接构件构成的内部结构。
构件图用于表示系统的静态设计实现视图。
是类图的变体。
提供接口的模块:供接口,空心圆表示
需要接口的模块:需接口,半圆表示
部署图
部署图用来描述对运行时的处理节点及在其中生存的构件的配置。
部署图中给出了架构的静态部署视图,通常一个节点包含一个或者多个部署图。
关键词:硬件
类图中的关系
关联关系:类A中有getB(),类B中有getA()方法
依赖关系:类A需要类B,箭头指向被依赖(被需要)的一方。(实心箭头)
泛化、实现关系:儿子和爸爸的关系,空心箭头指向其爸爸类。
聚合关系:有聚有散,聚合在一起是一个整体,分开后个体独立存在。(空心菱形)
组合关系:组合在一起后分开就什么也没有了。(实心菱形)
用例图中的关系