实时通知UML类图

时间:2015-10-13 12:57:33

标签: php symfony notifications uml entity-relationship

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

  编辑:我想到了这种方法,似乎这不是正确的方法。让我们检查下面的情况:用户U在事件E的图像中添加了注释C.如何正确存储,我的意思是EventNotification仅对事件E有引用,但不在I和C上引用因此我需要创建一个" EventImageNotification"上课也是一团糟。如果只有一个" Notification"它会是一个更好的解决方案吗?分类并添加一个"元数据"字段到它,它存储对所有相关字段的引用?

(我以后使用OR-Mapper来实现关系)。

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

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

[3]为了保持清洁,我创建了一个与Notification类型相关的AbstractNotification类。通知类型类似于name =" EventPost"和模板="用户用户在事件__event"上发布了新内容。

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

这种做法是好的还是完全搞砸了?请告诉我您对此图表的看法:

(构建关联的箭头应该是正常的线,我使用的工具不能这样做。)

Notification UML

1 个答案:

答案 0 :(得分:0)

只是一些观察:

  • 这两个抽象类似乎是多余的,因为你只在一个上下文中使用它们。
  • has的{​​{1}}连接应该转到User,而不是抽象类(我建议放弃)。
  • 我要UserEndNotification NotificationType
  • 而不是使用<<enumeration>>关系,我会使用ownsUser之间的关联类,并添加EventisOwner属性。