FORMA NORMAL DE BOYCE-CODD (FNBC)

Edgar Frank Codd a finales definió las bases del modelo relacional a finales de los 60. Trabajaba para IBM empresa que tardó un poco en implementar sus bases. Pocos años después el modelo se empezó a implementar cada vez más, hasta ser el modelo de bases de datos más popular. En las bases de Codd se definían los objetivos de este modelo:

Independencia física. La forma de almacenar los datos, no debe influir en su manipulación lógica

Independencia lógica. Las aplicaciones que utilizan la base de datos no deben ser modificadas por que se modifiquen elementos de la base de datos.

Flexibilidad. La base de datos ofrece fácilmente distintas vistas en función de los usuarios y aplicaciones.

Uniformidad. Las estructuras lógicas siempre tienen una única forma conceptual (las tablas)

Sencillez.

La Forma Normal Boyce-Codd (Denominada por sus siglas en ingles como BCNF or FNBC) es una forma normal utilizada en la normalización de bases de datos. Es una adaptación vagamente más segura de lo establecido en la Tercera Forma Normal (3FN).

Es una etapa en que se deben agrupar los datos por afinidad, formando tablas las cuales se relacionan entre si mediante campos comunes; una tabla se considera en esta forma si y sólo sí cada determinante o atributo es una llave candidata.

La forma normal de Boyce-Codd requiere que no existan dependencias funcionales no triviales de los atributos que no sean un conjunto de la clave candidata. En base de datos un atributo determinante es un atributo del que depende funcionalmente de manera completa algún otro atributo. Todo determinante es una clave candidata.

Como una tabla está en Forma Normal de Boyce-Codd si solo existen dependencias funcionales elementales que dependan de la clave primaria o de cualquier clave alternativa. Si la clave primaria está formada por un solo atributo y está en 3FN, ésta a su vez está en FNBC. Cómo en una tabla en 3FN, todos los atributos dependen de una clave, de la clave completa y de ninguna otra cosa excepto de la clave (excluyendo dependencias triviales, como A \to A). Se dice que una tabla está en FNBC si y solo si está en 3FN y cada dependencia funcional no trivial tiene una clave candidata como determinante. En términos menos formales, una tabla está en FNBC si está 3FN y los únicos determinantes son claves candidata

La 2FN y la 3FN eliminan las dependencias parciales y las dependencias transitivas de la clave primaria. Pero este tipo de dependencias todavía pueden existir sobre otras claves candidatas, si éstas existen. La BCFN es más fuerte que la 3FN, por lo tanto, toda relación en BCFN está en 3FN.

La violación de la BCFN es poco frecuente ya que se da bajo ciertas condiciones que raramente se presentan. Se debe comprobar si una relación viola la BCFN si tiene dos o más claves candidatas compuestas que tienen al menos un atributo en común.

   Gráficamente podemos representar  la forma normal de Boyce Codd de la siguiente forma:

 

 

Un ejemplo típico para mostrar una tabla que, estando en 3FN, mantiene dependencias funcionales, puede ser una tabla que posee los atributos Dirección, Código Postal y Ciudad, deduciendo que a Ciudades diferentes le corresponden códigos postales distintos.

Tabla en tercera forma normal

CPost

Dir

Ciud

3000

C/ Las Flores N°17

Merida

4858

Av. Bolívar este Nº72

Maracay

En este caso hay dependencia entre el Código Postal y la Ciudad, ya que, conocido el Código Postal se puede conocer la Ciudad, y conocida la Dirección y la Ciudad, se conoce el Código Postal.

Para transformar la tabla en una tabla en FNBC se crea una tabla de Códigos Postales y Ciudades, eliminando de la tabla original la Ciudad, obteniéndose dos tablas, una con los atributos Dirección y Código Postal y otra con el Código Postal y la Ciudad

Tabla en forma normal de Boyce-Codd

CPost

Dir

3000

C/ Las Flores N°17

4858

Av. Bolívar este Nº72

 

Tabla en forma normal de Boyce-Codd

CPost

Ciud

3000

Merida

4858

Maracay

 

