Relaciones del diagrama de clases UML explicadas con ejemplos
Publicado: 2012-03-01Los diagramas de clases son los componentes principales del modelado orientado a objetos, por lo que es importante que comprenda las diversas relaciones de los diagramas de clases y cómo afectan a su solución. Los hemos enumerado a continuación con ejemplos.
Creately simplifica la creación de diagramas de clase al mostrar la relación lógica basada en el contexto.
Relaciones de diagrama de clase
Las clases están interrelacionadas entre sí de maneras específicas. En particular, las relaciones en los diagramas de clases incluyen diferentes tipos de conexiones lógicas. Los siguientes son los tipos de conexiones lógicas que son posibles en UML:
- Asociación
- Asociación dirigida
- Asociación reflexiva
- Multiplicidad
- Agregación
- Composición
- Herencia/Generalización
- Realización
![Relaciones de diagrama de clase ( UML )](/uploads/article/7021/ZlO74xGyRy3jQIvB.png)
Asociación
![Asociación: una de las relaciones más comunes en los diagramas de clases.](/uploads/article/7021/1ExneVTLwsI3LFFH.jpeg)
es un término amplio que abarca casi cualquier conexión lógica o relación entre clases. Por ejemplo, el pasajero y la línea aérea pueden vincularse como se indicó anteriormente.
Asociación dirigida
![Relación de asociación dirigida en diagramas de clase UML](/uploads/article/7021/LVAcUbY59tINiRgS.jpeg)
se refiere a una relación direccional representada por una línea con una punta de flecha. La punta de flecha representa un flujo direccional contenido en un contenedor.
Asociación reflexiva
![Relación de asociación reflexiva en diagramas de clase UML](/uploads/article/7021/PODpidEILj017dX6.jpeg)
Esto ocurre cuando una clase puede tener múltiples funciones o responsabilidades. Por ejemplo, un miembro del personal que trabaja en un aeropuerto puede ser un piloto, un ingeniero de aviación, un despachador de boletos, un guardia o un miembro del equipo de mantenimiento. Si el miembro de la tripulación de mantenimiento es administrado por el ingeniero aeronáutico, podría haber una relación administrada por en dos instancias de la misma clase.
Multiplicidad
![Relación de multiplicidad en diagramas de clase UML](/uploads/article/7021/ctWT00bLoGzX5h6b.jpeg)
es la asociación lógica activa cuando se representa la cardinalidad de una clase en relación con otra. Por ejemplo, una flota puede incluir varios aviones, mientras que un avión comercial puede contener de cero a muchos pasajeros. La notación 0..* en el diagrama significa “cero a muchos”.
Agregación
![Relación de agregación](/uploads/article/7021/e6aJzWpqpSAyEA7n.png)
se refiere a la formación de una clase particular como resultado de la agregación o construcción de una clase como una colección. Por ejemplo, la clase “biblioteca” está compuesta por uno o más libros, entre otros materiales. En conjunto, las clases contenidas no dependen en gran medida del ciclo de vida del contenedor. En el mismo ejemplo, los libros seguirán siéndolo incluso cuando se disuelva la biblioteca. Para mostrar la agregación en un diagrama, dibuje una línea desde la clase principal hasta la clase secundaria con una forma de diamante cerca de la clase principal.
Para mostrar la agregación en un diagrama, dibuje una línea desde la clase principal hasta la clase secundaria con una forma de diamante cerca de la clase principal.
Composición
![Relación de composición en diagramas de clase](/uploads/article/7021/35KwjMAnYk4lIeNu.png)
La relación de composición es muy similar a la relación de agregación. con la única diferencia de su propósito clave de enfatizar la dependencia de la clase contenida al ciclo de vida de la clase contenedora. Es decir, la clase contenida se borrará cuando se destruya la clase contenedora. Por ejemplo, el bolsillo lateral de una bandolera también dejará de existir una vez que se destruya la bandolera.
![](https://s.stat888.com/img/bg.png)
Para mostrar una relación de composición en un diagrama UML, use una línea direccional que conecte las dos clases, con una forma de diamante relleno adyacente a la clase contenedora y la flecha direccional a la clase contenida.
Herencia / Generalización
![Relación de herencia en diagramas de clase UML](/uploads/article/7021/Qtie4wOCChUfk23X.jpeg)
se refiere a un tipo de relación en la que una clase asociada es hija de otra en virtud de asumir las mismas funcionalidades de la clase padre. En otras palabras, la clase secundaria es un tipo específico de la clase principal. Para mostrar la herencia en un diagrama UML, se dibuja una línea sólida desde la clase secundaria hasta la clase principal utilizando una punta de flecha sin relleno.
Realización
![Relación de realización en diagramas de clase UML](/uploads/article/7021/dCiHNDy8NdXE3nFj.jpeg)
denota la implementación de la funcionalidad definida en una clase por otra clase. Para mostrar la relación en UML, se dibuja una línea discontinua con una punta de flecha sólida sin relleno desde la clase que define la funcionalidad de la clase que implementa la función. En el ejemplo, la impresora implementa las preferencias de impresión que se establecen mediante la interfaz de configuración de la impresora.
Dibujar diagramas de clases usando Creately
Pensamos mucho en las relaciones cuando construimos nuestras herramientas de diagramación de clases. Nuestros conectores se ajustan al contexto y muestran solo las relaciones más lógicas al conectar clases. Esto redujo significativamente sus posibilidades de cometer un error.
Crear un diagrama de clases >>
Dibujar desde cero puede ser engorroso. Puede comenzar de inmediato utilizando nuestros diagramas de clase diseñados profesionalmente. Explore nuestros ejemplos de diagramas de clases y elija el que esté estrechamente relacionado con su sistema.
¿Qué son los diagramas de clase?
Los diagramas de clase son el bloque de construcción principal en el modelado orientado a objetos. Se utilizan para mostrar los diferentes objetos de un sistema, sus atributos, sus operaciones y las relaciones entre ellos.
La siguiente figura es un ejemplo de una clase simple:
![Diagrama de clase simple](/uploads/article/7021/lXDIon8MPnT3zmT8.jpeg)
En el ejemplo, se representa una clase llamada "cuenta de préstamo". Las clases en los diagramas de clases están representadas por cuadros que se dividen en tres:
- La partición superior contiene el nombre de la clase.
- La parte central contiene los atributos de la clase.
- La partición inferior muestra las posibles operaciones asociadas con la clase.
El ejemplo muestra cómo una clase puede encapsular todos los datos relevantes de un objeto en particular de una manera muy sistemática y clara. Un diagrama de clases es una colección de clases similar a la anterior.
¿Alguna pregunta más sobre las relaciones del diagrama de clases?
Espero haber explicado claramente las diversas relaciones entre los diagramas de clases. No son tan complejos como crees y se pueden dominar con algo de práctica. Y al usar nuestra herramienta, no debería tener problemas para crear diagramas de clase. Si tienes más preguntas no dudes en preguntar en la sección de comentarios. Además, consulte esta guía de tipos de diagramas UML con ejemplos para obtener más información.
Referencias:
1. Conceptos básicos de UML: el diagrama de clases Una introducción a los diagramas de estructura en UML 2 por Donald Bell
2. Diagrama de clase publicado en el sitio web de Wikipedia
3. Diagrama de clases UML Parte 1 publicado en el sitio web developer.com
4. El diagrama de clases de Visual Case Tool – Tutorial UML publicado en el sitio web de Visual Case
5. Asociaciones publicadas en el sitio web de Sybase