- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
UML的扩展 为避免增加UML语言整体的复杂性,UML并没有吸收所有面向对象的建模技术和机制,而是给UML设计了扩展机制,用户可以定义和使用自己的元素,也就是说,CASE工具必须同时支持语言原有的元素和用户定义的扩展。 扩展的技术是UML的元素,然后给这些元素的一些变形加上新的或者对某种元素的使用增加一些限制。UML有三种扩展其核心的机制,这些机制也定义了一些标准扩展以及某些元素的变形。 UML的三种扩展机制是:加标签值(性质),约束和版类。 加标签值是附属于UML元素的性质,类中的操作所附加的前置条件和后置条件是一种标准的加标签值。 约束是UML中限制一种或多个元素语义的规则。约束可以附加在类或对象上,并且经常附加在关系上,约束参与关系的类或对象 版类是最复杂的扩展机制。它是一种附加在已有模型元素的语义,如果版类附加于某种元素,则覆盖该元素的语义,该元素就成为一种新的元素。典型的版类如为类定义的元类(metaclass),为包之间的相关关系定义的导入(import)等。在这种情形中,版类在原来的元素(类或相关关系)中增加了新的或另外的语义。 有许多原因需要对UML进行扩展,例如,如果使用的方法可能会有些概念UML不能直接支持的,但是扩展UML就能够表达;或着应用领域或机构可能有些重要的普通概念需要定义在建模语言中;又或者建模人员想通过扩展UML来定义一些更为确切和清晰的模型。 一:UML的架构 UML的定义是在一个建模概念框架下定义UML的,如图由四个不同的抽象层次或级别组成: 元元模型层由最基本的元素组成,它们是UML的基础--“事务”的概念,表示任何可以被定义的事物。这一抽象是用来形式化概念的表示,并为指定元模型定义语言。 元模型层包括所有组成UML的元素,其中有来自面向对象的概念和面向组件的范例。这一层的每个概念都是元元模型概念“事务”的实例。这一抽象层是用来形式化范例概念,并为指定模式定义语言的。 模型层有UML模型组成。这一层为问题,解决方案或系统建模。这一级的每个概念都是元模型层的概念的实例。这一抽象层是用来形式化概念,并根据一给定个体定义表达沟通的语言。这一层的模型通常叫做类或类型模型。 用户模型层由UML模型的例子组成。这一级别的每个实例都是模型层和元模型层概念的实例。这一抽象级别根据特定的个体形式化特定的表达,这一抽象级的模型通常叫做对象或实例模型。 在这一框架内,用“元”的概念表示在一组非元概念以及它们的元概念之间的关系。“元”概念不是模型的一个性质,而是模型在与其他模型相关时所扮演的角色:元元模型与元模型之间的关系与元模型与模型之间的关系是一样的。 二: UML核心语义元素,模型元素,视图元素 元素是UML大多数成分的抽象基本类,它是一个基础,在此之上可以附加一些其他机制。元素被专有化为模型元素、视图元素、系统和模型。 模型元素是被建模系统的一个抽象。如类、消息、节点、事件等 视图元素是一个映射---单个模型元素或一组模型元素的文字或图形映射。视图元素是文字或图形符号,如矩形代表类。 模型元素是概念,而视图元素则是用来构建模型(图)的符号。 视图元素也被专有化为图,它们是用例图、组建图、类图、展开图、状态图、活动图、协作图以及对象图。 二:UML核心语义--包 包“拥有”元素并且引用它们,如下图所示。包是一种组合机制,可以拥有或引用元素(或其他包)。包中的元素可以有很多种,如模型元素、视图元素、模型和系统。因此包是UML中最一般的组合机制。 包图 二:UML核心语义--模型元素 模型元素被专有化后对系统建模非常有用。大多数元素都有相对应的视图元素来表示它们。但是,某些模型元素就没有相应的表达元素。如模型元素的行为,就无法在模型中可视化地描述。图7-5显示了如何把模型元素专有化为UML所使用的建模概念。模型元素被专有化为以下子类: 类型: 一组具有相同的操作、抽象属性和关系以及语义的实例的一个描述。类型被专有化为原始类型、类和用例。类被专有化为活动类、信号、组件和节点。所有类型子类都有一个相应的视图元素。 实例:一种类型所描述的一个单个成员。类的实例(类型的子类)是对象,对象与实例类似(但通常只是类的实例)。 行为实例:行为的实例。 笔记:附加在一个元素或一组元素的一条注释。笔记没有语义,模型元素的笔记在相应的视图元素。 值:类型定义域里的一个元素。类型定义域是某个类型的定义域,如42属于整数的类型定义域。 版类:建模元素的一种类型,扩展UML的语义。版类必须以UML中已经定义的元素为基础,可以扩展语义,但不能扩展已存在元素的结构。UML预定义了一些版类,其他是用户定义的。版类有相应的视图元素《版类名》。 二:UML核心语义--模型元素 关系:模型元素之间的一种语义连接。关系被专有化为通用性、相
文档评论(0)