Você está na página 1de 4

Pontificia Universidad de Valparaso

Facultad de Ingeniera
Escuela de Ingeniera Informtica

Bases de Datos INF 340


Primer Semestre 2008
23 Julio 2008

CERTAMEN 2
Para la realizacin del presente certamen se dispondr de 90 minutos..
Debe incluir cualquier supuesto no explicito, siempre cuando no cambie el sentido de la pregunta.
No se pueden utilizar libros ni apuntes

1. Consideremos la base de datos de personal de una empresa que tiene un conjunto de


departamentos. Cada departamento tiene un conjunto de empleados, un conjunto de
proyectos y un conjunto de oficinas. Cada empleado tiene una historia de salarios (el
conjunto de salarios que ese empleado ha recibido ). Cada oficina tiene un conjunto de
telfonos.
La base de datos debe contener la siguiente informacin:
a) Por cada departamento: nmero de departamento (nico), presupuesto y el nmero
de empleado del gerente del departamento (nico).
b) Por cada empleado: nmero de empleado (nico), nmero de proyecto en el que
actualmente trabaja, nmero de oficina y nmero de telfono; ms la fecha y salario
para cada salario recibido en ese puesto.
c) Por cada proyecto: nmero de proyecto (nico) y presupuesto.
d) Por cada oficina: nmero de oficina (nico), superficie en metros cuadrados y
nmeros (nicos) de todos los telfonos de esa oficina.
Se pide generar el respectivo modelo relacional. Para ello Ud. debe primer generar el
modelo entidad-relacin (primera versin) asociado. (15 puntos)
Para facilitar su anlisis se incluye el siguiente diagrama de dependencias funcionales
directas, tanto las implicadas por el enunciado como las correspondientes a las suposiciones
semnticas (razonables) explicitadas ms abajo.

