实时通知 UML 类图

我正在尝试实现一个实时通知系统(如fb,xing,twitter..)。因此,我在生成实体之前创建了一个 UML 类图。展示柜如下:


编辑:我想过这种方法,似乎这不是正确的方法。让我们检查以下场景:用户 U 在事件 E 的图像 I 中添加注释 C。如何正确存储它,我的意思是事件通知只在事件E上有一个引用,但在I和C上没有。因此,我还需要创建一个“EventImageNotification”类,这将是一团糟。只有一个“通知”类并向其添加一个“元数据”字段(用于存储对所有涉及字段的引用)会是一个更好的解决方案吗?


(我稍后使用OR映射器来实现关系)。

[ 1 ] 一个用户可以创建事件,例如“Silvester Party 2015”。(一对多)。此事件有一个仪表板,当创建者在该事件上发布内容时,用户可以订阅以接收更新 (ManyToMany)。

[ 2 ] 当用户在事件的仪表板上发布内容时,订阅用户应收到通知。因此,我创建了 EventNotification 类。用户和事件通知之间的关系是很多的。

[ 3 ] 为了保持干净,我创建了一个与通知类型相关的抽象通知类。通知类型类似于 name = “EventPost”,模板 = “用户用户在事件__event上发布了新内容”。

[ 4 ] 抽象类 NotificationConnector 为 EventNotification 和 User(UserEventNotification)之间的映射类提供字段。我创建它们是为了在将来轻松扩展它,例如,用户可以创建也触发事件的书籍等。然后,我需要创建一个“BookNotification”和一个“UserBookNotification”类来存储这个新实体的通知。

这种方法是好的还是完全搞砸了?请告诉我你对这张图的想法:

(用于构建关联的箭头应该是普通线,我使用的工具无法做到这一点)。

Notification UML


答案 1

仅举几点观察:

  • 这两个抽象类似乎是多余的,因为您只在一个上下文中使用它们。
  • 从 的连接应该转到而不是抽象类(我建议无论如何都要删除它)。hasUserUserEndNotification
  • 我会做一个NotificationType<<enumeration>>
  • 而不是使用关系,我会在 and 之间使用关联类并添加 and 属性。ownsUserEventisOwnerisSubscriber

答案 2

推荐