UML作为统一建模语言,是一种模型化语言,那么该模型主要是用图来表示,这时候就自然而然产生了UML图。UML主要由基本构造块、规则、公共机制组成,其中基本构造块由事物、关系、图组成。
图是UML中重要的组成部分,那么UML中图主要有九种,可以从整体上分为包图 、用例图、类图、行为图、实现图,主要分类如下图:
包图是用于描述系统的分层结构,主要由包或类组成,表示包与包之间的关系
用例图是用来描述角色与用例之间的连接关系。说明的是谁要使用系统,以及他们使用系统可以做些什么。一个用例图包含了多个模型元素,如系统、参与者和用例,并且显示了这些元素之间的各种关系,如泛化、关联、依赖。
类图是描述系统中的类,以及各个类之间的关系的静态视图。能够让我们在正确编写代码之前对系统有一个全面的认识。类图是一种模型类型,确切地说,是一种静态模型类型。类图表示类、接口和它们之间的协作关系。
对象图与类图比较相似,是类图的实例,对象图显示类的多个对象实例,而不是实际的类。它描述的不是类之间的关系,而是对象之间的关系。
状态图是用来描述类的对象所有可能的状态,以及事件发生时状态的转移条件。可以捕获对象、子系统和系统的生命周期。他们可以告知一个对象可以拥有的状态,并且事件会怎么随着时间的推移来影响这些状态。一个状态图应该连接到所有具有清晰的可标识状态和复杂行为的类;该图可以确定类的行为,以及该行为如何根据当前的状态变化,也可以展示哪些事件将会改变类的对象的状态。状态图是类图的补充。
活动图是描述用例要求所要进行的活动,以及活动间的约束关系,有利于识别并行活动。能够演示系统中哪些地方存在功能,以及这些功能和系统中其他组件的功能如何共同满足前面使用用例图建模的需求。
序列图又称顺序图是用来显示你的参与者如何以一系列顺序的步骤与系统的对象交互的模型。用来展示对象之间是如何进行交互的。将显示的重点放在消息序列上,强调消息是如何在对象之间被发送和接收
又称协同图,显示对象之间的动态合作关系。可以看成是类图和顺序图的交集。
称构件图,用来描述代码构件的物理结构以及各种构建之间的依赖关系。构件图由构件标记符合构件之间的关系构成。构件可以使一个文件、产品、可执行文件和脚本等
用来建模系统的物理部署。例如计算机和设备,以及它们之间是如何连接的。用来表示一组物理结点的集合及结点间的相互关系,从而建立了系统物理层面的模型。
采用用例图来描述需求(角色、功能、外部交互)