M2 - Bases de dades / UF1NF3: Solucions exercicis Normalitzacio

De wikiserver
Dreceres ràpides: navegació, cerca

Normalització 1

L’objectiu d’aquesta activitat és obtenir un disseny correcte a partir d’una relació universal tot aplicant els processos de normalització.

Considereu la relació universal formada pels atributs Assig (assignatura), Aula, Alum (alumne), Prof (professor), Hora i Nota (qualificació).

Se sap que cada assignatura té un únic professor; una aula, en un moment determinat, només pot estar ocupada per una única assignatura, i per cada assignatura hi ha una qualificació.

A partir de la relació universal, dissenyeu l’esquema de dependències funcionals i apliqueu el procés de normalització fins a assolir les relacions en cinquena forma normal. Indiqueu en quin moment s’assoleixen les diferents formes normals.

Solució:

Definició de la relació universal:

UNIVERSAL (Assig, Aula, Alum, Prof, Hora, Nota)

La relació universal està en primera forma normal, ja que tots els atributs són indivisibles o atòmics.

L’esquema de dependències funcionals, tenint en compte les observacions de l’enunciat, és aquest:

Solució normalització exercici 1

Com a clau primària de la relació universal, podem considerar la formada pels atributs Assig, Aula, Hora i Alum, ja que aquests atributs identifiquen els diferents tuples de la relació. Així, podem escriure:

UNIVERSAL (Assig, Aula, Hora, Alum, Prof, Nota)

Aquesta relació no es troba en 2FN, ja que té atributs que no formen part de la clau primària i que tenen dependència funcional no total de la clau.

En efecte, l’atribut Prof depèn d’Assig, i no pas de Nota. També, l’atribut Nota depèn dels atributs Assig i Alum. Per tant, aquestes dependències ens indiquen com hem de trencar la relació universal en relacions de manera que es mantinguin les dependències funcionals i es trobin en 2FN:

ESPAIS (Aula, Hora, Assig)

DOCÈNCIA (Assig, Prof)

QUALIFICACIONS (Assig, Alum, Nota)

Fixem-nos que les tres relacions es troben en 2FN.

També es troben en 3FN, ja que cap d’elles conté atributs no clau amb dependències transitives de la clau.

Les tres relacions es troben en FNBC, ja que no hi ha determinants que no siguin claus candidates.

Les tres relacions es troben 4FN, ja que cap d’elles no té dependències multivalents.

Les tres relacions es troben en 5FN, ja que cap d’elles no té dependències de reunió.


Normalització 2

L’objectiu d’aquesta activitat és obtenir un disseny correcte a partir d’una relació universal tot aplicant els processos de normalització.

Una federació esportiva vol informatitzar les dades dels esportistes federats, els quals han de ser, obligatòriament, membres d’algun club esportiu. A aquest efecte, es considera que els esportistes estan identificats per un número de federat i poden haver estat en diferents clubs, identificats per un codi, diverses vegades. A part, cada esportista ha passat, al llarg de la seva història, per diferents categories.

Evidentment, també interessa el nom, l’adreça i la ciutat de residència de l’esportista i del club. Ah! les ciutats estan codificades i tenen un nom que no les identifica.

Davant d’aquesta situació, el responsable informàtic de la federació, que no coneix el model Entitat-Relació, ha decidit considerar la relació universal:


UNIVERSAL (NúmEsp, NomEsp, DirEsp, CodCiuEsp, NomCiuEsp, DataIniClub, DataFiClub, CodClub, NomClub, DirClub, CodCiuClub, NomCiuClub, DataIniCat, DataFiCat, Categoria)


i normalitzar-la, però necessita ajuda.

El podeu ajudar a dissenyar l’esquema de dependències funcionals i aplicar el procés de normalització fins a assolir les relacions en cinquena forma normal. Indiqueu en quin moment s’assoleixen les diferents formes normals.

Abreviatures: Esp (esportista); Dir (direcció); Ciu (ciutat); Cat (categoria)

Solució:

La relació universal està en primera forma normal, ja que tots els atributs són indivisibles o atòmics.

L’esquema de dependències funcionals, tenint en compte les observacions, és el següent:

Solució normalització exercici 2

Fixem-nos que un esportista no tindrà dues vegades la mateixa categoria, és a dir, en passar d’aleví a infantil, ja no tornarà a ser aleví mai, per la qual cosa, donat un esportista i una categoria, només ens podem trobar amb una data d’inici a la categoria (DataIniCat) i una data final de la categoria (DataFiCat). No passa el mateix en el cas del club al qual pertany un esportista, ja que com es dedueix de l’enunciat, un esportista pot passar per un club diverses vegades. Per tant, la data de finalització en un club (DataFiClub) depèn funcionalment de l’esportista, el club i la data d’inici en el club (DataIniClub).

Com a clau primària de la relació universal, podem considerar NúmEsp, CodClub, DataIniClub i Categoria, ja que aquests atributs identifiquen els diferents tuples de la relació. Així, podem escriure el següent:

UNIVERSAL (NúmEsp, NomEsp, DirEsp, CodCiuEsp, NomCiuEsp, DataIniClub, DataFiClub, CodClub, NomClub, DirClub, CodCiuClub, NomCiuClub, DataIniCat, DataFiCat, Categoria)

Aquesta relació no es troba en 2FN, ja que té atributs (com es veu en l’esquema de dependències funcionals) que no formen part de la clau primària i que tenen dependència funcional no total de la clau. Per tant, aquestes dependències ens indiquen com hem de trencar la relació universal en relacions de manera que es mantinguin les dependències funcionals i es trobin en 2FN:

ESPORTISTES (_NúmEsp_, NomEsp, DirEsp, CodCiuEsp, NomCiu)

CLUBS (_CodClub_, NomClub, DirClub, CodCiuClub, NomCiu)

ESPORTISTES_CLUBS (_NumEsp, CodClub, DataIniClub_, DataFiClub)

ESPORTISTES_CATEGORIES (_NúmEsp, Categoria_, DataIniCat, DataFiCat)

Fixem-nos que les quatre relacions es troben en 2FN.

ESPORTISTES i CLUBS no es troben en 3FN donat que existeix dependència funcional transitiva:

NumEsp -- > CodCiuEsp -- > NomCiu i

CodClub -- > CodCiuClub -- > NomCiu

Per tal de posar les relacions en 3FN creem una relació nova:

CIUTATS (_CodCiu_, NomCiu)

i eliminem el NomCiu de les relacions ESPORTISTES i CLUBS:

ESPORTISTES (_NúmEsp_, NomEsp, DirEsp, CodCiuEsp)

CLUBS (_CodClub_, NomClub, DirClub, CodCiuClub)

Ara totes les relacions es troben en 3FN, ja que cap d’elles conté atributs no clau amb dependències transitives de la clau.

Les cinc relacions es troben en FNBC, ja que no hi ha determinants que no siguin claus candidates.

Les cinc relacions es troben 4FN, ja que cap d’elles té dependències multivalents.

Les cinc relacions es troben en 5FN, ja que cap d’elles té dependències de reunió.