Modelo Clase

 

La agregación y la composición son dos conceptos importantes en el modelado de diagramas de clases en UML (Unified Modeling Language). Ambos conceptos se refieren a relaciones entre objetos, pero tienen diferencias clave en términos de propiedad y ciclo de vida.

Agregación

La agregación es una relación entre objetos que representa una asociación "parte-todo" en la que las partes pueden existir independientemente del todo. En otras palabras, los objetos "parte" pueden vivir fuera del objeto "todo" y no son destruidos cuando el objeto "todo" es destruido.

Definición:

  • Agregación: Una relación en la que un objeto (el contenedor) está compuesto por otros objetos (los contenidos), pero donde los contenidos pueden existir independientemente del contenedor. Se denota con una línea con un rombo vacío en el extremo del contenedor.

Ejemplo gráfico de Agregación:

Consideremos un ejemplo de un Departamento y Empleados. Un departamento puede tener múltiples empleados, pero los empleados pueden existir sin el departamento.

+----------------+            +-------------+

 | Departamento   |<>----------| Empleado    |

 +----------------+            +-------------+

 | nombre         |            | nombre      |

 +----------------+            +-------------+

Composición

La composición es una relación más fuerte que la agregación. Representa una asociación "parte-todo" en la que las partes no pueden existir independientemente del todo. Si el objeto "todo" es destruido, todas las partes también son destruidas.

Definición:

  • Composición: Una relación en la que un objeto (el contenedor) está compuesto por otros objetos (los contenidos), y donde los contenidos no pueden existir independientemente del contenedor. Se denota con una línea con un rombo sólido en el extremo del contenedor.

Ejemplo gráfico de Composición:

Consideremos un ejemplo de una Casa y Habitaciones. Una casa puede tener múltiples habitaciones, pero las habitaciones no pueden existir sin la casa.

 +------------+            +------------+

 | Casa       |■----------| Habitación |

 +------------+            +------------+

 | dirección  |            | tamaño     |

 +------------+            +------------+

Estos diagramas ayudan a visualizar las relaciones y restricciones entre diferentes clases en un sistema, permitiendo un diseño más claro y estructurado.

 

 

Comentarios

Entradas populares de este blog

Tarea: Proyecto integrador fase 1: levantamiento de requisitos

Presentación Programación de Dispositivos Móviles

Principales diagramas de UML