通用机制


UML中有四种运用于整个语言的机制,它们使得UML建模更加简化。

一、规约

UML不仅仅是一种图形语言,相对于图形表示法的每个部分,规约提供了对构造块的语法和语义的文字描述。

UML的图形表示法用来对系统进行可视化,而规约可以涵盖到系统的各种细节。

规约提供了的语义底板,包含了一个系统各个模型的所有部分,各部分以一致的方式相互联系。图形表示法只是对底板的简单视觉投影,每一个图展示了系统的一个特定的关注方面。

二、修饰

UML中的大多数元素都有唯一而直接的图形表示符号,这些图形符号对元素的最重要的方面提供了可视化表示。

为了提供规约中更多细节的描述,我们可以对图形元素提供图形和文字上的修饰。

所以说,修饰用来补充细节。

三、通用划分

在面向对象系统的建模中,通常有几种划分方式。

对类和对象的划分

类是一种抽象,对是这种抽象的具体表现。

在图形上,UML是这样区分对象的:采用同样的类图形符号来表示对象,并且在对象名下面画一道线。 UML 类和对象 类似这种划分的还有:用例和用例执行、组件和组件实例、节点和节点实例。

接口和实现的分离

接口声明了一个合约,而实现则表示了对该合约的具体实施,负责如实地实现接口的完整语义。 几乎每一个UML构造块都有像接口/实现这样的二分法,例如:用例和实现它们的协作,操作和实现它们的方法。

类型和角色的分离

类型说明了实体的种类,而角色描述了实体在语境中的含义。

任何作为其他实体结构中的一部分实体都具有两个特性:从它固有的类型派生出一些含义,从它在语境中的角色派生出一些含义。 UML 类型和角色

如上图所示,该部件既有Person类型,又有customer角色。

四、扩展机制

UML 提供了一种绘制软件蓝图的标准语言,但是闭合的语言表达能力再丰富,也难以表达所有情形。

所以,UML是目标开放的,使人们能够以受控的方式来扩展该语言。

UML包括三种扩展机制:衍型、标记值、约束。

衍型

衍型扩展了UML的词汇,可以用来创造新的构造块,这个新构造块是从现有的构造块派生的,但是针对特定的问题。 在图形上,把衍型表示成用双尖括号(<<>>)括起来的名字,放在其他元素名之上。

标记值

标记值扩展了衍型的特性,可以用来创建衍型规约的新信息。 衍型与标记值

如上图所示,authored是基于类扩展而来的衍型,用来表述事件队列;针对authored衍型有一个注释,注释中的version和author并不是UML的基本概念,而是新扩展的标记值,用来说明衍型的特殊信息。

约束

约束是对UML规则的扩展,或者是对已有规则的修改。

用户头像
登录后发表评论