在前面的学习我们已经知道,UML的视图是由各种图组成,根据这些图的基本功能以及实现行为,可以将其划分为2个分类:结构行为、动态行为。
结构行为描述了系统中的结构成员及其相互关系。包括类图、对象图、用例图、组件图和配置图。
而动态行为描述了系统随时间变化的行为。包括状态图、活动图、时序图以及协作图。
| 主要的域 | 图 | 主要概念 |
| 结构行为图 | 类图、对象图 | 类、关联、泛化、依赖关系、实现、接口 |
| 用例图 | 用例、参与者、关联、扩展、包括、用例泛化 | |
| 组件图 | 组件、接口、依赖关系、实现 | |
| 配置图 | 节点、构件、依赖关系、位置 | |
| 动态行为图 | 状态图 | 状态、事件、转换、动作 |
| 活动图 | 状态、活动、完成转换、分叉、结合 | |
| 时序图 | 交互、对象、消息、** | |
| 协作图 | 协作、交互、协作角色、消息 |
UML中的各种图是UML模型的重要组成部分。下面是结合机房收费系统所画的九种UML模型图。
1.用例图。
用例图展现了一组用例,参与者以及它们间的关系。可以用用例图描述系统的静态使用情况。在对系统行为组织和建模方面,用例图相当重要的。
2.类图
类图展示了一组类、接口和协作及它们间的关系,在建模中所建立的最常见的图就是类图。系统可有多个类图,单个类图仅表达了系统的一个方面。一般在高层给出类的主要职责,在低层给出类的属性和操作。
3.对象图
对象图是类图的变体,它使用与类图相似的符号描述,不同之处在于对象图显示的是类的多个对象实例而非实际的类。可以说,对象图是类的一个例子,用于显示系统执行时的一个可能的快照,即在某一时间点上系统可能呈现的样子。
4.组件图
组件图,又称构件图,它由组件、接口和组件之间的联系构成。其中的组件可以是源码、二进制码或可执行程序。组件图表示系统中的不同物理部件及其联系,它表达的是系统代码本身的结构。
5.配置图
配置图展现了对运动时处理节点以及其中组件的配属。它描述系统硬件的物理拓扑结构(包括网络布局和组件在网络上的位置),以及在此结构上执行的软件(即运行时软件在节点中的分布情况)。用配置图说明系统结构的静态配置视图,即说明分布、交付和安装的物理系统。
6.时序图
时序图显示多个对象之间的动态协作,重点是显示对象之间发送消息的时间顺序。时序图也显示对象之间的交互,即在系统执行时,某个指定时间点将发生的事情。时序图的一个用途是表示用例中的行为顺序,当执行一个用例行为时,时序图中的每一条消息对应了一个类操作或状态机中引起转换的触发事件。用时序图说明系统的动态视图。
7.协作图
协作图在对一次交互中有意义的对象和对象间的连接建模,它强调收发消息对象的组织结构,按组织结构对控制流建模。除了显示消息的交互之外,还显示对象以及它们之间的关系。
8.状态图
状态图展示了一个特定对象的所有可能状态以及由于各种事件的发生而引起的状态间的转移。一个状态图描述了一个状态机,用状态图说明系统的动态视图。状态图对于接口、类或协作的行为建模尤为重要,可用它描述用例实例的生命周期。
9.活动图
活动图是状态图的一个变体,显示了系统中从一个活动到另一个活动的流程。活动图显示了一些活动,强调的是对象之间的流程控制。