【问题标题】:aggregation association in object diagram对象图中的聚合关联
【发布时间】:2012-10-14 20:16:35
【问题描述】:

类之间的关联(当然在类图中)是对不同对象(在对象图中)之间的一组链接的抽象。聚合是一种特殊的关联,它有一个特殊的符号,菱形。

A House has many (zero to many) windows.

下图中的对象名称实际上应该加下划线。我的绘图助手yuml 对此快速图片没有明显的调整,所以我希望这不会太混乱。两张图片的唯一区别是第一张的菱形标志。

my:House has side:Window
         has back:Window
         has front:Window

对象(即实例图)中是否也使用了菱形符号?还是对象图中的链接总是简单的线条?

【问题讨论】:

  • 请考虑从 vainolo 的答案中删除正确的标记 - 这绝对不正确

标签: uml aggregation object-diagram


【解决方案1】:

您也应该在链接上使用菱形 - 显然只有当关联是聚合时。

顺便说一句。对象名称(和类型)应加下划线以更容易将它们与类区分开来。

参见 http://www.omg.org/spec/UML/2.4/Superstructure/PDF/ 中的 UML 2.4 上层结构 7.3.22 和图 7.52

【讨论】:

  • 我想我在这个主题中的 UML 知识要么是错误的,要么是过时的(或两者兼而有之!)。另一轮为我阅读 UML 上层建筑:-)。感谢@Christian 的更正。
  • 我真的不记得 vainolo 昨天建议了什么,但它听起来很理智,对我来说更重要。至于参考文献,我猜 7.52 是下划线的提示。这是所使用软件的技术问题,对此我深表歉意。
  • 至于 7.3.22 我找不到具体建议是否使用菱形,只是提示使用关联箭头。如果您阅读其他内容,更倾向于在对象图中使用与在类图中相同的符号,您能指出它吗?
  • 一个小提示:虽然在对象/类图中使用菱形是可以的,但由设计者根据他想要在特定图表上达到的细化程度来决定是否这样做。
  • “实例规范使用与其分类器相同的符号来描述”和“分类器为关联的实例规范表示链接并使用与关联相同的符号显示”引导我这个结论。
【解决方案2】:

您的图表有问题。因为 House 和 window 之间的关系应该是一个组合,而不是聚合。如果我们选择一扇特定的窗户,那扇窗户就属于一所房子,而且只有一所房子。如果房子死了,窗户也会死。这就是作曲。

您的问题的答案是,“我们不需要在对象图中显示聚合和组合”。

【讨论】:

    猜你喜欢
    • 2011-02-11
    • 2013-05-14
    • 2015-05-24
    • 2012-07-01
    • 2016-06-27
    • 2012-03-27
    • 2013-01-28
    • 2012-05-13
    相关资源
    最近更新 更多