En la mayoría de los casos, las relaciones en 3FN estarán en FNBC. Para Validar esto se deben ubicar todos los determinantes existentes en la relación así como todas las claves candidatas, se comparan ambos conjuntos y si encuentra que hay algún determinante que no resulta ser clave candidata se demuestra que no esta en FNBC. Se comprueba que la relación está en 1FN, todos los atributos son atómicos. También está en 2FN ya que no hay dependencias funcionalmente completas entre atributos que no sean clave (formen parte de la clave). Y finalmente se verifica que no hay ningún atributo que dependa de forma transitiva de la clave Primaria, luego está en 3FN. Usualmente se considera aceptable tener relaciones que lleguen sólo hasta la FNBC.

La definición de la 3FN no produce diseños satisfactorios cuando se dan las siguientes condiciones, o lo que es lo mismo, cuando una relación NO ESTE EN FNBC concurrirán las siguientes circunstancias:

No hay un teorema sobre la división de la relación, el motivo es que no se puede asegurar que al descomponer una relación en dos para conseguir la FNBC el significado de las relaciones obtenidas se corresponda semánticamente a lo que representa la relación inicial. En otras palabras, se puede tomar una decisión equivocada al descomponer ya que puede que perdamos parte de la semántica de la relación anterior.

 

CUARTA FORMA NORMAL (4FN)

Se dice que una tabla que está en forma normal de Boyce-Codd y de la cual se eliminan las dependencias multivaluadas y se generan todas las relaciones externas con otras tablas u otras bases de datos; es una tabla en 4 forma Normal

Al hablar de dependencia funcional multivaluadas o de múltiples valores,  se refiere a la existencia a la relación que pudiera darse por ejemplo dados tres atributos de una tabla, si para cada valor del primer atributo existen múltiples valores en el segundo atributo y no hay ninguna relación entre el tercer atributo y el primero, a no ser a través del segundo atributo.

Una tabla está en Cuarta Forma Normal o 4FN si está en FNBC y las únicas dependencias funcionales multivaluadas que existen son las dependencias funcionales de la clave con los atributos que no forman parte de la misma. Estas dependencias multivaluadas de la clave con los atributos que no forman parte de la misma son dependencias triviales, por lo que algunos autores dicen que no existen dependencias multivaluadas en 4FN. En base de datos se entiende por dependencia Multivaluada  el caso en que en una tupla (X,Y,Z). se dice que Y es multidependiente de X (X ---> Y) si y sólo si el conjunto de valores de Y correspondiente a un par (X,Z) depende sólo del valor de X y es independiente del valor de Z.

Las dependencias multivaluadas sólo se presentan si existen tres atributos y cuando lo hacen es a pares, es decir ocurre que Y es multidependiente de X y Z es también multidependiente de X.

Consideremos que los atributos de una tabla “Transporte” son Conductor, Tipo de Vehículo y Tipo de Carga, formando los tres campos la clave primaria. A cada Conductor se le puede asignar un Vehículo u otro y cada Vehículo puede transportar varios Tipos de Carga.

Tabla que no esta en cuarta forma normal

Transporte

Conductor

Tipo Vehículo

Tipo Carga

Juan

Camioneta

Perecederos

Marcos

Camioneta

Perecederos

Juan

Camioneta

Muebles

Marcos

Camioneta

Muebles

Juan

Camión

Mudanza

Marcos

Camión

Mudanza

 

Bajo estas condiciones, los Conductores son independientes de la carga; el Tipo de Vehículos depende del Conductor y el Tipo de Vehículo depende de la Carga. En este caso hay dependencias funcionales multivaluadas, ya que algunos atributos que forman la clave dependen de otro atributo que también la forman.

Para conseguir que esta tabla esté en 4FN se necesita crear dos nuevas tablas en lugar de la tabla actual, manteniendo en cada una de ellas una dependencia múltiple. La primera tabla tendrá los atributos conductor y tipo de vehículo y la segunda, tipo de vehículo y tipo de carga. De este modo la tabla en 4FN debido a que la clave primaria de ambas tablas son todos los campos que la forman. Resultado:

Tabla en cuarta forma normal

Tipo Vehículo

