简而言之:目前我在 Sparx Enterprise Architect 中执行了大量的白盒建模。但是,我想知道 EA 不允许我添加两次子组件。是 UML 建模问题还是工具问题?
说明:为了解释我的主题,让我们假设我们要为公寓建模。公寓由房间组成,即浴室和客厅。两种房间都包括一扇门。门基本上是相同的 - 相同的制造商,相同的产品。
目标:房间的门是平等的。因此,我们不应该对它们单独建模,而是重用单个门组件(从我的角度来看)。下图显示了我的设置:
现在,我想创建组件图。我想要达到的目标如下所示。你会猜到我不可能得到想要的模型。相反,红色组件存在问题。
ISSUE:对于组件图,我总是选择将组件作为链接插入到 Sparx Enterprise Architect 中。当我第二次尝试粘贴门(子)组件时,我收到以下反馈:
注意:根据我的经验,我知道来自 Sparx Enterprise Architect 的错误消息通常表明存在一些建模错误。我在互联网上阅读了很多内容,甚至还买了一本关于该主题的 UML 书。不幸的是,在这两个来源中,我都无法找到我的建模问题的解决方案。解决此问题的唯一方法是将门组件作为实例而不是链接插入到组件图中,或者深度复制门组件。但是,这两个选项都感觉不自然,我觉得它们会在进一步的建模过程中引起后续问题。