【UML用户指南】-07-对基本布局建模-公共机制

打印 上一主题 下一主题

主题 780|帖子 780|积分 2340

目录
1、术语和概念
1.1、注解(note)
1.2、修饰
1.3、衍型
1.4、标记值
1.5、束缚
1.6、尺度元素
1.7、外廓(profile)
2、对新特性建模
3、对新语义建模


注解 (note)是附加在元素或元素集上用来表示束缚或注释的图形符号。在图形上,把注解画成带有一个折叠角的矩形,在矩形中填写笔墨的或者图形的注释。
衍型 (stereotype)是对UML的词汇的扩展,用于创建与已有的构造块相似但针对特定标题的新种类的构造块。在图形上,把衍型表示成用双尖括号(«»)括起来的名字,放在其他的元素名之上。作为一种选择,可以用一种与衍型相干的新图标来表示被衍型化元素。
标记值 (tagged value)是衍型的一种特性,允许在带有衍型的元素中创建新的信息。在图形上,把标记值表示成形如name = value的串,放在一个附加到对象上的注解中。
束缚 (constraint)是对UML元素语义的笔墨分析,用来增长新的规则或修改已有的规则。在图形上,把束缚表示成用花括号括起来的串,并把它放在相干的元素附近,或者通过依赖关系毗连到这个(或这些)元素。作为一种选择,可以在注解中表示束缚。
   UML由于存在着4种运用于整个语言的公共机制而得以简化,它们是:规约、修饰、公共分别和扩展机制
  1、术语和概念

1.1、注解(note)

注解是一种最重要的能单独存在的修饰。
 

   衍型、标记值和束缚是UML提供的用以增长新的构造块、创建新的特性和分析新的语义的机制。
  例如,假如对网络建模,大概必要路由器和集线器的表示符号,可以用衍型化结点来表示它们,使它们就好像原有的构造块一样;
雷同地,项目发布组的成员要负责装配、测试和摆设发布,大概要跟踪版本号和各个重要子系统的测试效果,对此就可以用标记值把这些信息附加到模型上;最后,假如对硬及时系统建模,大概要用时间预算和最后完成限期来修饰模型,可以使用束缚捕获这些计时需求。
 


1.2、修饰

修饰是附加到元素的基本表示法之上的笔墨或图形项,用于对元素规约的细节举行可视化。例如,关联的基本表示法是一条线,但是可以用各端的角色或多重性等细节来修饰它。
可以在它们平常的分隔栏的底部增长额外的分隔栏,以填写这种信息

1.3、衍型

把衍型看作元类型(一种界说其他类型的类型),因为每一个衍型将创建一个相当于 UML 元模型中新类的等价物。
例如,假如对商业过程建模,则将引入像职工、文档和政策这样的事物;雷同地,假如正在举行像Rational统一过程这样的开发过程,则将使用边界、控制和实体类来建模。这是衍型的现实价值所在。
当对结点或类这样的元素创建衍型时,现实上是通过创建雷同于已有的构造块的新构造块来扩展UML,但新构造块有自己的具体特性(各个衍型可以提供自己的标记值集合)、语义(各衍型可以提供自己的束缚)和表示法(各衍型可以提供自己的图标)。



1.4、标记值

UML 中的每个事物都有它们自己的一组特性:类著名称、属性和操作,关联著名称和两个或两个以上的端点(每个端点都有自己的特性)等。
   用衍型可为UML增长新的事物,用标记值可为UML的衍型增长新的特性。
  标记值的最常见的用途之一是分析与代码天生或设置管理相干的特性。
例如,用标记值指明特定类所映射到的编程语言;可以用标记值形貌一个构件的作者或版本。


1.5、束缚

UML中的每一个事物都有它自己的语义。泛化(通常,假如知道什么对你有利益)意味着运用Liskov 替换原理,而毗连到一个类的多个关联则表示差别的关系。使用束缚,可以增长新的语义或扩展已存在的规则。束缚指明确运行时的设置必须满足与模型同等的条件。

1.6、尺度元素

对于类目、构件、关系和其他一些建模元素,UML 界说了一些尺度衍型。有一个重要为工具制作者准备的尺度衍型,使他们可对衍型本身建模。
   stereotype——指明类目是一个可以应用到其他元素的衍型。
  当要显式地对那些为项目界说的衍型建模时,则使用这个衍型。
  1.7、外廓(profile)

为特定的用途或范畴界说一个符合的UML版本常常是有用的。
它具有一组预界说的衍型、标记值、束缚和基类。它还选择了UML元素的一个子集,使得建模者不被那些在这个特定范畴不必要的元素所疑惑。

2、对新特性建模

假如要扩展这些基本构造块的特性,就必要界说衍型和标记值。
下图展示了3个子系统,每个子系统都用«versioned»衍型做了扩展,从而含有其版本号和状态。
 

   可以用工具设置像version和status这类标记的值。可以把设置管理工具和建模工具联合起来作为开发环境,以此来维护这些值,这样做要胜于手工设置模型中的这些值。
  3、对新语义建模

必要表达UML中不存在的新的语义,或必要修改UML中的规则,就必要写一个束缚
   用OCL书写新语义
  

上图表明,每个Person可以是零个或多个Team的成员,每个Team至少有一个
Person作为成员。该图还指出了每个Team必须恰恰有一个Person作为队长,而每个
Person可以是零个或多个Team的队长。所有这些语义都可以用基本的UML表达。然而
,为了断定队长也必须是相应的Team的一个成员,就要涉及到多个关联,这无法用基
本的UML表达。为了分析这个不变式,必须写一个束缚,以表明队长是Team的成员的
一个子集,用一个束缚毗连这两个关联。其中还包含了一个束缚:队长必须做过至少
一年的成员。
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

伤心客

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表