Explicación de las flechas UML

Hace poco estuve estudiando UML y dibujando diagtwigs simples con flechas comunes simples entre clases, pero sé que no es suficiente. Hay muchas otras flechas: generalización, realización, etc. que tienen significado para el lector de diagtwigs.

¿Hay algún buen recurso que pueda explicar cada flecha (ordinaria, lisa, punteada, rellena de diamantes, diamante)?

Sería lo mejor si tuviera algunos ejemplos de código para ellos.

Aquí hay algunas explicaciones de los documentos de Visual Studio 2015:

Diagtwigs de clase UML: Referencia : https://msdn.microsoft.com/library/dd409437%28VS.140%29.aspx

Diagrama de clase UML

5 : Asociación : una relación entre los miembros de dos clasificadores.

5a : Agregación : una asociación que representa una relación de propiedad compartida. La propiedad Agregación de la función de propietario se establece en Compartida .

5b : Composición : una asociación que representa una relación de parte entera. La propiedad Agregación de la función de propietario se establece en Compuesto .

9 : Generalización : el clasificador específico hereda parte de su definición del clasificador general. El clasificador general está en la punta de flecha del conector. Los atributos, asociaciones y operaciones son heredados por el clasificador específico. Use la herramienta Herencia para crear una generalización entre dos clasificadores.

Diagrama de paquete

13 : Importar : una relación entre paquetes, que indica que un paquete incluye todas las definiciones de otro.

14 : Dependencia : la definición o implementación del clasificador dependiente puede cambiar si se cambia el clasificador en el extremo de la punta de flecha.

Relación de realización

15 : Realización : la clase implementa las operaciones y los atributos definidos por la interfaz. Use la herramienta Herencia para crear una realización entre una clase y una interfaz.

16 : Realización : una presentación alternativa de la misma relación. La etiqueta en el símbolo de piruleta identifica la interfaz.

Diagtwigs de clase UML: Pautas : http://msdn.microsoft.com/library/dd409416%28VS.140%29.aspx

Propiedades de una asociación

Agregación : aparece como una forma de diamante en un extremo del conector. Puede usarlo para indicar que las instancias en la función de agregación poseen o contienen instancias de la otra.

Es navegable : si es verdadero para una sola función, aparece una flecha en la dirección de navegación. Puede usar esto para indicar la navegabilidad de enlaces y relaciones de bases de datos en el software.

Generalización : Generalización significa que el tipo especializado o derivado hereda atributos, operaciones y asociaciones del tipo general o base. El tipo general aparece en el extremo de la punta de flecha de la relación.

Realización : la realización significa que una clase implementa los atributos y las operaciones especificadas por la interfaz. La interfaz está en la punta de flecha del conector.

Avísame si tienes más preguntas.

enter image description here

enter image description here

Creo que estas imágenes son comprensibles.

Una buena hoja de trucos: http://loufranco.com/wp-content/uploads/2012/11/cheatsheet.pdf

Cubre:

  • Diagtwig de clase
  • Diagtwig de secuencia
  • Diagtwig de paquete
  • Diagtwig de objeto
  • Use el diagtwig del caso

Y proporciona algunas muestras.

Mi “hoja de trucos” UML favorita es UML Distilled , de Martin Fowler. Es el único de sus libros que he leído que recomiendo.

Aquí hay un tutorial simplificado:

UML práctico

Para más, recomiendo obtener algo de literatura.

Para una referencia rápida junto con ejemplos claros y concisos, la referencia rápida UML de Allen Holub es excelente:

http://www.holub.com/goodies/uml/

(Hay bastantes ejemplos específicos de flechas y punteros en la primera columna de una tabla, con descripciones en la segunda columna).

Una descripción muy fácil de entender es la documentación de yuml , con ejemplos de diagtwigs de clases, casos de uso y actividades.

La respuesta aceptada que se dice, le faltan algunas explicaciones. por ejemplo, ¿cuál es la diferencia entre una asociación unidireccional y una bidireccional? ambos utilizados en el ejemplo proporcionado. (númeroS ‘5’ en las flechas) Así que si buscas una respuesta más completa y tienes más tiempo, mira aquí .

Si eres más una persona MOOC, un curso gratuito que recomiendo que te enseñe todos los detalles de la mayoría de los diagtwigs UML es este de Udacity: https://www.udacity.com/course/software-architecture -diseño – ud821