Agregación relación entre cliente y persona Organización /
-
27-09-2019 - |
Pregunta
Tengo un Cliente objeto que, o bien tienen un persona objeto o Organización objeto en ella. Estos Person objetos o Organización los objetos pueden tener relaciones con otros objetos independientes de la Cliente objeto. En este caso se debe utilizar una asociación general agregación entre Client -> Person
y Client -> Organization
donde el Cliente objeto es el todo.
Tenga en cuenta también estos escenarios:
- persona podría ser una normal de persona en algunos escenarios como; persona realiza el pago en nombre de Cliente (* Organización *)
- persona podría ser un Cliente , que compró un Producto de nosotros.
- persona podría ser un Proveedor
Solución
Mientras que realmente no proporcionó suficiente información, parece que usted está describiendo un típico Papel Clase Modelo .
Sospecho que su cliente no lo hace realmente Tienes una persona o una organización, sino que dicha persona o una organización es de un cliente, o OIA, ya sea una persona o una organización puede desempeñar un papel de un cliente en una cierta relación.
Hay varias maneras de modelar eso, y ningún solución correcta solo. Es posible encontrar este artículo útil
Otros consejos
no olvides una restricción XOR entre ambas asociaciones (ya que un cliente no puede conectarse tanto a una persona y una organización)