Base de Datos Docente: Ing. Emilio Rearte



Descargar 0,66 Mb.
Página5/7
Fecha de conversión12.01.2017
Tamaño0,66 Mb.
1   2   3   4   5   6   7

Grado de la Asociación

El grado de una asociación se determina por el número de clases conectadas por la misma asociación. Las asociaciones pueden ser binarias, ternarias, o de mayor grado. Las asociaciones se consideran binarias si relacionan solo dos clases.

Ejemplo: La asociación entre Persona e Instituto es una asociación binaria.

Las asociaciones pueden ser de mayor grado si relacionan a la misma vez más de dos clases. Aparte de relaciones binarias, lo más común son relaciones ternarias (entre tres clases), relaciones de más alto nivel son mucho menos comunes. Mientras el grado de una relación aumenta, su comprensión se dificulta, y se debe considerar partir las relaciones en varias relaciones binarias.

Ejemplo: Puede existir una relación ternaria entre Estudiante, Profesor, y Universidad donde "un estudiante estudia con un profesor en una universidad".

El grado de las ligas corresponden al de las asociaciones.




Asociaciones Reflexivas

Las asociaciones pueden ser reflexivas, relacionando distintos objetos de una misma clase.

Ejemplo: Para una clase persona puede existir una asociación pariente que describe que dos objetos de tipo persona, como Juan Pérez y Laura Pérez son parientes.

El grado de una asociación reflexiva puede ser binario, ternario, o de mayor grado, dependiendo del número de objetos involucrados.

Ejemplo: Para la clase persona puede existir una asociación ternaria entre tres personas donde uno es el abuelo, el otro es el hijo del abuelo, y el tercero es el nieto del abuelo.

Las asociaciones reflexivas relacionan distintos objetos de una misma clase.

Ejemplo: Juan Pérez es pariente-de Laura Pérez, donde ambos son objetos de tipo Persona, como se muestra en la Figura







E
jemplo: La asociación reflexiva pariente-de para la clase Persona se muestra en la siguiente figura

Atributos de Liga (o Asociación)

Al igual que un atributo de clase es propiedad de la clase, un atributo de asociación (o atributo de liga) es propiedad de una asociación. La notación es similar a la usada para los atributos de clases, excepto que se añade a la asociación, y no se incorpora un nombre de clase, como se muestra en la siguiente figura:






E
jemplo: Para una asociación entre Persona y Compañía, se puede definir los atributos salario y puesto como atributos de la asociación trabaja-para, como se muestra en la Figura de abajo:





Ensamblados: Agregación y Composición
Los ensamblados, en particular la agregación y composición, son formas especiales de asociación entre un todo y sus partes, en donde el ensamblado está compuesto por sus componentes. El ensamblado es el objeto central, y la estructura completa se describe como una jerarquía de contenido.


  • Agregación:

(el objeto base utiliza al incluido para su funcionamiento). Es un tipo de relación dinámica, en donde el tiempo de vida del objeto incluido es independiente del que lo incluye.




  • Composición:

(el Objeto base se construye a partir del objeto incluido). Es un tipo de relación estática, en donde el tiempo de vida del objeto incluido esta condicionado por el tiempo de vida del que lo incluye.

Un ensamblado puede componerse de varias partes, donde cada relación se considera una relación separada. En el caso de agregación, las partes del ensamblado pueden aparecer en múltiples ensamblados. En el caso de composición, las partes del ensamblado no pueden ser compartidas entre ensamblados.

Ejemplo: Una Red de Computadoras se puede considerar un ensamblado, donde las Computadoras son sus componentes. Este también es un ejemplo de agregación, ya que las Computadoras pudieran ser partes de múltiples Redes de Computadoras a la vez. Adicionalmente, las Computadoras pueden existir independientemente de la existencia de la Red de Computadoras.

