Documente Academic
Documente Profesional
Documente Cultură
C
Curso 2017 18
2017-18
1
Indice
2
1. Definición de Modelo de Datos
• COMPONENTES DE UN MODELO:
– ESTRUCTURAS DE DATOS
• Los datos forman estructuras.
– OPERACIONES
• Para manejar las estructuras.
– REGLAS DE INTEGRIDAD
• Especifican los estados consistentes de la BD.
3
Familias de Modelos. Características Generales
• Los modelos se clasifican en familias:
– PRE-RELACIONAL /LEGADOS (Modelo Jerárquico, Modelo en Red).
– RELACIONAL
– POST-RELACIONAL (Modelo Semántico, Modelo Orientado a Objetos,
NoSQL).
5
Modelo E/R
ENTIDAD/Tipo Entidad
ATRIBUTO
RELACION/
C ON/ Tipo
po Relación
e ac ó
6
Modelo E/R
• Ventajas
– Simplicidad
– Representación Visual
– Herramienta de comunicación efectiva
– Integrado al modelo de bases de datos relacional
• Desventajas
– Representación de restricciones limitada
– Representación de relaciones limitada
– Representación limitada de la semántica del S.I.
– Ningún lenguaje de manipulación de datos
7
Mini-
Fases del diseño de BD
mundo
• Cada
C d ddepartamento
t t controla
t l cierto
i t número
ú d
de proyectos.t C d uno con
Cada
nombre y número únicos y se realiza en una sola localidad.
supervisor (0 N)
(0,N)
(1,1) (0,N)
SUBORDINADO SUBORD_DE EMPLEADO
SUPERVISIÓN
N b
Nombre Nú
Número L
Localidad
lid d Localidades NºEmpleados
N Empleados
Número Nombre
Qué es un esquema conceptual
Esquema
q conceptual
p
(ER)
EMPLEADO
NSS
SS NOMBRE
O INIC
C APELLIDO
O FECHA
C _NCTO
C O DIRECCIÓN
CC Ó SSEXO
OSSALARIO
O SU
SUPERV DPTO
O
CF:EM- CF:DEPAR-
PLEADO TAMENTO
DEPARTAMENTO
NÚMERO NOMBRE DIRECTOR F_INIC_DIRECTOR
F INIC DIRECTOR LOCALIDADES DEPTO
LOCALIDADES_DEPTO
CF:EMPLEADO NÚMERO LOCALIDAD
PROYECTO
NÚMERO NOMBRE LOCALIDAD DEPTO CF:DEPAR-
TAMENTO
CF:DEPAR-
TAMENTO
SUBORDINADO TRABAJA_EN
EMPLEADO FECHA_NCTO
FECHA NCTO NOMBRE SEXO PARENTESCO EMPLEADO NP HORAS
CF:EM- CF:EM- CF: PRO-
PLEADO PLEADO YECTO
Normalizada
en FNBC
Ejemplo: esquema interno
para la BD “Empresa”
p p Esquema
q interno
(simplificado a una propuesta de índices) (índices)
ATRIBUTOS
TIPOS DE ENTIDAD SIMPLE
FUERTE
CLAVE
... COMPUESTO
TIPOS DE RELACIÓN
DERIVADO
NORMAL
MULTIVALOR
U O
IDENTIFICADOR
... COMPLEJO
Conceptos del modelo ER (2/2)
GRADO DE TIPO
RESTRICCIONES
DE RELACIÓN
CÓ
(1, ) R ternario
PARTICIPACIÓN
TOTAL DE B EN R R B
A R B
( ,N)
CARDINALIDAD
N (VARIOS) DE B EN R R B C
RESTRICCIONES OTROS
NOTACIÓN
Ó ALTERNATIVA
•Dominio (tipo de datos)
(0,N) (1,1)
E1 R E2 •Valor
Valor nulo
•Conjunto de entidades
1 N
E1 R E2 y de relaciones
•Atributos de tipo de relación:
Tipo de entidad y su conjunto de entidades
LIBRO
Código Título NºCopias
Código Título NºCopias
Tolk-1 El Sr. de los Anillos 3
LIBRO
Orw-1 1984 2
Sh 1
Shar-1 Wilt 1
Tipo de entidad
o intensión
Conjunto de entidades del tipo de Al ser conjunto no puede
entidad LIBROO o extensión
ó h b entidades
haber tid d
repetidas
• Tipo
p de entidad es un conjuntoj de entidades q
que pposee el mismo conjunto
j
de atributos.
• Cada entidad del tipo de entidades contiene un valor para cada uno de los
atributos definidos en el tipo
p de entidades
• Para cada tipo de entidad (como LIBRO):
– Se describe con su nombre y lista de atributos
– Sus
S entidades
tid d son ell conjunto
j t ded entidades
tid d o extensión.
t ió
– El t. de entidad se llama intensión de su conjunto de entidades
Entidades y valores de atributos
Código=“Tolk-1”
Entidad 1 de LIBRO Título= “El sr. De los anillos”
Nº Copias=“3”
• Entidad: “cosa”
cosa del mundo real con existencia independiente
independiente. Ejemplos:
– Algo físico: una persona (Alberto), una casa, un automóvil, un empleado, ...
– Algo
g conceptual:
p una compañía
p ((ACME),), un p
puesto de trabajo
j ((secretario
de centro), un curso universitario (2º A), ...
• Atributo: Es una p
propiedad
p de las entidades del tipo
p de entidad.
• Valor de atributo: es el valor asignado en una entidad para un atributo.
j
• Toda entidad se describe mediante su conjunto de atributos. No p
puede haber
tipos de entidad sin ningún atributo definido.
Tipos de atributos
• Monovalor: Salario
• Almacenado: FechaN
Calculado a p
partir de la fecha de
• Derivado: Ed d
Edad nacimiento FechaN
Atributos clave
PROYECTO PROYECTO2
Nombre
Clave Localización
Nombre Número Localización Número
a
EMPLEADO
Director FechaInic
“departamentos. Cada uno con nombre y
número único.
único Tiene un director,
director su fecha
DEPARTAMENTO de inicio y el número de empleados que
NºEmpleado trabaja en él. Puede estar distribuido en
Localidades varias localidades.
localidades.”
s
Número Nombre
DptoControlador
“Cada departamento controla cierto número de
proyectos. Cada uno con nombre y número PROYECTO
únicos y se realiza en una sola localidad.”
Nombre Número Localidad
Identificando tipos de entidad y sus atributos
para la BD “Empresa” (2/2)
Proyecto Horas a
a DEPARTAMENTO Empleado FechaNcto Nombre
PROYECTO
Clave
“De cada
“D d subordinado
b di d all número
ú
de seguridad social de un empleado
SUBORDINADO
interesa su nombre, sexo, fecha de
nacimiento y parentesco (hijo,
Sexo Parentesco
esposa, ...).”
Relaciones implícitas en el ejemplo
• Relación implícita: atributo que hace referencia a otro tipo de entidad.
• En el ejemplo anterior hemos marcado las relaciones implícitas en rojo y
con flechas de línea discontinua
discontinua. Como en el caso de:
DptoControlador Relación implícita
Con el tipo
p de entidad
DEPARTAMENTO PROYECTO DEPARTAMENTO
Tipo de
relación
Código Título NºCopias (i t
(intensión)
ió ) Código Nombre
(0,N) (0,N)
LIBRO PRESTADO LECTOR
LIBRO LECTOR
Código Título NºCopias Código Nombre
Tolk-1 El Sr. de los Anillos 3 PRESTADO 11 Joseba
Orw-1 1984 2 LIBRO LECTOR 22 Miren
Shar-1 Wilt 1 Tolk-1 11
Tolk-1 22 Conjunto de
relaciones
Al ser conjunto no puede haber Orw-1 11 (extensión).
relaciones repetidas. del tipo de
Shar-1 22 relación
Por eso ponemos como clave la
concatenación de LIBRO+LECTOR PRESTADO
Tipo de relación y grado
C
Restricciones estructurales en tipos de relación binarios:
cardinalidad
( ,1) ( ,N)
1:N
EMPLEADO TRABAJA_PARA DEPARTAMENTO
• ¿Clave de
Razón de cardinalidad: nº de relaciones en las que puede participar TRABAJA
una entidad. _PARA?
• Cada entidad de DEPARTAMENTO puede participar en varias (N)
relaciones de TRABAJA_PARA.
• Cada entidad de EMPLEADO p puede p participar
p como mucho en una ((1))
relación de TRABAJA_PARA.
( ,,N)) ( ,,N))
M:N LIBRO PRESTADO
S O LECTOR
C O
Restricciones estructurales en tipos de relación binarios:
participación
(0, ) (1, )
EMPLEADO DIRIGE DEPARTAMENTO
• Restricción de participación:
– Total
T t l (dependencia
(d d i d
de existencia):
i t i ) ttoda
d entidad
tid d d
de DEPARTAMENTO
debe participar al menos en una (1) relación de DIRIGE (porque todo
departamento debe tener un director).
– Parcial: algunas entidades de EMPLEADO no participan (0) en ninguna
relación de DIRIGE y otras si (no todos los empleados son directores de
departamento).
(1,1) (1,N)
EMPLEADO TRABAJA_PARA DEPARTAMENTO
trabajador contratante
Curso
• La clave de APUNTES es compuesta
compuesta. Una de sus componentes es una
relación implícita al tipo de entidad ASIGNATURA.
• Al transformar la relación implícita al tipo de relación PERTENECEN, el tipo
de entidad APUNTES se queda sin clave clave.
• Para seguir representando la clave se usan los tipos de entidad débil:
– El trozo de clave que queda en APUNTES (Tema) se marca como clave
parcial (subrayado
( discontinuo).
)
– El tipo de relación que completa la clave se marca con línea doble y se
llama tipo de relación identificador.
– El tipo de entidad relacionado mediante el tipo de relación identificador
se llama tipo de entidad propietario ó identificador.
Tipo de entidad débil (2/2)
FechaNct Nombre
Salario Sexo Dirección
o Nss Nom
Apellido1
(1,1) (1,1)
RESTO_EMPLEADO EMPLEADO Apellido2
...
Diseño alternativo al tipo de entidad débil: atributo complejo
Sin otros tipos de relación
Tema
Tema Identificador
Tema
NºHojas APUNTES APUNTES
NºHojas
(1,1) (1,1)
Autor Autor
PERTENECEN
PERTENECEN
Código Código
(1,N) (1,N)
Tit l ió
Titulación ASIGNATURA Titulación ASIGNATURA
Curso Curso
PC PC
(1 ,1) N
SITUADO SITUADO
(0,N) 1
SALA SALA
(1) B A B
A AB B
(2) B A A B
A
Z A Z C
(3) B Z Z
Z B
C Después podrían
surgir nuevos
atributos para Z
((4)) A Z Z A Z
Número
• Ejercicio: para los suministradores s1 y s2, los componentes c1 y c2 y los
proyectos p1 y p2, obtener los tríos de PROVEE y los pares de las relaciones
c
binarias en los siguientes dos estados de la BD, donde s p
representa que el suministrador s suministra el componente c al proyecto p.
c1
1 c2
2
Estado 1 s1 p1 Estado 2 s1 p1 Si un tipo de relación
de la BD: c2 de la BD: c1 ternaria representa lo
mismo que varias binarias
c2 c1 nos quedaremos
d con lla
s2 p2 s2 p2 segunda opción
c1 c2
Transformación de tipo de relación ternario
en un tipo de entidad débil
Dorsal Nombre
Dorsal Nombre
CICLISTA
S
CICLISTA
Número (1,N)
(0,N) 1 Número
(0,N) (1,1) (1,1) (1,N)
LLEVA ETAPA VISTE ETAPA
M
(0,N) N (1,1)
Km (1,N) Km
MAILLOT
MAILLOT
Premio Color
Premio Color
(0,N) (1,N)
DA CLASE
DA_CLASE
• Es preciso definir restricciones de manera que haya coherencia entre los tríos
de IMPARTE y los pares de CONOCE, DA CLASE y OFRECIDA.
• Por ejemplo si (Alfredo
(Alfredo,1º-2013)
1º 2013) es una relación de DA CLASE
CLASE, deberá haber
al menos un trío en IMPARTE en los que el profesor sea “Alfredo” y el
cuatrimestre “1º-2013”: (Alfredo,1º-2013, ...)
Ejemplo de diseño conceptual: Camiones
requisitos de la BD
• Una compañía de transportes recoge pedidos de los almacenes de una
cadena y los entrega a las tiendas de la misma cadena.
• Actualmente hay 6 almacenes y 45 tiendas
tiendas. Cada tienda tiene su propio
nombre, y conocemos también su dirección y teléfono. Cada almacén tiene
un número diferente además de la dirección y teléfono.
• Un camión puede transportar varios pedidos en el mismo viaje y entregar
cada pedido a la tienda que lo solicitó. Cada viaje se identifica por un número.
Cada ped
pedido
do se identifica
de t ca po
por u
un número
ú e o e incluye
c uye datos sob
sobree peso,
volumen y tienda de destino.
• Cada camión tiene el número de matrícula y su propio límite máximo de
volumen y peso transportado
transportado. La flota de la compañía de transportes consta
de 150 vehículos y cada uno realiza entre 3 y 4 viajes semanales.
• Esta BD la usarán conjuntamente las dos empresas para
– Controlar el uso de los camiones (fechas).
– Controlar las entregas (pedidos entregados)
– Programar los viajes (conocer los pedidos hechos
hechos, de qué almacén a qué
tiendas y los viajes asignados a camiones)
Ejemplo de diseño conceptual:
identificación de tipos de entidad
Nombre
Nú
Número P
Peso V l
Volumen Vi j
Viaje TIENDA Dirección
PEDIDO Tienda Matrícula Tfno
Número Almacén PesoMax CAMIÓN
Número
Dirección ALMACÉN VolumenMax
VIAJE F h
Fecha
Tfno
Camión
Almacén
Suposiciones:
• Un pedido se toma completo de un almacén y se entrega también completo a
una sola tienda.
• En un viaje interviene solo un camión, toma varios pedidos de un almacén y
los entrega a una o varias tiendas
tiendas.
Ejemplo de diseño conceptual:
identificar y transformar relaciones implícitas
P
PesoMax
M (1 1)
(1,1)
(1,1) Número
VIAJE
VolumenMax Fecha
((1,N)
, )
RECOGE TRANSPORTA
(0,1) Número
(0 N)
(0,N)
(1,1)
SOLICITADO PEDIDO Peso
Suposiciones:
• Los pedidos se introducen antes de organizar el viaje.
• En
E bbase a llos d
datos
t d de pedidos
did y ocupación
ió dde camiones
i ell programa d
de aplicación
li ió
puede organizar los viajes.
Ejemplo de diseño conceptual:
otras consideraciones
• Atributos de tipo de relación: al identificar los tipos de relación han podido
quedar descolgados atributos.
• Tipos de entidad débiles: los que han perdido su clave. Indicar su tipo de
relación identificador y su clave parcial, si la tiene.
• Si algún tipo de entidad débil ha quedado sin apenas atributos, quizá se
pueda sustituir por un tipo de relación.
• Considerar las alternativas de diseño comentadas:
– Tipos
p de relación de g
grado mayor
y q que tres p
por tipos
p de entidad débiles.
– Tipos de entidad débiles por atributos multivalor y compuestos.
– Atributo que aparece en varios tipos de entidad situado en tipo de
entidad independiente (o lo contrario)
Transformación E/R a relacional (1/4)
• Paso 1: Tipos de entidad normales (fuertes)
E5 E E2
E1 E
E4 E1 E2 E3 E5 E6 E3
E6 E2 E3 E4
E3 E4 E
E
Los derivados
L d i d son
E2 E1 fórmulas que parecen
atributos de tablas
D D
D2 D1 E1 E2 E1 E2
E1 D1 D2 D2 D1 E1 F1 D1 D2
D E CE: E E CE:E CE:F
E D
F E F
E1 E2 E1 E2 F1 F2
F1 F2
Notación E
equivalente D
(faltan los F
atributos)
Transformación E/R a relacional (2/4)
• Pasos 3 y 4: herencias simple y múltiple (EER)
Los estudiaremos al final pero se realizan en este punto.
• P
Paso 5:
5 Ti
Tipos de
d vínculo
í l 1:1
11
E2 E1 R1 F1 F2 E2 E1 F1 F2 E_F
( ,1)
E
( ,1) F (1,1) (1,1)
E E1 E2 F1 R1 E F E1 E2 F1 F2 R1
(1,1) (0,1) CE F
CE:F R1
E F F Opción posible cuando se da
F1 F2 el caso (véase
Mejor CE en tabla E “desnormalizar”)
E2 E1 F1 F2 R
M N E1 F1 G1 R1
E R F
P CE:E CE:F CE:G
R1
G E F G
G1 G2 E1 E2 F1 F2 G1 G2
E2 E1 F1 F2 R
M N E1 F1 G1 R1
E R F
1 CE:E CE:FCE:G
R1
G E F G
G1 G2 E1 E2 F1 F2 G1 G2
Herramienta de Diseño
Herramienta ERDPlus
(https://erdplus.com/#/)
54
Modelo E/R extendido (EER / ER+)
56
Introducción
57
Superclases y subclases
EMPLEADO
superclase
subclases
SECRETARIO TÉCNICO ASALARIADO
60
Especialización
Empleados Nombre EMPLEADO DNI
Técnicos
Secretarios Sueldo
E
Especializar
i li
SECRETARIO TÉCNICO ASALARIADO
Asalariados (0,1)
Pulsaciones Nivel AFILIADO
(1,N)
d o
• Restricción de disyunción: d
– Cada entidad de la superclase FIGURA pueden ser miembro
como mucho de una de sus subclases.
– Si las subclases se definen por atributo, este será monovalor. A
• Restricción de solapamiento (overlapped): o A
o
– Es
E ell caso contrario
i a lla di
disyunción.
ió =
– Opción por defecto (si no se indica nada es solapada)
B C B C
– Una misma entidad de ATLETA puede ser miembro de varias de
sus subclases (por ejemplo, ser al mismo tiempo atleta de cien y
de doscientos metros).
• Caso especial: cuando el predicado da lugar a una sola subclase
subclase.
Subclases ‘definidas por condición’, ‘por atributo’
y ‘ por el usuario’
usuario
TipoTrabajo Nombre
EMPLEADO
Especialización
E i li ió ddefinida
fi id TipoTrabajo DNI
sobre el atributo de
EMPLEADO TipoTrabajo
‘Secretario’ ‘Técnico’ g
‘Ingeniero’
SECRETARIO TÉCNICO INGENIERO
PLANTILLA_UNIVERSIDAD ATLETA
total d parcial o
• Especialización total:
– Toda entidad de la superclase debe ser miembro de alguna subclase de la
especialización.
– Cuando
C d lla superclase
l se extrae por generalización
li ió lla especialización
i li ió suele
l
ser total.
• Especialización parcial:
– Es el caso contrario a la especialización total.
– Puede
P d h haber
b entidades
tid d d de lla superclase
l que no pertenezcan
t a ninguna
i d
de
las subclases de la especialización
Reglas de inserción y eliminación de entidades
• Eliminación de una entidad c1 de una Eliminación de la entidad
C c1 de C
superclase C:
– Se elimina automáticamente de Si c1 también es miembro
todas las subclases a la que de P y Q también debe
pertenezca. desaparecer de esas
P Q R subclases
N b
Nombre EMPLEADO F h N t
FechaNcto
d d
SECRETARIA TÉCNICO
É INGENIERO GERENTE ASALARIADO POR_HORAS
GERENTE INGENIERÍA
GERENTE_INGENIERÍA Subclase compartida
(herencia múltiple)
• Retícula: hay alguna subclase que participa en más de una relación. En el ejemplo
GERENTE_INGENIERÍA.
• Estas subclases se llaman subclases compartidas y heredan los atributos y
relaciones de todas sus superclases (de INGENIERO, GERENTE y ASALARIADO).
Este mecanismo se llama herencia múltiple.
• Los atributos de EMPLEADO se heredan por varios caminos (INGENIERO, GERENTE y
ASALARIADO). Las reglas de herencia establecen que debería incluirse una sola vez
cada
d elemento
l t proveniente
i t dde EMPLEADO. NoN h hay conflicto.
fli t
• Algunos mecanismos de herencia no permiten la herencia múltiple.
Conflictos con la herencia múltiple
NºCamas Matrícula
U
• Las superclases de una
Modelo Modelo categoría pueden tener
COCHE Año Año CAMIÓN claves diferentes como en el
Marca Tonelaje Marca
Gama caso de PROPIETARIO, o no
Nº SerMotor Nº SerMotor
como en VEHÍCULO_MATRI-
CULADO
Categoría total vs. parcial
• Categoría total:
– La categoría contiene la unión de todas las entidades de sus superclases.
– En el ejemplo de la izda
izda, todas las entidades de EDIFICIO y de PARCELA
son miembros de la categoría PROPIEDAD.
• Categoría parcial:
– La categoría contiene un subconjunto de la unión de las entidades de sus
superclases.
– En el ejemplo de la dcha puede haber personas o empresas sin cuenta
bancaria. Modelando la categoría como parcial permitimos que entidades de
PERSONA o de EMPRESA puedan no estar en la categoría TITULAR_CTA.
– Si es necesario se pueden añadir predicados o atributos (P, E en el ejemplo).
Diferencia entre subclase compartida y categoría
• La subclase compartida GERENTE_INGENIERÍA:
– Cualquiera de sus entidades debe existir en
las tres superclases.
superclases
INGENIERO GERENTE ASALARIADO
– Por tanto es un subconjunto de la
intersección de las entidades de sus
superclases
superclases.
GERENTE_INGENIERÍA – Cada entidad hereda los atributos de todas
sus superclases.
• La categoría PROPIETARIO:
– Cualquier entidad de PROPIETARIO debe
PERSONA BANCO EMPRESA existir sólo en una de sus superclases.
U – Es un subconjunto de la unión de las
p
entidades de sus superclases.
PROPIETARIO – Cada entidad hereda los atributos de una
de sus superclases.
Equivalencia entre especialización y categoría
C C
Ejemplo de diseño: UNIVERSIDAD
La universidad mantiene la sig. información: (grupo-sección) en las que está o estuvo
• Por cada alumno su carrera o carreras y matriculado.
las notas que ha recibido en cada • Interesa distinguir
g q qué alumnos han
asignatura. acabado la carrera (licenciados) y
cuáles son becarios (pueden serlo
• Proyectos de investigación realizados
alumnos de últimos cursos o
por el p
p profesorado y becarios. Para cada
licenciados) Cada becario tiene un
licenciados).
uno se guarda su nombre, código, fecha
profesor que es su tutor de tesis.
de inicio, subvención obtenida, entidad
que subvenciona, investigador principal • Para cada departamento se guarda su
(profesor) y profesores y becarios nombre teléfono y despacho de la
nombre,
participantes. secretaría y quién es su director (un
profesor).
• Para cada persona se guarda su
nombre nº
nombre, n de la seguridad social
social, • g
Por cada asignatura se mantiene su
dirección, sexo y fecha de nacimiento. nombre, código, descripción y
departamento. Cada nuevo cuatrimestre
• Para los profesores además se tiene su se pueden organizar varios grupos de la
rango (CU,
(CU TUTU, etc
etc.),
) nº
n de despacho
despacho, misma asignatura (secciones)
(secciones). Para
extensión, departamento y salario. cada uno se guarda la asignatura, el
• Para los alumnos se tiene el nº de años número de grupo, el profesor
que llevan haciendo cada carrera y las responsable
p ((único)) de la asignatura
g en
asignatura-grupo-cuatrimestre-año ese grupo junto al cuatrimestre y año en
75
el que se impartió.
Ejemplo de diseño: UNIVERSIDAD
76
4. Transformación Modelo E/R extendido al Modelo Relacional
• Especialización/generalización (4 Métodos)
• Subclase Compartida
• Categoría
77
Esplización/Gralización
Método A
D I
E N
P C
Entidad A K E L
Entidad A N U
D S
K+Entidad X E I
d N O
K+Entidad Y C N
I
A
Entidad X Entidad Y S
• Operación de EQUIJOIN sobre la clave primaria, entre cualquier subclase y la superclase, produce todos los atributos específicos
y heredados de las entidades subclase
78
Esplización/Gralización
Método B
Entidad A+Entidad Y
d
•Si solapada, redundancia (de los atributos heredados)
•Si parcial, elementos no representados
•La
La superclase se obtiene con OUTER UNION
Entidad X Entidad Y
• Para esplización/gralización disjuntas y totales
• No se representa la superclase (No se necesita EQUIJOIN).
EQUIJOIN) Siempre que busquemos una entidad arbitraria de la superclase
superclase,
deberemos buscar en todas las tablas de las subclases.
• Otros autores mejoran la propuesta con una vista
Vista p
para la Entidad A
79
Esplización/Gralización
Método C
K
Entidad A Entidad A+T+Entidad X + Entidad Y
Entidad X Entidad Y
• Para esplización/gralización disjuntas
• Aparece un nuevo atributo T que indica el tipo de la subclase que se utiliza
80
Esplización/Gralización
Método D
K
Entidad A
Entidad A+bbbbbbbbbb+Entidad X+Entidad Y
o •No se recomienda
i d sii X o Y tienen
i muchos
h atributos
ib
•Si tienen pocos-> mejor (evitan JOIN o UNION)
Entidad X Entidad Y
• Para esplización/gralización solapadas
• bb
bb=secuenciai d
de bit
bits (tantos
(t t como subclases)
b l ) que indica
i di sii los
l atributos
t ib t de
d X e Y son válidos
álid para lla iinstancia
t i
(m Campos de Tipo Booleano. Uno por cada subclase
1 Campo por cada M bits)
81
K K Categorias
Entidad X Entidad Y Entidad X Entidad Y
CLAVES
CLAVES U DIFERENTES U
IGUALES
Entidad A Entidad A
K+Entidad A Ks+Entidad A
Entidad
id d X E tid d X+Ks
Entidad X+K
82
Subclase compartida
K+Entidad A Ks+Entidad A
• Si las superclases tienen la misma clave, entonces como especialización. Recomendada opción
A (1)
A.
83
3 MODELO UML
3.
84
Bloques de construcción de UML
85
Elementos Estructurales (UML)
86
UML Clase
Clase (UML). Descripción de un conjunto de objetos que comparten los
mismos atributos, operaciones, relaciones y semántica.
Nombre
Atributos
O
Operaciones
i
87
UML Objeto y Atributo
• Objeto
j (UML).
( ) Manifestación concreta de una clase.
Juan:Cliente
88
UML Relaciones
CLASE A CLASE B
susA suB
1..* 0..1
cardinalidades
1 con uno
0..1 con uno o ninguno
* con cero, uno o varios
0 *
0.. con cero,
cero uno o varios
1..* con uno o varios
n con n exactamente
n..m mínimo con n y máximo con m
UML Relaciones Asociación.
• Relación Asociación (UML). Relación estructural que describe un conjunto
de enlaces los cuales son conexiones entre objetos.
– Grado (binarias,...)
– Multiplicidad (Cardinalidad
(Cardinalidad...)) Cuántos objetos pueden conectarse a través
de una instancia de una asociación (cuántos: multiplicidad del role)
propietario 0..*
CLIENTE INMUEBLE
1 posee
p
Un inmueble tiene Un cliente puede poseer
1 solo propietario varios inmuebles (o ninguno)
0..1 0..*
ESTUDIANTE
PROFESOR * ASIGNATURA
0..1 *
• Agregación simple.
simple Tipo particular de asociación
asociación. Modela una relación todo/parte en
la cual una clase representa una cosa grande (el “todo”) que consta de elementos
más pequeños (las “partes”).
CLASE A CLASE B
1..*
0..1
• Composición. Variación de la agregación simple. Las partes una vez creadas viven y
mueren con la parte compuesta.
CLASE A CLASE B
1 1..*
94
Clases Asociación
CLASE A CLASE B
1..* 0..1
CLASE C
atributo Clase Asociación
95
Clase asociación n-aria en
UML
CLASE A
CLASE C 0 *
0..* CLASE B
0..1 0..*
CLASE D
UML Generalización/Especialización
UML
método1 (parámetros),…
NOMBRE DE LA SUBCLASE
atribSubClase1, atribSubClase2 ...
metSubc1 (parámetros),…
97
UML Generalización/Especialización
UML
• Hay cuatro restricciones estándar que se aplican a las relaciones de
g
generalización.
– Complete
– Incomplete
– Disjoint
– O l
Overlapping
i
98
UML Generalización/Especialización
99
UML v.s Entidad/Relación Extendido Especialización
• E/R+
• UML
100