UML 和 GeneralizationSet 的所有权

问题描述 投票:0回答:1

UML 2.5.1 规范可在 OMG 网站上免费下载,但没有具体说明

GeneralizationSet
的理想所有者元素应该是什么。我们有以下选择:

  1. 由于

    GeneralizationSet
    PackageableElement
    ,我们可以将所有权分配给
    Package
    。这很可能是它包含的所有泛化的最近的封闭命名空间(或者至少对于“通用”分类器来说,它对于其集合中的所有泛化必须相同),但是在UML 规范;

  2. 由于 GeneralizationSet 中的所有 Generalization 必须具有相同的“通用”分类器,因此这可以是 GeneralizationSet 本身的指定所有者;

  3. 可以有关联的

    powertype
    ,但由于可能不存在(多重性为
    [0..1]
    ),并且 GeneralizationSet 必须有一个所有者,所以这是行不通的;

  4. 还有什么吗?

我倾向于选择选项

2
,但不确定这是否有任何不可预见的影响?

language-lawyer uml
1个回答
0
投票

选项 2 和 3 是不可能的,因为类不能拥有 GeneralizationSet。我认为选项 1 是最佳选择。

泛化集可以在没有泛化的情况下存在。因此,可以首先定义一个集合,然后找到它的概括。我可以想象一种利用它的方法。

所以,对于他们来说,确实没有最好的地方。这取决于建模者。将它们放在靠近概括的地方可能是个好主意。

© www.soinside.com 2019 - 2024. All rights reserved.