Suposiciones semnticas:
Ningn empleado es el gerente de ms de un departamento a la vez.
Ningn empleado trabaja en ms de un departamento a la vez.
Ningn empleado trabaja en ms de un proyecto a la vez.
Ningn empleado ocupa en ms de una oficina a la vez.
Ningn empleado tiene ms de un telfono a la vez.
Ningn proyecto est asignado a ms de un departamento a la vez.
Ninguna oficina est asignada a ms de un departamento a la vez.
RESP.:
A partir del diagrama de dependencias funcionales construimos la siguiente coleccin de
esquemas de relacin en 1FN:
DEPT1 ( #DEPT , DPRESUPUESTO , #EMP-GERENTE )
EMP1 ( #EMP , #PROY , #DEPT , #OFICINA , #TELEFONO )
HISTOSAL1 ( #EMP , FECHA , SALARIO )
PROY1 ( #PROY , #DEPT , PROYPRESUPUESTO )
OFI1 ( #OFICINA , SUPERFICIE , #DEPT )
TELEFONO1 ( #TELEFONO , #OFICINA )

Pamela Hermosilla M. - Jos Miguel Rubio L.

Pontificia Universidad de Valparaso


Facultad de Ingeniera
Escuela de Ingeniera Informtica

Bases de Datos INF 340


Primer Semestre 2008
23 Julio 2008

Estos esquemas en 1FN estn en 2FN porque no existen dependencias parciales respecto a
las claves candidatas.
DEPT1: Este esquema est en 2FN pues sus claves candidatas ( #DEPT y #EMPGERENTE ) son simples.
HISTOSAL1: Est en 2FN porque no existen dependencias funcionales parciales de
atributos no primos respecto de la clave primaria compuesta.
EMP1: Est en 2FN pues su clave primaria es simple.
PROY1: dem anterior.
OFI1: dem anterior.
TELEFONO1: dem anterior. Cabe notar que esta relacin no es necesariamente una
proyeccin de EMP1 ( pueden existir telfonos y oficinas sin estar asignados a ningn
empleado ), por lo cual no podemos descartarla.
Ahora verificaremos que en este conjunto de esquemas en 2FN no existan dependencias
transitivas de atributos no primos respecto de las claves candidatas.
El nico esquema de relacin que no est en 3FN es EMP1, en el cual:
#OFICINA: Tiene dependencia transitiva con respecto a la clave candidata #EMP a travs
de #TELEFONO, y #DEPT: Tiene dependencia transitiva con respecto a la clave candidata
#EMP a travs de #PROY y a travs de #OFICINA ( y por lo tanto a travs de
#TELEFONO ).
Las relaciones ( proyecciones ) en 3FN correspondientes al esquema EMP1 en 2FN son:
EMP2 ( #EMP , #PROY , #TELEFONO )
X ( #TELEFONO , #OFICINA )
Y ( #PROY , #DEPT )
Z ( #OFICINA , #DEPT )
Sin embargo, X es TELEFONO1, Y es una proyeccin de PROY1 y Z es una proyeccin
de OFI1.
Por lo tanto, este es el conjunto de esquemas de relacin en 3FN:
DEPT1 ( #DEPT , DPRESUPUESTO , #EMP-GERENTE )
EMP2 ( #EMP , #PROY , #TELEFONO )
HISTOSAL1 ( #EMP , FECHA , SALARIO )
PROY1 ( #PROY , #DEPT , PROYPRESUPUESTO )
OFI1 ( #OFICINA , SUPERFICIE , #DEPT )
TELEFONO1 ( #TELEFONO , #OFICINA )
2. El servicio de biblioteca de la PUCV quiere actualizar su Sistema de Prstamos, para
ello necesita llevar el control de cada prstamo que incluya los siguientes datos:
informacin sobre el usuario del servicio, datos del libro y la informacin sobre el prstamo
que se realiza.
El modelo actual de base de datos, considera una entidad usuario, sus atributos son:
i_usuario#, n_usuario, i_libro, d_prestamo, d_entrega y una entidad libro, sus atributos
son: i_libro#, n_ttulo, i_editorial, n_editorial, n_pas, d_ao.
El sistema actual, presenta el siguiente problema: cada vez que un usuario pide un libro hay
que escribir su nmero de usuario (i_usuario) y su nombre (n_usuario), adems en la
realidad se tendrn muchos datos ms de los usuarios de la biblioteca.
Para solucionar este problema es necesario aplicar teora de la normalizacin (aplicando
claramente cada paso hasta obtener 3FN). Se debe adems dibujar el modelo relacional
resultante (15 puntos). Se debe considerar la siguiente vista de los datos del prstamo.
i_usuario n_usuario

i_libro

d_prestamo d_entrega

3435

J. Prez

Qa76.9

25/IV/07

13/V/07

3435

J. Prez

Qa76.9

5/X/07

13/X/07

3435

J. Prez

Qa76.893 3/III/07

5678

A. Ramrez Qa76.9

2/IV/07

13/III/07
3/V/07

RESP.: Identificar grupos de repeticin. En el ejemplo el grupo de repeticin es lo que


est en rojo: i_usuario#, n_usuario, i_libro, d_prestamo, d_entrega
Pamela Hermosilla M. - Jos Miguel Rubio L.

Pontificia Universidad de Valparaso


Facultad de Ingeniera
Escuela de Ingeniera Informtica

Bases de Datos INF 340


Primer Semestre 2008
23 Julio 2008

Eliminar grupos de repeticin. Para poderlos eliminar se crea una nueva tabla con una
llave primaria compuesta, una parte es la llave primaria de la tabla original (i_usuario) y la
otra parte es la llave primaria del grupo de repeticin (i_libro), las entidades quedan as:
usuario (i_usuario#, n_usuario)
prestamo (i_usuario#, i_libro#, d_prestamo, d_entrega)

De una entidad se crearon 2 entidades


La entidad libro queda igual
libro(i_libro#, n_ttulo, i_editorial, n_editorial, n_pas, d_ao)

Analizando la entidad prstamo que es la que tiene la llave primaria compuesta:


prestamo (i_usuario#, i_libro#, d_prestamo, d_entrega)

En este ejemplo todas las entidades se encuentran en 2 FN, ya que los atributos d_prestamo
y d_entrega dependen completamente de la llave primaria compuesta y no de una parte de
sta.
En el ejemplo, estas dos entidades estn en 3FN:
usuario (i_usuario#, n_usuario)
prestamo (i_usuario#, i_libro#, d_prestamo, d_entrega)

Pero en esta entidad se puede aplicar la 3FN


libro(i_libro#, n_ttulo, i_editorial, n_editorial, n_pas, d_ao)
El atributo n_editorial y n_pais dependen del atributo no llave i_editorial, por

lo tanto

se puede sacar a otra entidad.


A partir de la entidad libro quedaran las siguientes dos entidades:
libro(i_libro#, n_ttulo, i_editorial, d_ao)
editorial(i_editorial#, n_editorial, n_pas)

3. Considere la siguiente situacin y analice la posibilidad de aplicar FNBC y/o 4FN. (15
puntos)

Cada registro de la tabla indica que un restaurante dado puede entregar una variedad
especifica de pizza a un rea determinada.
RESP.: Note que debido a que la tabla tiene una clave nica y ningn atributo no-clave, no
viola ninguna forma normal hasta el BCNF. Pero debido a que las variedades de pizza que
un restaurante ofrece son independientes de las reas a las cuales el restaurante enva, hay
redundancia en la tabla: por ejemplo, nos dicen tres veces que A1 Pizza ofrece la Corteza
rellena, y si A1 Pizza comienza a producir pizzas de Corteza de queso entonces
necesitaremos agregar mltiples registros, uno para cada una de las reas de envo de A1
Pizza. En trminos formales, esto se describe como que Variedad de pizza est teniendo
una dependencia multivalor en Restaurante.
Para satisfacer la 4NF, debemos poner los hechos sobre las variedades de pizza ofrecidas en
una tabla diferente de los hechos sobre reas de envo:

Pamela Hermosilla M. - Jos Miguel Rubio L.

Pontificia Universidad de Valparaso


Facultad de Ingeniera
Escuela de Ingeniera Informtica

Bases de Datos INF 340


Primer Semestre 2008
23 Julio 2008

En contraste, si las variedades de pizza ofrecidas por un restaurante a veces variaran de una
rea de envo a otra, la tabla original de la tres columnas satisfara la 4NF.

4. Responda Falso o Verdadero, justificando aquellas aseveraciones que Ud. considere


falsas. (10 puntos)
a) Existen varias representaciones para el modelo lgico de la BD, entre las que se
encuentra el modelo reticular y el modelo jerrquico. V
b) Los sistemas de bases de datos en red intentan solucionar las limitaciones del
modelo jerrquico. V
c) Actualmente los sistemas OO son un estndar en el mercado, especialmente en
operaciones comerciales. F
d) La gestin de consultas expresadas de forma imprecisa es uno de los desafos no
resueltos de los modelos de datos OO. F
e) Una base de datos relacional, est formada por un conjunto de relaciones o tablas,
las cuales estn asociadas entre s a travs de filas que tienen en comn. F
5. Supongamos que al disear una BD se obtienen las cuatro relaciones siguientes:
R1(nombre_emp, direcc_emp, edad, sexo, nombre_superv)
R2(nombre_superv, departamento)
R3(nombre_empl, departamento)
R4(departamento, num_tel_depart, direcc-depart)
Una de las relaciones es redundante. Identificarla y explicar las razones de dicha
redundancia. (5 puntos)
R3

Pamela Hermosilla M. - Jos Miguel Rubio L.

Você também pode gostar