java - 医院管理类图澄清

标签 java uml

我需要验证我是否正确识别了这些类之间的关系。 例如假设我有以下实体,

Doctor 1---------m Diagnosis m----------m Prescriptions m ----------1 Patient
  1                                                                      m
  -                                                                      -
  -                                                                      -
  ------------------------------------------------------------------------

所以它的基本诊断是一个引用表,管理员医生在其中输入了所有诊断详细信息。例如,

Diag_ID, Category, Name,       Desc
1        Skin      Red Skin    Red spots in skin

所以我的业务流程是医生为患者开处方。所以他将提供患者 ID(患者注册也会发生,但我没有显示这些实体)。 然后,从 Doctor.createPrescription(patentId) 中,他将引用诊断表并创建包含相关详细信息的处方。假设处方类构造函数采用 new Prescription(diagnonsisId,doctorId,patentID)。

是否有正确的方法来识别它们之间的关系? 创建处方时链接医生和诊断类别是否正确。如果诊断类型不存在,医生也可以创建新的诊断类型。

因此,一名医生可以诊断患有多种症状的患者。例如,一个带有皮肤,另一个带有胸部。所以在这种情况下,一位医生可以做出多种诊断。但所有这些都应该由一名医生完成。因此,对于每次诊断,医生可以开出单独的处方,或者可以为所有诊断开出一个处方。所以它是多对多的关系。最后,这些处方应该属于一位患者。不能在患者之间共享。我想我的模型是正确的知道吗?

如果多个医生可以诊断同一个病人怎么办?如何扩展它来支持该需求?

任何建议以及该模型是否从一开始就是错误的。请推荐一个新型号

最佳答案

考虑:

  • 患者是拥有诊断列表的人,因此诊断列表应该由 Patient 类持有
  • 医生将被允许修改此列表并为给定的诊断创建处方。
  • 多个医生可以修改患者的诊断列表
  • 但是当一位Doctor正在修改这个列表时,他应该锁定这个列表并且在完成之前不要释放它。
  • 当锁处于 Activity 状态时,其他医生可以查看该列表,但在锁释放之前他们应该无法修改该列表。

关于java - 医院管理类图澄清,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13715531/

相关文章:

java - IntelliJ 显示启动画面然后退出

java - 递归 id 生成返回错误值,但生成正确值?

uml - Enterprise Architect 将类元素设置为弃用

architecture - Enterprise Architect 中的导入/导出

iphone - 如何从 Objective-C 代码自动生成 UML 图?

来自另一个类的静态调用的 UML 关系

java - 捕获现有的构建

java - 如何从 Spring Boot 重定向/转发 Angular 页面?

java - 非 Java EE 5 servlet 和 Java EE 5 servlet 容器之间有什么区别?

c++ - Enterprise Architect - 从类图中的接口(interface)继承方法