【发布时间】:2021-10-18 10:26:35
【问题描述】:
我对领域模型非常陌生,我正在努力加深我的理解。我已经围绕我将提供的场景创建了这个域模型。我觉得这个模型很简单,因此感觉不正确,并且可能缺少我可能没有想到的元素,尽管我想不出在给定场景的情况下还需要在域模型中包含什么。这个想法是为了展示我觉得我已经设法实现的真实世界级实体之间的关系。
场景:允许您创建用户、项目、公司和签发工单的管理应用程序。项目分配给公司,用户分配给项目,问题单分配给用户。工单的状态可以更改。
变化
实施建议的更改。我认为这是基于返回的反馈来表达想法的更好方式,尤其是在组合的使用方面。我还更新了多重性以更好地代表场景。
进一步的变化
【问题讨论】:
-
User和Project之间的多重性似乎关闭了。一个项目只能分配一个用户?此外,Issue Ticket和User之间的组合肯定是错误的。我无法想象票是由用户组成的,如果票被删除,用户就会被删除。 -
在这种特殊情况下,我想说的是,如果没有用户,票证就无法存在。在创建工单时,必须分配一个用户,否则不会创建工单,这将是一张不属于任何人的工单。考虑到这种情况,构图是否仍然不正确?
-
作曲是关于终身责任的。 SO上有一些答案(有些好,有些不太好)。然而你的想法是不正确的。
-
User 端的下限 1 已经确保始终有一个 User 连接到工单。组合是关于整体部分的关系。
-
@GeertBellekens 这对于 Project > Company 是一样的吗?多重就够了,聚合应该去掉?
标签: uml domain-driven-design domain-model domain-modelling