Descripción principal |
Sea una entidad TÉCNICOS de un grupo de empresas, con los siguientes atributos:
-
cod_empresa
-
cod_técnico
-
nombre_técnico
-
cod_categoría
-
categoría
-
nombre_empresa
-
fecha_alta
-
fecha_baja
-
cod_conoc
-
título_conoc
-
área_conoc
-
grado
-
cod_proyecto
-
nombre_proyecto
-
f_inicio
-
f_fin
-
f_asignación
-
f_cese
-
cod_cliente
-
nombre_cliente
La entidad TÉCNICOS tiene la clave principal compuesta por cod_empresa y cod_técnico, ya que, al ser
varias empresas, el código de técnico no será único, sino que puede coincidir con otros de otras empresas.
Primera forma normal (1FN).
Evidentemente no se cumple la primera forma normal, ya que un técnico tendrá más de un conocimiento (lenguajes,
sistemas operativos, bases de datos, etc.), es decir habrá varios valores de cod_conoc, por lo que este atributo
y los asociados a conocimientos no dependen funcionalmente de la clave principal.
Los atributos cod_conoc, título_conoc, área_conoc y grado identificados como no dependientes, formarán
la nueva entidad CONOCIMIENTOS y desaparecerán de la entidad TÉCNICOS. La clave de la nueva entidad será
cod_conoc concatenada con cod_empresa y cod_técnico.
Por otro lado, en este sistema un técnico puede trabajar en más de un proyecto a tiempo parcial, por lo que
cod_proyecto tampoco depende funcionalmente de la clave principal de TÉCNICOS.
Se obtiene entonces la entidad PROYECTOS con los atributos de los proyectos, y su clave compuesta de
cod_proyecto concatenada con cod_empresa y cod_técnico de la antigua entidad.
Esta situación se completará con dos tipos de relaciones: Poseen, cuyo tipo de correspondencia es 1:N entre
TÉCNICOS y CONOCIMIENTOS y Están asignados, también dell tipo M:N entre TÉCNICOS y PROYECTOS, tal y como muestra
el diagrama siguiente.
Como se aprecia en la figura, se ha trasladado el atributo grado de la entidad CONOCIMIENTOS a la relación
Poseen, pues es un atributo que determina la relación entre las dos entidades. También han sido trasladado los
atributos que caracterizan la relación Están asignados, como son f_asignación y f_cese, ya que un
técnico no siempre estará trabajando en un proyecto, sino en determinado periodo.
Segunda forma normal (2FN).
En la entidad TÉCNICOS se observa que el atributo nombre_empresa no tiene una dependencia funcional completa de
la clave, sino que la tiene sólo de una parte de la misma: cod_empresa.
El atributo identificado formará parte de una nueva entidad, EMPRESAS, siendo eliminado de la antigua. La clave
principal de la nueva entidad será cod_empresa.
Para representar la segunda forma normal en el modelo de datos, deberá añadirse un tipo de relación, Se
componen, y el tipo de correspondencia 1:N.
Tercera forma normal (3FN).
En la entidad TÉCNICOS de la figura se puede observar que para un cod_técnico hay un único
cod_categoría, es decir, el segundo depende funcionalmente del primero; para un cod_categoría hay una
única categoría, es decir, que este atributo depende funcionalmente del cod_categoría; y por último, para
un cod_categoría hay varios valores de cod_técnico. Así pues, la categoría depende transitivamente
del cod_técnico, por lo que la entidad TÉCNICOS no está en 3FN.
Una vez identificado el atributo categoría que depende de otro atributo distinto de la clave,
cod_categoría, se formará con él una nueva entidad y se quitará de la antigua. La clave principal de la nueva
entidad será el atributo del cual depende cod_categoría y en la entidad antigua pasará a ser una clave
ajena.
Del mismo modo, puede observarse que la entidad PROYECTOS tampoco está en 3FN, pues el nombre_cliente depende
de cod_cliente, que no forma parte de la clave de la entidad.
Así pues, aparecen dos entidades nuevas en el modelo: CATEGORÍAS y CLIENTES, y sus respectivas relaciones y tipos de
correspondencias: Están clasificados 1:N y Tiene contratados 1:N.
|