Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Terminología Básica
(Parte 2)
Relaciones entre clases
- Dependencia
- Asociaciones
Terminología Básica
Contenido
•Relaciones entre clases
•Dependencia (Persona - Autobus)
•Asociaciones (Persona - Auto)
•Agregación (Auto - Llanta)
•Composición (Auto - Chasis)
Terminología Básica
2. Relaciones entre clases
•Una relación es una conexión semántica entre clases
(relación intencional).
•Permite que una clase conozca los atributos, operaciones y
relaciones de otras clases.
•Las clases no actúan aisladas entre sí, al contrario, están
relacionadas unas con otras.
Terminología Básica
•Una clase puede relacionarse por:
•Dependencia: usar métodos y/o atributos de otra clase (por
ejemplo, Calculadora usa métodos y atributos de Math)
•Asociación: contener objetos de otra clase (por ejemplo,
Calculadora recibe Numero)
•Herencia: ser un tipo de otra clase (por ejemplo, Entero es un
Numero)
5
Terminología Básica: Dependencia
Dependencia:
•Es la relación más débil que puede existir entre dos clases.
•Una dependencia significa que una clase utiliza o tiene
conocimiento de otra clase: “lo que una clase necesita conocer de
otra clase para utilizar objetos de esa clase”.
•Normalmente es una relación transitoria y significa que una clase
dependiente interactúa de manera breve con la clase destino (La
relación es de un tiempo definido)
•Una dependencia es una
relación de uso que declara
que un elemento “usa” la
información y los servicios
de otro elemento, pero no
necesariamente a la inversa.
Terminología Básica : Dependencia
•Por ejemplo, si se tiene una clase Ventana que envía un aviso a una
clase llamada EventoCerrarVentana cuando está próxima a cerrarse,
entonces se dice que Ventana utiliza EventoCerrarVentana.
•Ejemplos:
7
Terminología Básica : Dependencia
Asociación:
•Una asociación es más fuerte que la dependencia y normalmente
indica que una clase recuerda o retiene una relación con otra clase
durante un período determinado de tiempo.
•Es decir, las clases se conectan para representar un concepto de la
realidad.
En este ejemplo,
Jugador tiene el
atributo de tipo
Equipo, y
Estudiante tiene
el atributo de
tipo Universidad
10
Terminología Básica: Asociación
•Cuando una clase se asocia con otra clase, cada una juega un rol
dentro de la asociación. El rol se representa cerca de la línea próxima
a la clase.
11
Terminología Básica: Asociación
12
Terminología Básica: Asociación
•Clases asociadas
14
Terminología Básica: Asociación
•Se dibuja con una línea continua entre las dos clases.
16
Terminología Básica: Asociación
17
Terminología Básica: Asociación
18
Terminología Básica: Multiplicidad
Multiplicidad:
•Entre asociaciones existe la propiedad de la multiplicidad: cierto
número de objetos de una clase se relaciona con un único objeto de
una clase asociada (un equipo de futbol tiene once jugadores)
19
Terminología Básica: Asociación
20
Terminología Básica: Multiplicidad
22
Terminología Básica: Restricciones
Restricciones en asociaciones:
•En algunas ocasiones, una asociación entre dos clases ha de seguir
una regla.
23
Terminología Básica : Restricciones
24
Terminología Básica: Asociaciones
Restricciones en Asociaciones:
• Una asociación entre clases a veces tiene que seguir una regla
determinada, y esta se indica poniendo una restricción cerca de la
línea de la asociación.
• La restricción típica es ordered (ordenado) se produce cuando una
clase atiende a otra en función de un determinado orden o
secuencia.
• Otras restricciones típicas pueden ser {or} /{xor}
• Ejemplo 1: Un vendedor de entradas de cine (taquillero) atiende a
los espectadores a medida que se sitúan delante de la ventanilla de
entradas.
25
Terminología Básica: Asociaciones
26
Terminología Básica: Asociaciones Reflexivas
Asociaciones reflexivas:
• A veces, una clase tiene una asociación consigo misma.
• En este caso la asociación se denomina asociación reflexiva.
• Esta situación se puede presentar cuando una clase tiene objetos
de la misma clase pero que juegan diferentes roles.
• Por ejemplo, un ocupante de un avión de pasajeros puede ser: un
pasajero, un miembro de la tripulación o un piloto.
28
Terminología Básica: Asociaciones
•Los nombres de las asociaciones deben ser una frase verbal.
•Clase-FraseVerbal-Clase
Persona-Trabaja-para-Compañía
Tienda-Almacena-Articulo
Venta-Pagada-mediante-Pago
•Formatos:
Pagada-mediante
Pagada_mediante
PagadaMediante
29
Terminología Básica: Asociaciones
30
Terminología Básica: Asociaciones
31
Terminología Básica: Asociaciones
32
Terminología Básica: Clases de Asociación
Clases de asociación:
•Una clase conectada a una asociación se denomina clase asociación.
•Una asociación puede tener atributos y operaciones tal como una
clase, éste es el caso de la clase asociación.
•Ejemplo:
33
Terminología Básica: Clases de Asociación
34
Terminología Básica: Clases de Asociación
Criterios de Diseño:
• Cuando se traducen a código las relaciones con clases asociación se
obtienen, normalmente, tres clases: una por cada extremo de la
asociación y una por la propia clase asociación.
35
Terminología Básica: Clases de Asociación
3. Un aeropuerto es el punto de llegada o el punto de salida de cada
vuelo. Para cada llegada o salida se registra la fecha y la hora de la
llegada o la salida, así como la puerta de entrada o salida de los
pasajeros. De cada vuelo se conoce su número, que puede tener
al menos una llegada o una salida de ese aeropuerto. Cada línea
aérea tiene al menos un vuelo. El aeropuerto trabaja con al menos
una línea aérea.
36
Terminología Básica: Agregación
Agregación:
•Una agregación es un tipo especial de asociación que expresa un
acoplamiento más fuerte entre clases.
•La agregación permite la representación de relaciones tales como
“maestro y esclavo”, “todo y parte de” o “compuesto y componentes”.
37
Terminología Básica: Agregación
• La agregación se lee normalmente como relación “… posee un …” o
relación “todo-parte”, en la cual una clase (“El todo”) representa un
gran elemento que consta de elementos más pequeños (“las
partes”).
38
Terminología Básica: Agregación
• En la agregación, una clase realmente posee, pero puede
compartir objetos de otra clase.
• Ejemplo 3: Agregación de un automóvil que consta de cuatro
ruedas, un motor y una caja de cambios.
39
Terminología Básica: Agregación
• Ejemplo 4: Un árbol binario que consta de cero, uno o dos nuevos
árboles.
40
Terminología Básica: Agregación
41
Terminología Básica: Composición
Composición:
• Una composición es un tipo especial de agregación que impone
algunas restricciones:
– si el objeto completo se copia o se borra (elimina), sus partes
también se copia o se suprimen con él.
• La composición es una relación fuerte entre clases y se utiliza para
representar una relación todo-parte.
• Cada componente dentro de una composición puede pertenecer
tan sólo a un todo.
• Ejemplo 1: Un tablero de ajedrez se compone de 64 casillas.
42
Terminología Básica: Composición
• Una relación de composición se lee normalmente como “… es
parte de …”, que significa que se necesita leer la composición de la
parte al todo.
• Ejemplo 2: si una ventana de una página web tiene una barra de
títulos, se puede representar que la clase BarraTitulo es parte de
una clase denominada Ventana. Pero, las barras horizontal y
vertical podrían o no ser parte de la ventana.
43
Terminología Básica: Composición
44
Terminología Básica: Composición
45
Terminología Básica: Asociaciones, Agregación y Composición
•Ejercicios: Elabore los diagramas de clase de los siguientes
enunciados. Identifique asociaciones, agregaciones y composiciones
46
Terminología Básica: Asociaciones, Agregación y Composición
47