UML 是由UML构造块、规则、通用机制三部分组成的。而UML构造块由建模元素(事物)、关系和图组成。
建模元素
建模元素是对模型中最具有代表性的成分的抽象。一般情况下,将建模元素分为结构元素、行为元素、分组元素以及注释元素。
结构元素
结构元素是模型的基本物理元素,它有7种类型,分别是类和对象、组件、接口、用例、节点、协作、活动类。在 UML中这7种元素都有自己的图形符号表示,用于组成各种图,描述系统功能
类和对象
类是具有相同属性、相同操作的一组对象的集合的抽象描述。对象是一个具体的内容。在图形中,类用一个矩形来表示,通常矩形中写有类的名称、类的属性和类的操作。
组件
组件是系统中物理的、可替代的部件,是一个描述了一些逻辑元素的物理包。在图形上,组件由一个带有小方框的矩形表示,通常在矩形中致谢该组件的名字
接口
接口是描述了一个类或组件的一个服务的操作集,或者说,接口描述了类或组件对外的、可见的动作。一个类可以实现一个或者多个接口。在图形上,使用一个带有名称的圆来表示。类图中接口用矩形表示,组件图中接口用圆来表示
用例
用例是对一组序列动作的描述,系统执行这些动作,将对用例参与者(actor)产生可以观察的结果。在图形上,用例用实线椭圆来表示,参与者用一个人形来表示
节点
节点是一个物理元素,它在运行时存在,代表一个可计算的资源,例如一台数据库服务器。在图像上,节点用一个立方体来表示
协作
协作是一组类、接口和其他元素的群体,他们共同工作,提供比个组成部分的功能总和更强的合作行为。协作与组件不同,协作不能拥有自己的结构元素,而只能引用其他地方定义的类、接口、组件、节点等结构元素,即协作是系统体系结构中的概念组块,而不是物理块。在图形,协作使用一个包含名称的虚线椭圆来表示。
活动类
活动类能够启动控制活动,因为它的对象至少拥有一个进程或线程。在图形上,活动类的表示方法与普通类相似,也是使用一个矩形,只是最外面的边框使用粗线
行为元素
行为元素是UML中的动词,它是模型中的动态部分。交互和状态机是UML中基本的动态行为元素,他们通常与其他结构元素、主要的类、对象连接在一起
交互
对象都不是孤立存在的,他们之间通过传递消息进行交互。在图形上,交互的消息通常用带有箭头的直线来表示。
状态机
状态机是一个对象或交互在生命周期内响应时间所经历的状态序列。一个状态机是一个行为,它说明对象在它的生命周期中响应事件所经历的状态序列以及它们对那些事件的响应
分组元素
分组元素是UML中的容器,用来组织模型,是模型更加结构化,最主要的分组元素是包,包是把元素组成成组的机制。结构元素、行为元素甚至其他分组元素都可以放进包内。在图形上,包用一个左上角带用一个小矩形的大矩形表示。
注释元素
注释元素是UML中的解释部分,与代码中的注释语句一样,是用来描述模型的。
关系
建模元素之间包含着多种关系,UML中将关系分为4中:依赖关系、关联关系 、泛化关系、实现关系。
依赖关系
依赖是两个元素件的语义关系,其中一个元素(独立元素)发生变化,会影响到另一个元素(依赖元素)的语义。例如,电视机和频道之间就存在一个依赖关系。
关联关系
关联表示两个类之间存在某种语义上的联系。关联关系提供了通信的路径,在图形上是用一条实线来表示关联关系。举例来说,人和汽车之间存在着关联。
泛化关系
泛化关系是一般元素(父类)和该元素较为特殊的子类之间的关系。子类继承父类的属性和操作。可以将泛化关系理解成为继承关系。
实现关系
实现关系将一种模型元素(例如类)与另一种模型元素(例如接口)连接起来,其中接口只是行为的定义而不是结构或实现。也就是说,实现关系中的一个模型元素只具有行为的定义,而行为的具体实现则是由另一个模型元素给出。