统一建模语言UML(Unified Modeling Language)是一种定义良好、易于表达、功能强大且普遍适用的建模语言。
UML的结构
UML的结构包括基本构造块、支配这些构造块如何放在一起的规则(架构)和一些运用于整个UML的机制。
1、构造块
UML有三个基本构造块:事物、关系和图
2、公共机制
公共机制是指达到特定目标的公共UML方法,主要包括规格说明、修饰、公共分类和扩展机制四种
3、规则
UML用于描述事物的语义规则分别是事物、关系和图命名。
UML对系统架构的定义是系统的组织结构,包括系统分解的组成部分、它们的关联性、交互、机制和指导原则等这些提供系统设计的信息。而具体来说,就是指5个系统视图,分别是逻辑视图、进程视图、实现视图、部署视图和用例视图。
(1)逻辑视图:以问题域的词汇组成的类和对象集合
(2)进程视图:可执行线程和进程作为活动类的建模,它是逻辑视图的一次执行实例,描述了所设计的并发与同步结构。
(3)实现视图:对组成基于系统的物理代码的文件和构件进行建模
(4)部署视图:把构件物理地部署到一组物理的、可计算的结点上,表示软件的映射及分布结构。
(5)用例视图:最基本的需求分析模型
事物
UML中的事物也称为建模元素,包括结构事物、行为事物、分组事物和注释事物。这些事务是UML模型中最基本的面向对象的构造块。
(1)结构事物:结构事物在模型中属于最静态的部分,代表概念上或物理上的元素。总共有7种结构事件
类 | 类是描述具有相同属性、方法、关系和语义对象的集合。一个类实现一个或多个接口 |
接口 | 接口是类或构件提供特定服务的一组操作的集合。因此,一个接口描述了类或构件的对外可见的动作。 |
协作 | 协作定义了交互的操作,是一些角色和其他元素一起工作,提供一些合作的动作。这些动作比元素的总和要大。因此,协作具有结构化、动作化的特性。一个给定的类可能是几个协作的组成部分。这些协作代表构成系统的模式的实现 |
用例 | 用例是描述一系统的动作,这些动作是系统对一个特定角色执行,产生值得注意的结果的值。在模型中用例通常用于组织行为事物。用例是通过协作来实现的 |
活动类 | 活动类是这种类,它的对象有一个或多个进程或线程。活动类和类很相似,只是它的对象代表的元素的行为和其它的元素是同时存在的 |
构件 | 构件是物理上或可替换的系统部分,它实现了一个接口集合。在一个系统中,可能会遇到不同种类的构件 |
结点 | 结点是一个物理元素,它在运行时存在,代表一个可计算的资源,通常占用一些内存和具有处理能力。一个构件集合一般来说位于一个结点,但有可能从一个结点转到另外一个结点 |
(2)行为事物:行为事物是UML模型中的动态部分。它们是模型的动词,代表时间和空间上的动作。
(3)分组事物:分组事物是UML模型中组织的部分,可以把它们看成是个例子,模型可以在其中被分解。
(4)注释事物:注释事物是UML模型的解释部分
关系
UML用关系把事物结合在一起,主要有4种关系:
依赖(dependencies) | 两个事物之间的语义关系,其中一个事物发生变化会影响另一个事物的语义 |
关联(association) | 一种描述一组对象之间连接的结构关系,如聚合关系(描述了整体和部分间的结构关系) |
泛化(generalization) | 一种一般化和特殊化的关系 |
实现(realization) | 类之间的语义关系,其中的一个类指定了由另一个类保证执行的契约 |
圭