Class 关联必要性

Class association necessity

下图基于以下事实:

我的问题是如何证明 Admin 会将索赔发送给代理机构?我必须在 OrganizationReclamation 之间建立关联吗?

...how can I show that Admin will send the claim to an agency?

UML Class Diagram 不是显示所有内容的文档。为了记录管理员将向代理机构发送索赔,您可以使用 UML Sequence Diagram 或其他一些行为图

有效地记录它

...do I have to make an association between Organization and Reclamation?

否,如果该机构不需要关心究竟是谁提出了索赔或此人的角色是什么(例如 "admin"),那么您不必将其添加到 class模型(并显示一些关联)

...diagram...based on these facts...

为了在单页样式的图片中描述整个过程,您(和您的业务合作伙伴)会发现 Business Process Model and Notation (BPMN) 除了 UML[=20] 之外的图形语言非常有用=]

如果您的要求包括要记录 AdminOrganization 之间的通信,那么您需要在 class 图表中注意这一点。而且,事实上,您已经有了一个项目:NotifyOrganization 协会 class。但是请注意,使用关联 class 的可疑 UML 概念并不是一个好主意,它没有明确的语义并且容易混淆。您对 NotifyOrganization 关联的多重性的错误建模似乎证实了这一点,它不能是一对一(或 1 到 0..1),而是多对多(* 到*).

因此,最好将 NotifyOrganization 关联 class 替换为普通的 class(可能使用改进的名称,例如 Notification)并将其附加到 AdminOrganization 具有两个多对一关联,这样每个通知都链接到一个管理员和一个组织。

请注意,通知表示一个 (communication/message) 事件,因此 Notification 表示一种事件类型。在业务信息模型中,同时具有对象类型和事件类型是很常见的,在 UML class 图中都是 classes。