本文和大家重点讨论一下UML公共机制的概念,UML公共机制主要包括规格说明、修饰、通用划分和扩展机制。本节针对修饰和扩展机制进行更详细的说明。
UML公共机制
前面几节UML介绍中,提到了UML的公共机制,分别是规格说明、修饰、通用划分和扩展机制。本节针对修饰和扩展机制进行更详细的说明。
①注解(note)
注解是附加在元素或元素集上用来表示约束或注释的图形符号。UML公共机制中注解可以含有文字或图解或者URL。
使用原则:
⑴应放置在对应元素附件,并使用依赖关系连接注解和对应元素。
⑵只在需要的时候显示注解。
⑶如果注解很长,可以考虑放置在外部文本中,使用链接指定位置。
⑷适当的舍弃无保留价值的注解。
②其他修饰
例如用于修饰关联的角色、多重性等。对于类、构件、节点等事物,也可以在图形底部增加分隔栏,以填写修饰信息。
③构造型(stereotype)
用于对UML的词汇的扩展,可以把构造型看作元类型,因为每一个构造型会创建一个相当于UML元模型中新类的等价物。UML公共机制中新构造块可以有自己的具体特性、语义和表示法。最简单的构造型可以是在UML的事物图形上增加一个《name》。
使用原则:
⑴确认用基本的UML无法表达你要描述的事物。
⑵应从UML基本事物中选取最相似的图形来构造新构造块。
⑶通过定义一组标记值和约束来详述新构造块的特性和语义。
⑷为了更清晰的标出新构造块,可以对其使用新图标。
④标记值(toggedvalue)
UML公共机制中最简单的标记值是在UML的事物图形的名称下增加一个用{内容}的标记。例如指定枚举类型的值。
使用原则:
⑴确认用基本的UML无法表达你要描述的特性。
⑵泛化的应用规则是:为一种元素定义的标记值可应用到它的子孙事物。
⑤约束
UML公共机制中使用约束,可以增加新的语义或改变已存在的规则。一个约束可以用{内容}标记起来放在相关元素的附近。
使用原则:
⑴确认用基本的UML无法表达你要描述的语义。
⑵将约束放到对应元素的附件,并使用依赖关系连接起来。
⑶如果需要把新语义描述得更精确和更形式化,可用OCL书写新语义。(OCL不知道什么意思)
总的说来,使用基本的UML可以描述你的系统,在某些情况下可能不能完全满足你的需求,那么就可以使用扩展机制来弥补。应该尽可能的使用UML定义好的基本元素,这样才能保证你的UML能被他人理解。
【编辑推荐】