Tipo Carga

Camioneta

Perecederos

Camioneta

Perecederos

Camioneta

Muebles

Camioneta

Muebles

Camión

Mudanza

Camión

Mudanza

 

Tabla en cuarta forma normal

Conductor

Tipo Vehículo

Juan

Camioneta

Marcos

Camioneta

Juan

Camioneta

Marcos

Camioneta

Juan

Camión

Marcos

Camión

En las relaciones varios-con-varios, entidades independientes no pueden ser almacenadas en la misma tabla.

La 4FN es en cierto modo bastante compleja de identificar, hay que tener muy claro sobre todo el significado de lo que representa la relación analizada. Para verlo de forma práctica procederemos a definir una nueva relación para comprobar después si está en 4FN.

Algo que vital y que  se aplica para cualquier estado de la normalización es que se debe tener siempre en cuenta el significado semántico de las relaciones de lo contrario se puede  caer en el error de descomponer o diseñar una base de datos que, aunque esté perfectamente

Una relación está en cuarta forma normal (4FN) si está en FNBC y todas las dependencias multivaluadas en ella son de hecho dependencias funcionales.

 

INFOGRAFÍA

1.- TERCERA FORMA NORMAL Y LA FORMA NORMAL DE BOYCE CODD. Presenta ejemplo es información sencilla en relación a lo que se refiere a Base de datos y sus formas normales.

http://www.itlp.edu.mx/publica/tutoriales/basedat1/tema4_3.htm

2.- FORMA NORMAL BOYCE-CODD. Define de manera general la forma Normal de Boyce Codd, e incluye links a otros temas relacionado con las bases de datos.

http://es.wikipedia.org/wiki/Forma_Normal_Boyce-Codd

3.- NORMALIZACIÓN. Material completo que ofrece información de todo lo relacionado en el tema de base de datos de manera bastante fácil de entender.

http://www3.uji.es/~mmarques/f47/apun/node90.html

4.- FORMA NORMAL DE BOYCE-CODD (FNBC). Enlace a documento que presenta de forma bastante detallada y simple conceptos y normas relacionadas con el manejo de base de datos, especialmente en la forma de Boyce Codd.

http://nopurity.iespana.es/openhomework/tareas/BD/Forma%20normal%20de%20Boyce.doc

5.- BASES DE DATOS: FORMAS NORMALES (OPTIMIZAR TABLAS). Link que nos lleva a artículo en el cual de presenta información en relación a las Bases de datos y el proceso de Normalización de las tablas en cada una de sus formas.

http://www.scourdesign.com/articulos/BD-FN.php

6.- NORMALIZACIÓN DE BASES DE DATOS Y TÉCNICAS DE DISEÑO (POR BARRY WISE). Enlace que nos lleva a un artículo útil, que busca ofrecer al visitante la capacidad de aplicar reglas de normalización a proyectos de bases de datos.

http://bulma.net/body.phtml?nIdNoticia=483

7.- NORMALIZACION EN BASES DA DATOS. Presentación que muestra en resumen lo básico de las características principales de lo que se refiere a las formas normales utilizadas en normalización de base de datos.

http://www.cs.us.es/cursos/bd-2005/tema-BD-5.pdf

8.- LA CUARTA FORMA NORMAL (4FN) En lo referente a Normalización de Base de datos, este vínculo presenta información muy practica con ejemplos, y vía de solución de casos comunes en el proceso de optimización de tablas.

http://www.jorge-guerrero.com/misapuntes/informatica/normalizacionbd/normalizacionbd5.htm

9.- NORMALIZACIÓN. Enlace donde se encuentra contenido de fácil comprensión de las formas normales aplicadas a ejemplos prácticos a fin de visualizar en que consisten y en que se diferencian

http://www.inf.udec.cl/~mvaras/modulo30/04-norma.html

10.- CUARTA FORMA NORMAL. Link que define de manera muy genérica las formas normales existentes y sus principales características o fundamentos.

http://www.cs.cinvestav.mx/BDChapa/pedro/4fn_tm.html

 

 

 

 

 

 

Hosted by www.Geocities.ws

1