En esta página web que muestra cómo dibujar un diagrama de clases, ¿por qué la flecha de asociación apunta de orden a cliente y no de cliente a pedido?Dirección de la flecha de asociación en diagramas de clases UML
Respuesta
Su porque una orden "tiene una" referencia a un cliente.
En una base de datos, esta sería una clave externa en la tabla de órdenes, que almacena la identificación del cliente.
En el código, almacenaría una referencia al objeto de cliente asociado en un objeto de orden. Entonces la orden apunta al cliente y no viceversa.
Posiblemente porque un pedido está asociado con un cliente? Se puede ver que este tipo de cosas funciona de cualquier manera, o a veces ambas.
Sé que están asociados entre sí. La pregunta no es por qué hay una flecha, se trata de la dirección de la flecha. – neuromancer
No están asociados entre sí: una orden está asociada a un cliente. –
Las flechas describen las formas en que puede navegar. Entonces, en este diagrama, puede pasar de un pedido a otro. Y para el otro lado: ninguna flecha significa NO "no navegable", sino "sin comentarios". No hay una manera definida de hacerlo.
Es una dependencia , que es un tipo especial de asociación débil. Significa que para que exista una orden, debe existir un cliente en algún momento. Puede haber algún punto en el ciclo de vida de "orden" donde este requisito no se aplique.
Esto no es una dependencia. Una dependencia no es un tipo especial de asociación, es un tipo especial de relación (de la misma forma que la asociación es otro tipo de relación) –
Los extremos de asociación tienen una propiedad de navegabilidad booleana en UML. En este caso, la navegabilidad en el orden de dirección para el cliente se establece en verdadero mientras que la navegación en la dirección del cliente para ordenar se establece en falsa.
Con esto, el diseñador del modelo expresa que ahora ordena quién es el cliente asociado con el pedido, pero los clientes no tienen acceso directo a sus pedidos.
Si miramos el código de Java para este modelo, la navegabilidad es más fácil de entender. Para este ejemplo, este navegabilidad significa que la Orden tiene un atributo de tipo de cliente, pero el cliente no tiene atributo de recogida para almacenar su/sus órdenes
las asociaciones no siempre corresponden a los atributos UML y definitivamente no corresponden a los atributos de las clases Java (no existe tal cosa en Java, por lo que usar 'atributo' en un contexto de Java podría significar campo o propiedad o propiedad de frijol). –
Esto podría ayudar:
Diagramasde clase UML: Directrices: http://msdn.microsoft.com/en-us/library/dd409416%28VS.100%29.aspx
propiedades de una Asociación
es navegable : Si es verdadero para un solo rol, aparece una flecha en la dirección de navegación. La asociación se puede leer en esta dirección. Puede usar esto para indicar la navegabilidad de los enlaces y las relaciones de base de datos en el software.
Propiedades de las Asociaciones en los diagramas de clase UML: http://msdn.microsoft.com/en-us/library/dd323862%28VS.100%29.aspx
alt text http://i.msdn.microsoft.com/Dd323862.UML_ClassProp(en-us,VS.100).png
Si uno papel es navegable y el otro no lo es, aparece una flecha (7) en la asociación en el navegable dirección.
Las flechas describen la navegabilidad.
- extremo navegable se indica mediante una punta de flecha abierta en el extremo de una asociación
- no termina navegable se indica con una pequeña x en el extremo de una asociación
- No adorno en el extremo de un medio de asociación navegabilidad no especificado
Tomado de: http://www.uml-diagrams.org/association.html
- 1. Cuándo usar clases de asociación UML?
- 2. Creación de diagramas de clases UML en NetBeans 7.1.1
- 3. Javadoc Inserción de diagramas UML
- 4. UML problema de comprensión de asociación
- 5. Diagramas de flujo en comparación con diagramas de actividad UML
- 6. Dibujando diagramas de estados UML
- 7. Agregación de interfaz en diagramas de clase UML
- 8. UML - ¿Cómo administrar diagramas de clase grande?
- 9. Representación textual para diagramas de clase UML: DSL para UML
- 10. Agregación UML vs asociación
- 11. UML asociación multiplicidad
- 12. Importación de diagramas UML a Visual Studio
- 13. Clases privadas y uml
- 14. ¿Cuál es el significado de la flecha discontinua en el diagrama de clases UML?
- 15. Diagramas UML que en realidad son bonitos?
- 16. Crear diagramas UML después o antes de la codificación?
- 17. Biblioteca para generar diagramas UML
- 18. ¿Cómo puedo generar diagramas UML de Xcode4
- 19. Diagramas de Clase UML Conceptual vs Especificación vs Implementación
- 20. ¿Qué tipo de diagramas UML usas?
- 21. Diagrama de clase UML Asociación vs (Agregación | Composición) -Diamantes
- 22. Organización automática de diagramas UML en visual studio 2010
- 23. Devolución de llamada asincrónica en diagramas de actividad UML
- 24. Herramienta para generar diagramas de clases UML a partir de las anotaciones de Doctrine
- 25. Graphviz + Doxygen para generar diagramas de clase UML
- 26. Representación de diagramas UML a partir de archivos de texto
- 27. Cómo dibujar diagramas UML usando Eclipse
- 28. ¿Hay alguna forma de escanear diagramas UML escritos a mano en una herramienta UML?
- 29. Comprender por qué la flecha de extensión apunta en la dirección opuesta
- 30. Cómo usar doxygen para crear diagramas de clase UML desde la fuente C++
¿Por qué no debemos decidir que 'cliente' tiene muchos' pedidos' y agregar una referencia de colección de pedido al cliente? –