DMV de Universidad
Se crean dos relaciones:
R1(Universidad, Director)
R2(Universidad, Asistente)
La normalización elimina la redundancia y las
anomalías de actualización, inserción y eliminación.
3. Resumen de 1FN 2FN y 3FN
1FN,
Primera Forma Normal (1FN)
Todos los atributos de cada tupla contienen un solo valor
p
tomado de sus dominios respectivos (valores atómicos).
Segunda Forma Normal (2FN)
Es 1FN y cada atributo no clave de la relación es total y
funcionalmente dependiente (DFC) de su clave primaria.
Tercera Forma N
T F Normal (3FN)
l
Es 2FN y ningún atributo no-clave en la relación esta en
DF con algún otro atributo no-clave.
no clave.
4. Forma Normal Boyce/Codd
Clave Candidata:
Es un atributo o conjunto de atributos que
pueden representar de forma única a cada
registro de una entidad o relación.
Cuando en una relación hay más de una clave
candidata, una se designa como clave primaria.
5. Forma Normal Boyce/Codd
N Estudiante N Curso N Asesor
Gómez
Gó Mate
M t I Arias
Ai
Gómez Física Flores
ASESORIA
Pérez Mate I Arias
Pérez Álgebra Sánchez
Ramos Física Flores
Ramos Mate I García
Restricciones:
Para d
P cada curso (C) cada estudiante(E), tiene un solo
(C), d t di t (E) ti l
asesor (A)
Cada curso tiene varios asesores (A), pero cada
(A)
profesor asesora en un solo curso
6. Forma N
F Normal B
l Boyce/Codd
/C dd
Para cada curso, cada estudiante tiene un solo
asesor
(E, C) A
Cada
C d profesor asesora en un solo curso (pero cada
f l ( d
curso tiene varios asesores)
(E, A) C
7. Forma N
F Normal B
l Boyce/Codd
/C dd
Existen dos clave candidatas que se traslapan o
están sobrepuestas ( , ) y ( , )
p (E,C) (E,A).
Tenemos además la dependencia funcional:
A C
8. Forma N
F Normal B
l Boyce/Codd
/C dd
Anomalías de eliminación
(Identifique alguna)
El problema existe porque hay un atributo que es
determinante pero no clave candidata: N Asesor
d t i t l did t A
Es conveniente crear dos relaciones nuevas:
ESTUDIANTE_ASESOR (E, A) y
ASESOR_CURSO (A,C)
ASESOR CURSO (A C)
9. Forma Normal Boyce/Codd
ASESORIA
NEstudiante NCurso NAsesor
Gómez Mate I Arias
Gómez Física Flores
Pérez Mate I Arias
Pérez Álgebra
g Sánchez
Ramos Física Flores
ASESOR- Ramos Mate I García
ESTUDIANTE
NEstudiante N Asesor ASESOR_CURSO
Gómez Arias N Asesor Curso
Gómez
Gó Flores
Fl
Pérez Arias Arias Mate I
Pérez Sánchez Flores Física
Ramos Flores Sánchez Álgebra
Á
Ramos García García Mate I
10. Forma Normal Boyce/Codd
l / dd
Una relación está en forma normal Boyce
Codd (BCFN) si y solo si todo determinante
es una clave candidata.
11. Forma N
F Normal B
l Boyce/Codd
/C dd
PROYECTO_TAREA_EMPLEADO
PROYECTO TAREA EMPLEADO
Proyecto Tarea Empleado
P01 análisis Juana Paz
P01 calidad Mario Gómez
P15 diseño Ana Llanos
P20 análisis
áli i Juana Paz
J P
P30 análisis Ramón Díaz
REGLAS:
• Para cada proyecto, una tarea es encomendada a un solo empleado,
aún cuando el empleado esté en varios proyectos,
• Un proyecto está asociado a distintas tareas,
• Un empleado se especializa en un tipo de tarea,
• Una misma tarea puede ser desarrollada por distintos empleados en
distintos proyectos.
12. Forma N
F Normal B
l Boyce/Codd
/C dd
Esta relación tiene dos claves candidatas
sobrepuestas:
(Proyecto, Tarea) y (Proyecto, Empleado),
Existe un determinante de Tarea que es
Empleado, pero Empleado no es clave candidata.
Empleado Tarea
13. Forma N
F Normal B
l Boyce/Codd
/C dd
Anomalías de inserción. ¿Cuáles?
Anomalías de eliminación ¿Cuáles?
eliminación.
El problema existe porque hay un atributo que es
determinante pero no clave candidata: Empleado
Creamos dos relaciones nuevas:
PROYECTO_EMPLEADO
PROYECTO EMPLEADO y
EMPLEADO_TAREA
14. Forma Normal Boyce/Codd
PROYECTO_TAREA_EMPLEADO
Proyecto
y Tarea Empleado
p
P01 análisis Juana Paz
P01 calidad Mario Gómez
P15 diseño Ana Llanos
P20 análisis Juana Paz
P30 análisis Ramón Díaz
PROYECTO_EMPLEADO EMPLEADO_TAREA
Proyecto Empleado Empleado Tarea
P01 Juana Paz Juana Paz análisis
P01 Mario Gómez Mario Gómez calidad
P15 Ana Llanos Ana Llanos Diseño
P20 Juana Paz Ramón Díaz análisis
P30 Ramón Díaz
15. Forma N
F Normal B
l Boyce/Codd
/C dd
EXAMEN
Materia Estudiante Posición
Lengua Pérez 5
Matemática Pérez 1
Lengua Gómez 1
Matemática Gómez 3
Historia Pérez 2
Historia Gómez 1
REGLAS:
•No hay empates; es decir, dos estudiantes no pueden
ocupar la misma posición en la misma materia.
16. Forma N
F Normal B
l Boyce/Codd
/C dd
Esta relación tiene dos claves candidatas
sobrepuestas, de acuerdo con las reglas
dadas:
(Estudiante, Materia) y (Materia, Posición),
Sin embargo, esta relación si está en BCFN
porque estas claves candidatas son los únicos
determinantes.
17. Dependencia Multivalor y Cuarta
p
Forma Normal
Dependencia Multivalor
Dada una relación R se dice que un atributo R.y es
R, Ry
dependiente multivalor (DMV) de un atributo R.x, si un
rango específico de valores de y está determinado por un
valor específico de x, con i d
l ífi d independencia del resto de
d i d l d
atributos de R
Se lee: “R y es multivalor de Rx o “Rx multidetermina a
R.y Rx” Rx
R.y”.
Rx R.y
Ry
18. Dependencia Multivalor
Curso Profesor Texto
Química Moreno Química Orgánica
Mora Físico Química
Matemáticas Merino Análisis Vectorial
Álgebra
Trigonometría
Cada Curso tiene un conjunto definido de Profesores y un
j f
conjunto de Textos.
Los profesores son independientes de los textos.
Un profesor puede dictar varios cursos, y un texto podría
emplearse para más de una materia
19. Dependencia Multivalor
CURSO_PROFESOR_TEXTO
Curso Profesor Texto
Química Moreno Físico Química
Química Moreno Química Orgánica
Química Mora Físico Química
Química Mora Química Orgánica
Matemáticas Merino Análisis Vectorial
Matemáticas Merino Álgebra
Matemáticas Merino Trigonometría
Esta relación especifica que: el curso impartido puede ser dictado
por varios profesores utilizando varios textos”. Existen dos DMV:
Curso Profesor y Curso Texto
20. Tratamiento de las DMV
La redundancia de datos causada por la DMV, se
puede eliminar siguiendo uno de los siguientes
métodos:
Crear una nueva relación para cada atributo
DMV.
Curso Profesor Curso Texto
R1 = (Curso, Profesor) R2 = (Curso, Texto)
21. Tratamiento de las DMV
Reemplazar un atributo DMV con atributos
funcionalmente dependientes DF.
Curso (Texto1, Texto2
(Texto1 Texto2, Texto3)
R3 = (Curso, texto1, texto2, texto3)
(C , , , )
22. Tratamiento de las
T t i t d l DMV
Crear una nueva relación para cada atributo DMV.
Curso Profesor Curso Texto
Curso Profesor Curso Texto
Química Moreno Química Físico Química
Química Mora Química Química Orgánica
Matemáticas Merino Matemática Análisis Vectorial
Matemática Algebra
Matemática Trigonometría
23. Tratamiento de las
T t i t d l DMV
Reemplazar un atributo DMV con atributos
R l t ib t t ib t
funcionalmente dependientes DF.
Curso (Texto1, Texto2
(Texto1 Texto2, Texto3)
Curso Texto 1 Texto 2 Texto 3
Química Físico Química Química Orgánica
Química Química Orgánica Físico Química
Matemáticas Análisis Vectorial Algebra Trigonometría
24. Cuarta Forma N
C t F Normal
l
Una relación está en cuarta forma
normal (4FN) si es BCFN y no contiene
dependencias multivalor
multivalor.
25. Cuarta Forma Normal - Ejemplo
ACTIVIDADES
C_Alumno
C Alumno N_Deporte
N Deporte N_Arte
N Arte
Z502010 Basquet Teatro
Z502010 Basquet Canto
Z502010 Gimnasia Teatro
Z502010 Gimnasia Canto
Z510394 Atletismo Danza
Z510394 Atletismo Teatro
Z510394 Atletismo Mimo
Z510394 Basquet Danza
Z510394 q
Basquet Teatro
Z510394 Basquet Mimo
26. 4 FN - Ejemplo
Si el número de valores repetidos en DMV es grande
•Se crea una nueva relación para el atributo DMV y su
clave principal
C_Alumno
N_Deporte
N Depo te
N_Arte
Deporte
(C_Alumno, N_Deporte)
(C Alumno N Deporte)
27. 4 FN - Ejemplo
Si el número de valores repetidos en DMV es pequeño
y específico
• c/u de los valores del atributo DMV se representa
como un atributo dentro del mismo registro
Arte
(C_Alumno, N_Arte_1, N_Arte_2, N_Arte_3)
Deporte
(C_Alumno, N_Deporte)
(C Al mno N Depo te)
28. 4 FN - Ejemplo
Actividades
C_Alumno N_Arte_1 N_Arte_2 N_Arte_3
Z502010 Teatro Canto
Z510394 Danza Teatro Mimo
Deporte C_Alumno N_Deporte
Z502010 Basquet
Z502010 Gimnasia
Gi i
Z510394 Atletismo
Z510394 Basquet
29. Cuarta Forma Normal - Ejemplo
NACIMIENTOS
• En un nacimiento nace un niño (los mellizos se
consideran dos nacimientos).
• En un nacimiento hay una sola madre, y pueden
y , p
atender el parto una o más enfermeras y uno o más
médicos.
R = (bebe, madre, enfermera, médico)
30. Cuarta Forma Normal - Ejemplo
NACIMIENTOS
• Normalizando:
R1 = (b b madre)
(bebe, d )
R2 = (bebe, enfermera, médico)
• No hay DT, y está en FNBC pero en R2 tenemos las
dependencias multivaloradas:
p
bebe médico
bebe enfermera
31. Cuarta Forma Normal - Ejemplo
NACIMIENTOS
R1 = (bebe, madre) R2 = (bebe, enfermera, médico)
BEBE MADRE BEBE ENFERMERA MÉDICO
Bebe1 Sra. López Bebe1 Silva Zapata
Bebe1 Silva Fuentes
Bebe1 Silva García
Bebe1 Gómez Zapata
Bebe1 Gómez Fuentes
Bebe1 Gómez García
32. Cuarta Forma Normal - Ejemplo
NACIMIENTOS
Procedimientos alternativos:
#Crear una nueva relación para cada atributo DMV.
R3 = (bebe, médico) R4 = (bebe, enfermera)
Bebe Médico Bebe
ebe Enfermera
e ea
Bebe 1 Zapata Bebe 1 Silva
Bebe 1 Fuentes Bebe 1 Gómez
Bebe 1 García
33. Cuarta Forma Normal - Ejemplo
NACIMIENTOS
#Reemplazar un atributo DMV con atributos
funcionalmente dependientes DF.
R5 = (bebe médico1 médico2 médico3)
(bebe, médico1, médico2,
R6 = (bebe, enfermera1, enfermera2)
R5 Bebe Médico1 Médico2 Médico3
Bebe 1 Zapata Fuentes García
R6 Bebe Enfermera1 Enfermera2
Bebe 1 Silva Gómez
34. Normalización - Ob
N li ió Observaciones
i
Universidad (N-universidad, Director,
)
Asistente)
Una universidad tiene un director y de uno a tres
asistentes del director. Luego:
PK(Universidad) = (N_universidad, Asistente)
Director depende únicamente de N_universidad
p
(no está en DFC). Por lo tanto, Universidad no es
2FN.
35. Normalización - Ob
N li ió Observaciones
i
Universidad (N-universidad, Director, Asistente)
Normalizando:
Alternativa 1:
Universidad
Universidad’ = (N-universidad, Director)
(N universidad,
Asistente = (N-universidad, Asistente)
Si se desea conocer los datos de una universidad
debe accederse por lo menos a dos registros
registros.
36. Normalización - Ob
N li ió Observaciones
i
Alternativa 2:
Universidad’’ = (N-universidad, Director,
( , ,
Asistente1, Asistente2, Asistente3)
Consultas más complejas de elaborar que con la
alternativa # 1.
37. Normalización
Datos almacenados redundantemente en
Sin Normalizar archivo no plano
p
1FN La relación tiene registros por separado para
cada valor en cada campo del registro, o cada
campo de un registro contiene un solo valor
2FN Cada atributo depende total y funcionalmente
de su clave principal
Ningún atributo no-clave depende
3FN transitivamente de su clave principal
Todo determinante existente en la relación es
BCFN clave candidata
La relación no contiene dependencias
4FN multivaloradas
38. Reglas de Inferencia para
Dependencias Funcionales
Regla reflexiva RI1: Si X ⊇Y, entonces X Y
Regla de aumento RI2: {X Y}|
Y}|= XZ YZ
Regla transitiva RI3: {X Y, Y Z}|= X Z
Regla d d
R l de descomposición o
i ió RI4:
RI4 {X YZ}|=
YZ}| X Z
proyectiva
Regla de unión o aditiva RI5: {X Y, X Z}|= X YZ
Regla pseudotransitiva RI6: {X Y, WY Z}|= WX Z
RI1, RI2 y RI3 se conocen como los Axiomas de Armstrong
39. Resumen del Análisis de las
Dependencias Funcionales
D d i F i l
Dados dos atributos A y B, puede ocurrir que:
A ByB A
Se determinan entre sí, en una relación de uno a uno.
A B,
B pero B no A
Uno determina al otro, por lo que tienen una relación de
muchos a uno
A no B, y B no A
No están relacionados funcionalmente, por lo que tienen una
relación de atributos de muchos a muchos.
40. Resumen del Análisis de las
Dependencias Funcionales
D d i F i l
Uno a uno Muchos a uno Muchos a
muchos
Definición de
la l ió
l relación R(A,B)
R(A B) S(C,
S(C D) T(E,
T(E F)
A B C D F E
Dependencias
p
B A D C E F
Clave AoB C (E, F)
Regla para
agregar otro
g g AoB C C E (
(E, F)
) G
atributo
41. Proceso Total de Normalización
(Diagrama
(Diag ama de Dependencias)
Elaborar el diagrama que muestre las dependencias
funcionales y multivaloradas entre los atributos.
Separar las relaciones DMV de un atributo y su
determinante en otra nueva relación.
Eliminar atributos no-clave para que todos los no-clave
p q
en las relaciones divididas sean total y funcionalmente
dependientes de la clave principal.
Separar las no claves transitivamente dependientes
no-claves
42. Proceso Total de Normalización
(Diagrama
(Diag ama de Dependencias)
PASO 1 Construir diagrama de dependencias según
1.
la semántica de los datos:
Sea la relación R1 (A, B, C, D, E, F, G, H, I), con
( , , , , , , , , ),
las siguientes dependencias: A
•H es DF de (A, B) B
C
•I y C son DFC de A D
E
•D es DMV de A F
•E y F son DF de B G
H
•G es DF de F y DT de B I
Como D es DMV de A, PK(R1) = (A, B, D)
43. Proceso Total de Normalización
(Diagrama
(Diag ama de Dependencias)
PASO 2. Separar las relaciones DMV:
A
B
C
A
E
F D
G
H R3: (A, D)
I
R2: (A, B, C, E, F, G, H, I)
44. Proceso Total de Normalización
(Diagrama
(Diag ama de Dependencias)
PASO 3 Separar no claves que no son totalmente
3. no-claves
dependientes de la clave principal:
A
D B A
E I
R3: (A, D) F C
G
A R6: (A, I, C)
B R5: (B, E, F, G)
H
R4: (A, B H)
(A B,
45. Proceso Total de Normalización
(Diagrama
(Diag ama de Dependencias)
PASO 4. Eliminar dependencia transitiva en R5:
A B
E
D F A
I
R3: (A, D) R7: (B, E, F)
C
A R6: (A, I, C)
B F
H G
R4: (A, B, H) R8: (F, G)
46. Proceso con Diagrama de Dependencias
CLIENTE
C Cliente
PK:
N Cliente
(Conjunto mínimo de
N Ti d
Tipo_documentot atributos
# documento determinantes +
N Dirección_e v o
ecc ó envío Atributos en DMV) =
$ Linea_Credito (C Cliente,
C Tipo_cliente Ndirección_envío,
NTipo_Credito)
NTipo Credito)
N Tipo_cliente
C Clasificación
N Tipo Credito
Tipo_Credito
$ Tipo_credito
47. Proceso con Diagrama de Dependencias
Paso 2: Tratamiento de las DMV
C Cliente
Cli t N dirección_envío
di ió í
Dirección de Cliente: (C Cliente, N Dirección_envío)
48. Proceso con Diagrama de Dependencias
Paso 3: tratamiento de las DFC
(C Cliente, N Tipo_Credito) $ Tipo_Credito
Deuda de Cliente: (C Cliente, N Tipo_credito, $ Tipo_Credito)
C Cli
Cliente (N Cliente, N Tipo_documento, # Documento, $_Linea_credito,
Cli Ti d D $ Li di
CTipo_cliente, Ntipo_cliente, C_Clasificación)
Cliente: (C Cliente, N Cliente, N Tipo_documento, # Documento,
$_Linea_credito, C Tipo_cliente, Ntipo_cliente,
C_Clasificación)
C Clasificación)
49. Proceso con Diagrama de Dependencias
Paso 4: tratamiento de las DT
C Tipo_cliente
Ti li t N TipoCliente
Ti Cli t
Tipo de Cliente: (C Tipo_cliente, N TipoCliente)
50. Proceso con Diagrama de Dependencias
Conjunto resultante de relaciones:
Cliente: ( Cliente, N Cliente, N Tipo_documento, # Documento,
l (C li li i d
$_Linea_credito, C Tipo_cliente, C_Clasificación)
Dirección d Cli t (C Cli t N Di
Di ió de Cliente: Cliente, Dirección_envío)
ió í )
Deuda de Cliente: (C Cliente, N Tipo_credito, $ Tipo_Credito)
Tipo de Cliente: (C Tipo_cliente, N TipoCliente)
51. Objetivos Generales de la
Normalización
Eliminar ciertos tipos de redundancia.
Evitar ciertas anomalías en la actualización de datos.
datos
Producir un diseño que sea una “buena”
representación del mundo real: que sea fácil de
ió d l d l fá il d
entender intuitivamente y constituya una buena base
para un crecimiento futuro.
futuro
Simplificar la imposición de ciertas reglas de
integridad.
i t id d