UML的全称是统一建模语言:Unified Modeling Language。是用来为面向对象开发系统的产品进行说明可视化和编制文档的方法。
它是一种标准的图形化建模语言,是面向对象分析与设计的一种标准表示。它的本意是能够使IT人员进行程序设计的建模。它不是程序设计语言,而是建模语言。
UML架构
UML由图和元模型组成。图是UML的语法,元模型是语义,是图的意思。UML语义定义在四个抽象级:
1元元模型:组成UML最基本的元素“事物”,代表要定义的所有事物。
2元模型:是UML的基本元素,包括了面向对象和面向组件的概念。这一层的概念都是“远远模型”中的“事物”概念的实例。
3模型层:组成了UML的模型,这一层中的概念都是元模型层中概念的实例。这一层中的模型通常叫做类模型或概念模型
4用户模型:这层中的所有元素都是UML模型的例子。这层中的概念都是模型中的一个实例(通过分类),也是元模型的一个实例(通过版类化)。这一层的模型通常叫做对象模型或实例模型。
UML的模型、视图、图和系统架构建模
UML用来描述模型,模型可以表示系统的结构和行为特征、以及行为和动态特征。从不同角度为系统架构建模,可以形成不同的模型图。包括
1、用例视图:强调从用户角度看到的或需要的系统功能,也被称作用户模型视图或想定视图。
包括:用例图。
2、逻辑视图:展现系统静态或结构组成特征,也称作结构模型视图或静态视图。
包括:类图、对象图。
3、并发视图:体现系统动态或行为特征,也叫做行为模型视图、过程视图、协作视图、动态视图。
包括:序列图、协作图、状态图、活动图。
4、组件视图:体现了系统实现的结构和行为特征,也叫做实现模型视图、开发视图。
包括:组件图。
5、展开视图:体现了实现环境的结构和行为特征,也叫做环境模型视图、物理视图。
包括:展开图。
模型图包括
1、事物:模型中最基本元素,具有代表性成分的抽象。
2、关系:它把事物紧密联系在一起。
3、图:事物和关系的可视化表示。
事物
UML包含四种事物:构建事物、行为事物、分组事物、注释事物
构建事物
它是模型的静态部分,描述概念或物理元素,包括:类、接口、协作(描述一组事物的相互作用的集合)、用例(表示一个系统或系统一部分行为,是一组动作序列的集合)、构件(系统中物理存在,可以替换)、节点(运行时存在的物理元素)。
参与者、信号应用、文档库、页表等都是基本事物的变体。
行为事物
UML模型的动态部分,描述跨越空间和时间的行为,包括
交互:实现某功能的一组构件事物的消息的集合,涉及消息、动作序列、链接等。
状态机:描述事物或交互在生命周期内响应事件所经历的状态序列。
分组事物
UML模型视图的组织部分,描述事物的组织结构。
注释事物
UML模型的解释部分,用来对模型中元素进行解释说明。
关系
关系包括
1、依赖:两个事物之间的语义关系,其中一个事物(独立事物)发生变化,会影响到另一个事物(依赖事物)语义。
2、关联:是一种结构关系,指明一个事物的对象与另一个事物对象的关系。
3、泛化:一般和特殊的关系,即继承关系。
4、实现:类元之间的语义关系,其中一个类元指定了由另一个类元保证执行的契约。
UML中的图
用例图:
用例图是从用户角度描述系统功能,是用户所能观察到的系统功能模型图。用例图的主要目的是帮助开发团队理解系统的功能需求。
类图:
类图表示不同的实体如何彼此相关,描述了系统的静态结构。类图以类为中心来组织。
对象图:
对象图是类图的实例,标识和类图几乎相同,区别在于对象图显示类的多个对象的实例,而不是实际的类。
顺序图:
顺序图显示了了对象之间动态合作关系,强调对象之间发送消息的顺序,同时显示对象之间的交互。
协作图:
协作图是描述对象间的协作关系,跟顺序图相似,显示对象间动态合作关系,例如信息交换,以及对象之间的关系。
状态图:
状态图表示一个类实例对象可能经历所有状态转换信息。
活动图:
活动图表示在处理某个活动时,两个或更多对象之间的过程控制流,描述了一组顺序的或并发的活动。
构件图:
构件图提供了系统的物理视图,用来显示系统中的各种构件之间的依赖关系。
部署图:
部署图描述该软件如何部署到硬件环境中。
下面是8中图的关系(没有部署图)