UML的构造块
(1)事物
(2)关系
(3)图
事物是对模型中首要成分的抽象:
关系把事物结合在一起;图聚集了相关的事物。
1.UML中的事物
在UML中有 4 种事物:
(1)结构事物
(2)行为事物
(3)分组事物
(4)注释事物
这些事物是UML中基本的面向对象的构造块,用它们可以写出结构良好的模型。
结构事物 (structural thing)
第一,类(class)是对一组具有形同属性、相同操作、相同关系和相同语义的对象的描述。
在图形上: 把类画成一个矩形,矩形中通常包括:
名称、属性和操作。

第二,接口(Interface)是一组操作的集合,每个操作描述了类或构件的一个服务。

第三,协作(collaboration)定义了一个交互,它是由一组共同工作以提供某种协作行为的角色和其他元素构成的一个群体,这些协作行为大于所有元素的各自行为的总和。

第四,用况(use case)是对一组动作序列的描述,系统执行这些动作将产生特定的参与者有价值而且可观察的结果。
用况用于构造模型中的行为事物。
在图形上,把用况画成实线椭圆,通常仅包含它的名称。

第五,主动类(active class)是这样的类,其对象至少拥有一个进程或线程,因此它能够启动控制活动。
主动类的对象所表现的元素的行为与其他元素的行为并发,除了这一点之外,它和类是一样的。
在图形上,把主动类绘制成类图符,只是它的左右外框是双线,通常它包含:名称、属性和操作。

第六,构件 (component)是系统设计的模块化部件,将实现隐藏在一组外部接口之后。

第七,制品(artifact) 是系统中物理的而且可代替的部件,它包括物理信息(“比特”)。

第八,结点(node)是在运行时存在的物理元素,它表示一个计算机资源,通常至少有一些记忆能力和处理能力。
一组构件可以驻留在一个结点内,也可以从一个结点迁移到另一个结点。
在图形上,把结点画成一个立方体,通常在立方体中写它的名称

行为事物 (behavioral thing)是UML模型的动态部分。
他们是模型中的动词,代表了跨越时间和空间的行为。
共有 3 类主要的行为事物:
第一,交互(interaction)是这样一种行为,它由在特定语境中共同完成一定任务的一组对象或角色之间的交换的消息组成。
一个对象群体的行为或者单个操作的行为可以用一个交互来描述。
交互涉及一些其他元素,包括消息、动作和连接件(对象间的连接)。
在图形上,把消息画成一条有方向的直线,通常在其上总是带有操作名。

第二,状态机(state machine) 是这样一种行为,它描述了一个对象或一个交互在生命期内响应事件所经历的状态序列以及对这些事件的响应。单个类或一组类之间协作的行为可以用一个状态机来描述。
状态机涉及到一些其他元素,包括状态、转移(从一个状态到另一个状态的流)、事件(触发转换的事物)和活动(对一个转移的响应)。
在图形上,把状态画成一个圆角矩形,通常在其中含有状态的名字及子状态(如果有的话)

第三,活动(Activity)是这样一种行为,它描述了计算过程执行的步骤序列。
交互所注重的是一系列相互作用的对象,状态机所注重的是一定时间内一个对象的生命周期,活动所注重的是步骤之间的流而不关心哪个对象执行哪个步骤。活动的一个步骤称为一个动作。
在图形上,把动作换成一个圆角矩形,在其中含有指明其用途的名字。
状态和动作靠不同的语境得以区别:

分组事物(grouping thing):
是 UML模型的组织部分。它们是一些由模型分解成的“盒子”。
主要的分组事物是包。
包(package)用于对设计本身进行组织的通用机制,与类不同,类是用来组织实现构造物。
结构事物、行为事物甚至其他的分组事物都可以放进包内。
包不像构件(构件在运行时存在),它纯粹是概念上的(即它仅在开发时存在)。

它也有变体,如框架、模型和子系统(它们是包的不同种类)。
注释事物(annotational thing)
它是UML模型的解释部分。
这些注释事物用来描述、说明和标注模型的任何元素。
有一种主要的注释事物,称为注解。注解(note)是依附于一个元素或一组元素之上对其进行约束或解释的简单符号。
在图形上,把注解画成一个右上角是折角的矩形,其中带有文字或图形解释,
