UML中提供了多种建模系统需求的图,体现系统的静态方面和动态方面。
类图(Class Diadram)展现了一组对象、接口、协作和它们之间的关系。在面向对象系统的建模中,最常见的就是类图,它给出系统的静态设计视图。
对象图(Object Diagram)展现了某一时刻一组对象以及他们之间的关系。对象图描述了在类图中所建立的事物的实例的静态快照,给出系统的静态设计视图或静态进程视图。
用例图(Use Case Diagram)展现了一组用例、参与者(Actor)以及它们之间的关系。这个视图主要支持系统的行为,即该系统在它的周边环境的语境中所提供的外部可见服务。用例图用于对一个系统的需求进行建模,包括说明这个系统应该做什么(从系统外部的一个视点出发),而不考虑系统应该怎样做。
交互图用于对系统的动态方面进行建模。一张交互图表现的是一个交互,由一组对象和它们之间的关系组成,包含它们之间可能传递的消息。交互图表现为序列图、通信图、交互概览图和时序图,每种针对不同的目的,能适用于不同的情况。序列图是强调消息时间顺序的交互图;通信图是强调接收和发送消息的对象的结构组织的交互图;交互概览图强调控制流的交互图。时序图(Timing Diagram)关注沿着线性时间轴、生命线内部和生命线之间的条件改变。
部署图(Deploy Diagram)是用来对面向对象系统的物理方面建模的方法,展现了运行时处理结点以及其中构件(制品)的配置。
组件图(Component Diagram)展现了一组组件之间的组织和依赖。
UML中有4种事物:结构事物、行为事物、分组事物和注释事物
结构事物:
模型中静态部分。
【类Class】+【接口Interface】+【协作Collaboration】
+【用例Use Case】+【活动类】+【组件Component】
+【结点Node】
行为事物:
模型中的动态部分。
【交互】+【状态机】
分组事物
可以把分组事物看成是一个"盒子",模型可以在其中被分解。目前只有一种分组事物,即包(package)。结构事物、动作事物甚至分组事物都有可能放在一个包中。包纯粹是概念上的,只存在于开发阶段,而组件在运行时存在。
注释事物
注释事物是UML模型的解释部分。