UML语言的事物,包括四类:
结构事物:语言的静态构成要素,有7种:类和对象、接口、主动类、用例、协作、构件、节点。
行为事物:语言的动态构成要素,表示事物的变化和 状态。
分组事物:对模型中事物分组组织的要素,包。
注释事物:对模型中事物标注,注解和解释。
一、结构事物
结构事物定义了业务或软件系统中的某个物理元素,描述了事物的静态特征。结构事物常用名词表示。结构事物有7种,它们是:类和对象、接口、主动类、用例、协作、构件、节点。
1.类和对象
类是对具有相同属性、相同操作、相同关系的一组对象的共同特征的抽象,类是对象的模板,对象是类的一个实例。
(1)类的表示
在UML中,类是用一个矩形表示的,它包含三个区域,最上面是类名、中间是类的属性、最下面是类的方法。
例如,描述People(类)用图形表示,如图1所示。
假设,People类包含的属性和行为如下:
类名:People, 在第一栏。
字段名:name、age,字段名(也称属性)放在第二栏。
方法名:speak()、breathe( ),方法在第三栏。
图1:People类表示
(2)对象的表示
对象是用一个矩形表示,在矩形框中,不再写出属性名和方法名,只是在矩形框中用“对象名:类名”的格式表示一个对象。
例如,属于类People中的对象张连海的图形表示如图2所示。
图2:对象“张连海”的表示方法
2.接口
因为,外界对类(或构件)的使用,是通过类(或构件)的方法来实现的,因此,我们把为类或构件提供特定服务的一组操作的集合称为接口。接口向外界声明了它能提供的服务。
接口分为供给接口和需求接口两种,供给接口只能向其它类(或构件)提供服务,需求接口表示类(或构件)使用其它类(或构件)提供的服务。
两种接口的表示方法如图3所示
图3:接口的表示
3.主动类
主动类是指该类创建的对象至少拥有一个进程或线程,通过进程或线程控制任务的执行。
主动类的表示与一般类相似,只是最外框是粗线描述而已。
如主动类”Radio”的表示如图4所示。
图4:主动类的表示
4.用例
在系统中,为完成某个任务而执行的一序列动作,以实现某种功能,我们把这些动作的集合称为用例实例。用例是对一组用例实例共同特征的描述,用例与用例实例的关系,正如类与对象的关系。
用例是用一个实线椭圆来表示的,在椭圆中写入用例名称。如,用例“用户登录”表示如图5
图5:用例“用户登录”的表示方法
5.协作
协作是指有意义的交互,即,一组对象为了完成某个任务,相互间进行的交互。
用例的实现:实现某个用例的一组对象之间的交互,即,把一个用例表示为多个对象间的交互(协作)。从本质上说,协作就是用例的实现。
用一个带2个分栏的虚线椭圆表示协作。如,用例“销售房产”,用协作“销售房产”表示时,其对应的表示法如图6所示。
图6:协作 “销售房产”
6. 构件
构件也称组件:系统设计中,一个相对独立的软件部件,它把功能实现部分隐藏在内部,对外声明了一组接口(包括供给接口和需求接口)。因此,两个具有相同接口的构件可以相互替换。
构件是比“类”更大的软件部件,例如一个COM组件、一个DLL文件、一个执行文件等等。
构件通常采用带有2个小方框的矩形表示,如下图7所示。
图7:构件的表示
7.节点
节点是指硬件系统中的物理部件,它通常具有存储空间或处理能力。如,PC机、打印机、服务器等都是节点。在UML中,用一个立方体表示一个节点。如,节点“server”的表示方法如图8所示。
图8:节点server的表示
二、行为事物
行为事物是用来描述业务系统或软件系统中,事物之间的交互或事物的状态变化。行为事物描述了事物的动态特征。行为事物用动词表示。行为事物有2种:交互和状态机。
1.交互
交互(interaction)是为了完成某个任务的对象之间相互作用,这种作用是通过信息的发送和接受来完成的。
交互的表示法很简单,用一条有向直线来表示对象间的交互,并在有向直线上面标有消息名称。如图9所示。
图9:交互的表示方法
2.状态机
状态机(statemachine)在对象生命周期内,在事件驱动下,对象从一种状态迁移到另一状态的状态序列,这些状态序列构成了状态机,即,一个状态机由多个状态组成。
在UML模型中,将状态表示为一个圆角矩形,并在矩形内标识状态名称。 如,“等待”表示如图10所示。
图10:“等待”状态的表示方法
三、分组事物
对于一个中大型的软件系统而言,通常会包含大量的类、接口、交互,因此也就会存在大量的结构事物、行为事物,为了能有效地对这些事物进行分类和管理,就需要对其进行分组。在UML中,提供了“包(Package)”来实现这一目标。
表示“包(Package)”的图形符号,与windows中表示文件夹的图符很相似。包的作用与文件夹的作用也相似。“数据访问”包的表示法如图11所示。
图11:“数据访问”包的表示方法
四、注释事物
在模型中,用来对其它事物的解释部分(文本解释)称为注释。注释事物是用一个右上角折起来的矩形,解释的文字就写在矩形中。注释符号如图12所示。
图12:注释符号