7.3.3 Asociación (desde kernel), página 36, superestructura UML, v2.4.1:
¿Hay algún ejemplo de la vida real en UML sobre la asociación propiedad de un clasificador y una asociación propiedad de una relación?
Chriss
Espero que este simple ejemplo ayude.
Supongo que tienes una clase de Java
public class A { private B b; ... }
En UML modelarías esta relación como una asociación de A a B:
A -> B
con los siguientes elementos de modelado:
Class B Class A + Property b : B [0..1] (owned by the class) Association A_to_B + Property from_a : A [1] (owned by the association)
Donde la asociación A_to_B tendría 2 miembros de asociación (miembro) refiriendo dos de las propiedades mostradas arriba (A :: b y A_to_B :: from_a):
Ahora, pensemos la siguiente situación
public class A { private B b; ... } public class B { private A a; ... }
En UML, podría modelar la asociación (navegable en ambos sentidos) entre A y B:
A <-> B
Cuyos elementos del modelo serían:
Class B + Property a : A [0..1] (owned by the class) Class A + Property b : B [0..1] (owned by the class) Association A_B
Donde la asociación A_B tendría 2 miembros de asociación (miembro), refiriendo las dos propiedades mostradas arriba (A :: b y B :: a).
En C ++, la instancia A puede tener la instancia B no por puntero, sino directamente. No hay ningún signo UML especial para él, debe mostrarse de la misma manera que el atributo de puntero normal.