前页 后页

包裹合并

A UML Package Merge between two Packages.

描述

在“包”图中,“包合并”指示两个包之间的关系,由此目标包的内容与源包的内容合并。目标软件包的私有内容不会合并。包合并的适用性解决了多个包包含名称相同,表示同一事物的元素的任何情况。包合并将合并的包中的所有匹配元素及其关系和行为合并在一起。请注意,“包合并”实质上执行所有匹配元素的归纳和重新定义,但是合并的包及其独立元素表示仍然存在并且不受影响。

软件包合并在Enterprise Architect用于图形化目的,但会创建应用于相关软件包的有序软件包关系(可以在软件包“属性”对话框的“链接”选项卡下看到)。这种关系可以反映在XMI导出或Enterprise Architect自动化接口脚本中,以用于代码生成或其他模型驱动体系结构(MDA)感兴趣。

包合并关系对于反映现有架构包含涉及相似元素的功能的情况非常有用,这些功能已合并到正在开发的架构中。合并不会影响合并的对象,并支持产品升级的常见情况。

工具箱图标

Package Merge connector

学到更多

OMG UML规范:

OMG UML规范( UML上层结构规范,v2.1.1,第113-114页)指出:

软件包合并是两个软件包之间的直接关系,指示两个软件包的内容将被合并。从源元素在概念上将目标元素的特征添加到其自己的特征的意义上,这与通用化非常相似,这导致元素将两者的特征结合在一起。

当在不同包中定义的元素具有相同的名称并意图表示相同的概念时,应使用此机制。从通用的基本定义开始,它通常用于为不同的目的提供给定概念的不同定义。给定的基本概念以增量扩展,每个增量在单独的合并包中定义。通过选择要合并的增量,可以为特定目的获得概念的自定义定义。包合并在元建模中特别有用,并且在UML元模型的定义中广泛使用。

从概念上讲,程序包合并可以看作是一个操作,它接受两个程序包的内容并生成一个新程序包,该程序包合并了合并中涉及的程序包的内容。就模型语义而言,具有显式包合并的模型与已执行所有合并的模型之间没有区别。