UML模型的基本概念

来源:互联网 发布:狼人杀 守卫 知乎 编辑:程序博客网 时间:2024/05/01 01:32

1 UML的建筑块
组成UML有三种基本的建筑块:
1
事物(Things
2
关系(Relationships
3
图(Diagrams
事物是UML中重要的组成部分。关系把事物紧密联系在一起。图是很多有相互相关的事物的组。
1.1 UML
的事物
UML
中有始终类型的事物:
1
结构事物(Structural things
2
动作事物(Behavioral things
3
分组事物(Grouping things
4
注释事物(Annotational things
这些事物是UML模型中最基本的面向对象的建筑块。它们在模型中属于最静态的部分,代表概念上等或物理上的元素。
1.1.1
结构事物。
总共有七种结构化事物。

首先是类(class,类是描述具有相同属性、方法、关系和语义的对象的集合。一个类实现一个或多个接口。在UML中类被画为一个矩型,通常包括它的名字、属性和方法。
Window
Origin
Size
Open()
Close()
Move()
Display()
1-1

第二种是接口(interface,接口是指类或组件提供特定服务的一组操作的集合。因此,一个接口描述了类或组件的对外的可见的动作。一个接口可以实现类或组件的全部动作,也可以只实现一部分。接口在UML中被画成一个圆和它的名字。

ISpelling
图1-2 接口
第三种是协作(collaboration),协作定义了交互的操作,是一些角色和其它元素一起工作,提供一些合作的动作,这些动作比元素的总和要大。因此,协作具有结构化、动作化、维的特性。一个给定的类可能是几个协作的组成部分。这些协作代表构成系统的模式的实现。协作在UML中用一个虚线画的椭圆和它的名字来表示。

1-3 协作
第四种是use case,use case是描述一系列的动作,这些动作是系统对一个特定角色执行,产生值得注意的结果的值。在模型中use case通常用来组织动作事物。Use case是通过协作来实现的。在UML中,use case画为一个实线椭圆,通常还有它的名字。

1-4 use case(用例)

第五种是活动类(active class),活动类是这种类,它的对象有一个或多个进程或线程。活动类和类很相象,只是它的对象代表的元素的行为和其他的元素是同时存在的。在UML中活动类的画法和类相同,只是边框用粗线条。

EventManager

Suspend()
Flush()
图1-5活动类

第六种是组件(component),组件是物理上或可替换的系统部分,它实现了一个接口集合。在一个系统中,你可能会遇到不同种类的组件,例如COM+或JAVA BEANS。组件在UML中用如下的图表示:

1-6 组件
第七种是结点(node),结点是一个物理元素,它在运行时存在,代表一个可计算的资源,通常占用一些内存和具有处理能力。一个组件集合一般来说位于一个结点,但有可能从一个结点转到另一个结点。结点通常用如下的图形表示:


图1-7 结点

类、接口、协作、use case、活动类、组件和结点这七个元素是在UML模型中使用的最基本的结构化事物。系统中还有这七种基本元素的变化体,如角色、信号(某种类),进程和线程(某种活动类),应用程序、文档、文件、库、表(组件的一种)。

1.1.2 动作事物
动态事物是UML模型中的动态部分。它们是模型的动词,代表时间和空间上的动作。总共有两种主要的动作事物。
第一种是ineraction,interaction是由一组对象之间在特定上下文中,为达到特定的目的而进行的一系列消息交换而组成的动作。 在interaction中组成动作的对象的每个操作都要详细列出,包括消息、动作次序(消息产生的动作),连接(对象之间的连接)。在UML中消息画成带箭头的直线,通常加上操作的名字。


图1-8 消息
第二种是状态机(state machine),状态机由一系列对象的状态组成。在UML中状态表示为下图:

图案1-9 状态

interaction和状态机是UML模型中最基本的两个动态事物元素,它们通常和其他的结构元素、主要的类、对象连接在一起。

1.1.3 分组事物
分组事物是UML模型中组织的部分,可以把它们看成是个盒子,模型可以在其中被分解。总共只有一种分组事物,称为包(package)。
包是一种将有组织的元素分组的机制。结构事物、动作事物甚至其他的分组事物都有可能放在一个包中。与组件(存在于运行时)不同的是包纯粹是一种概念上的东西,只存在于开发阶段。在UML中用如下图表示包:


图 1-10 包

1.1.4 注释事物
注释事物是UML模型的解释部分。UML中用如下图表示:


图 1-11注释

1.1.5 UML中的关系
UML中有四种关系:
1. 依赖(Dependencies)


图1-12 依赖

2. 关联(Association)

图 1-13 关联

3. 一般化(generalization)


图1-14 一般化

4. 实现(realuzation)


图 1-15 实现

1.1.6 UML中的图
1
类图(class diagram
2
对象图(class diagram
3
Use case diagram
4
Sequence diagram
5
Collaboration diagram
6
Statechart diagram
7
Activity diagram
8
Compomnent diagram
9
Deployment diagram