Ejemplo: Un Automóvil se puede también considerar un ensamblado, donde el Motor y la Carrocería son sus componentes. Este también es un ejemplo de composición, ya que el Motor y la Carrocería son partes del Automóvil, y a diferencia de la agregación, no pueden ser compartidos entre distintos Automóviles a la vez.

Adicionalmente, no tiene mucho sentido que el Motor y la Carrocería existan de manera independiente al Automóvil, por lo cual la composición refleja de manera importante, el concepto de propiedad.

El ensamblado tiene propiedades de transición: Si A es parte de B y B es parte de C; entonces A es parte de C.

Ejemplo: Si el Motor es parte del Automóvil, entonces sus propiedades, como su posición y velocidad, están dadas por la posición y velocidad del Automóvil.

El ensamblado es antisimétrico: Si A es parte de B, entonces B no es parte de A. Estas propiedades se propagan entre el ensamblado y sus componentes.

Ejemplo: Si el Motor es parte del Automóvil, entonces el Automóvil no es parte del Motor.



  • Se considera un ensamblado y no una asociación regular:

  • Si se puede usar la frase "parte-de" o "consiste-de" o "tiene";

  • Si algunas operaciones en el todo se pueden propagarse a sus partes;

  • Si algunos atributos en el todo se pueden propagar a sus partes;

El ensamblado es común en los objetos interfaz. En un sistema de ventanas, por ejemplo, una ventana puede consistir de botones, menús, y barras (“scrollbars”), cada una modelada por su propio objeto interfaz. El resultado es una estructura de interfaz en forma de árbol. La decisión de usar ensamblados es un poco arbitraria, y en la práctica no causa grandes problemas la distinción imprecisa entre agregación, composición y asociación, aunque es bueno ser consistente.
La notación para un ensamblado, en particular para un agregado, es un diamante adherido al lado del objeto correspondiente al ensamblado total, conectado por una línea a sus componentes, como se muestra en la siguiente figura





E
jemplo: El Automóvil con sus componentes, Motor y Carrocería, se muestran en el siguiente diagrama:

Ejemplo: Una computadora personal (PC) está compuesta por uno o varios monitores, un sistema, un teclado y opcionalmente un ratón. El sistema tiene un chasis, un procesador central (CPU), varias tarjetas de memoria (RAM), y opcionalmente un ventilador. El diagrama se muestra en la siguiente figura




Otro Ejemplo:




En donde se destaca que:



  • Un Almacen posee Clientes y Cuentas (los rombos van en el objeto que posee las referencias).

  • Cuando se destruye el Objeto Almacén también son destruidos los objetos Cuenta asociados, en cambio no son afectados los objetos Cliente asociados.

  • La composición se destaca por un rombo relleno.

  • La agregación se destaca por un rombo transparente.

La flecha en este tipo de relación indica la navegabilidad del objeto referenciado. Cuando no existe este tipo de particularidad la flecha se elimina.


Dependencia o Instanciación (uso):

Representa un tipo de relación muy particular, en la que una clase es instanciada (su instanciación es dependiente de otro objeto/clase).

Es una relación de uso, es decir una clase usa a otra, que la necesita para su cometido. Se representa con una flecha discontinua va desde la clase utilizadora a la clase utilizada. Con la dependencia mostramos que un cambio en la clase utilizada puede afectar al funcionamiento de la clase utilizadora, pero no al contrario.



El uso más particular de este tipo de relación es para denotar la dependencia que tiene una clase de otra, como por ejemplo una aplicación gráfica que instancia una ventana (la creación del Objeto Ventana esta condicionado a la instanciación proveniente desde el objeto Aplicación):


Cabe destacar que el objeto creado (en este caso la Ventana gráfica) no se almacena dentro del objeto que lo crea (en este caso la Aplicación).


Ejemplo utilizando relaciones, cardinalidad, etc.




1   2   3   4   5   6   7


La base de datos está protegida por derechos de autor ©absta.info 2016
enviar mensaje

    Página principal