统一建模语言(Unified Modeling Language,UML)是一个通用的可视化建模语言。
UML特点:
- 是可视化的建模语言,不是可视化的程序设计语言;
- 不是过程、方法,但允许过程和方法调用;
- 简单、可扩展,不因扩展而修改核心;
- 属于建模语言的规范说明,是面向对象分析与设计的一种标准表示;
- 支持高级概念,并可重用;
- 可集成最好的软件工程实践经验。
事物:
事物(Things):事物是UML最基本的构成元素。
UML中将各种事物构造块归纳成以下四类:
- 结构事物:静态部分,描述概念或物理元素。
- 行为事物:动态部分,是一种跨越时间、空间的行为。
- 分组事物:大量类的分组。UML中,包(package)可以用来分组。
关系:
关系(Relationships)任何事物都不应该是独立存在的,总存在一定的关系,UML的关系就是把事物紧密联系在一起。
图:
图(Diagrams):图是事物与关系的可视化表示。UML中事物和关系构成了UML的图。
UML的结构图(静态模型)与行为图(动态模型):
- 类图:描述类、类的特性以及类之间的关系。
- 对象图:对象是类的实例,而对象图描述一个时间点上系统中各个对象的快照。
- 1、对象名:由于对象是一个类的实例,因此其名称的格式化是“对象名:类名”,这两个部分是可选的,但是如果包含了类名,则必须加上“:”;另外,为了和类名区分,还必须加上下划线。
- 2、属性:由于对象是一个具体的事物,所胡的属性值都已确定,因此通常会其属性的后面列出其值。
- 包图:对语义联系紧密的事物进行分组。在UML中,包是用一个带标签的文件夹符号来表示的,可以只标明包名,也可以标明包中的内容。
- 用例图:描述用例、参与者及其关系。
- 构件图:描述构件的结构与链接。
- 复合结构图:显示结构化类的内部结构。
- 顺序图:描述对象之间的交互,重点在于强调顺序。
- 通信图:描述对象之间的交互,重点在于连接。通信图和顺序图语义想通,关注点不同,可相互转换。
- 定时图:描述对象之间的交互,重点在于给出消息经过不同对象的具体时间。
- 交互概观图:属于一种顺序图和活动图的混合。
- 部署图:描述在各个结点上的部署。
- 活动图:描述过程行为与并行行为。
- 状态机图:描述对象状态的转移。