MongoDB集合的UML类图

时间:2016-12-22 11:22:55

标签: mongodb graph uml

我正在尝试为MongoDB中的图形创建UML图。

我试过了

enter image description here

但我担心这是错误的,因为source中的targetEdge都应该指向Node,所以我猜它应该有两个箭头?

另外,我不知道在问号上写什么。

图表可以有多个节点和边缘,因此从NodeGraphEdgeGraph的关系是一对多的(即只有是一个与Graph / Node相关联的Edge个人。此外,只有一个Node与一个source相关联,一个Node与一个target相关联。

为MongoDB集合绘制这些UML图是否正确,因为它们是非关系数据库?

1 个答案:

答案 0 :(得分:0)

我会以这种方式开始建模:

enter image description here

因此,图形由许多通过边连接的节点组成。边缘总是在两个(不一定是不同的)节点之间。通过这种方式,您无法单独模拟具有不同关系的图形。如果需要,您需要在此处使用不同的模型(可能您需要在GraphEdge之间添加关联)。唉,这显示了如何使用UML:开始讨论并讨论问题域。

现在,在这个阶段,这最终如何映射到数据库是完全不相关的。您可以稍后将其映射到关系数据库和非关系数据库。

关于你评论的问题:

  • 类图中关联的位置无关紧要。他们只需要以正确的元素结束。
  • +source+target是角色名称。它们与名称为Edgesource且类型为target的{​​{1}}属性相同。 Node是公开范围(+将是私有的;还有2个)
  • -表示1..*Graph有很多关系。它没有说明这是如何实现的。可以是后来的数组或表达多重性的其他方法。
  • 是。角色和多样性的地位很重要。这是一个缺点,因为UML工具会自动放置它们,并且它们最终会被许多连接器/窄元素空间严重放置。