Unidad 2.-Diseño de Bases de Datos con Modelo ER.

2.1 El Proceso de Diseño



El diseño de una base de datos consiste en extraer los datos más importantes de un problema. Para poder realizar esto se debe de realizar un análisis bastante detallado sobre el problema para poder saber que datos son los realmente necesarios para ser almacenados e ignorar aquellos sin relevancia alguna. Esto es logrado mediante pláticas con el usuario final del sistema, pero no solo el crear la base de datos significa el final del trabajo, además se debe poner a disposición del usuario una herramienta (software) que le facilite la interacción con la información almacenada. Hecho esto se pasa al modelado, el cual es la representación gráfica mediante alguna herramienta especializada en diseño de bases de datos, que represente con precisión los datos requeridos.

El proceso de diseño para una base de datos consta básicamente de 7 pasos, los cuáles se describen en la siguiente imagen.

El proceso de diseño consta de los pasos siguientes

1.Determinar la finalidad de la base de datos: Esto le ayudará a estar preparado para los demás pasos. 
2.Buscar y organizar la información necesaria: Reúna todos los tipos de información que desee registrar en la base de datos, como los nombres de productos o los números de pedidos. 

3.Dividir la información en tablas y convertir los elementos de información en columnas : 
  • En este punto lo primero que se debe hacer es dividir los elementos de información obtenidos en entidades o temas principales como Empleados o Clientes, cada tema será una tabla.
  • Se decide qué tipo información desea almacenar en cada tabla. Cada elemento se convertirá en un campo y se mostrará como una columna en la tabla. Por ejemplo, una tabla Clientes podría incluir campos como Nombre, Apellido y Teléfono. 
4.  Especificar claves principales:   
Elija la clave principal de cada tabla. La clave principal es una columna que se utiliza para identificar inequívocamente cada fila. Un ejemplo podría ser el identificador de producto o Id.

5.Definir relaciones de  las tablas:   

Examine cada tabla y decida cómo los datos en una tabla relacionados con los datos en otras tablas. Agregar campos a las tablas o cree nuevas tablas para clarificar las relaciones según sea necesario.

6.Ajustar el diseño: Analice el diseño para detectar errores. Cree las tablas y agregue algunos registros con datos de ejemplo. Compruebe si puede obtener los resultados previstos de las tablas. Realice los ajustes necesarios en el diseño.

7.Aplicar  las reglas de normalización: se aplican reglas de normalización de los datos para comprobar si las tablas están estructuradas correctamente. Realice los ajustes necesarios en las tablas.
2.2 Modelo Entidad-Relación

Un modelo de datos es una colección de herramientas conceptuales para la descripción de datos, relaciones entre datos, semántica de los datos y restricciones de consistencia.

 El modelo entidad-relación (E-R): es un modelo de datos de alto nivel está basado en una percepción de un mundo real que consiste en una colección de objetos básicos, denominados entidades, y de relaciones entre estos objetos.
 El modelo relaciona: es un modelo de menor nivel. Usa una colección de tablas para representar tanto los datos como las relaciones entre los datos. Su simplicidad conceptual ha conducido a su adopción general; actualmente, una vasta mayoría de productos de bases de datos se basan en el modelo relacional.

 Los diseñadores formulan generalmente el diseño del esquema de la base de datos modelando primero los datos en alto nivel, usando el modelo E-R, y después traduciéndolo al modelo relacional. 

El modelo de datos entidad-relación (E-R) está basado en una percepción del mundo real consistente en objetos básicos llamados entidades y de relaciones entre estos objetos. Se desarrolló para facilitar el diseño de bases de datos permitiendo la especificación de un esquema de la empresa que representa la estructura lógica completa de una base de datos. El modelo de datos E-R es uno de los diferentes modelos de datos semánticos; el aspecto semántico del modelo yace en la representación del significado de los datos. El modelo E-R es extremadamente útil para hacer corresponder los significados e interacciones de las empresas del mundo real con un esquema conceptual. Debido a esta utilidad, muchas herramientas de diseño de bases de datos se basan en los conceptos del modelo E-R.


Este modelo se encarga de representar el modelo conceptual. Este coloca el resultado del análisis del problema real mediante diagramas. La notación es bastante sencilla de comprender. Dentro de los elementos que componen estos diagramas encontramos los siguientes:

Entidades: Son objetos del mundo real de los cuales se recoge información, pueden ser tangibles o intangibles. Se encuentran colocadas dentro de un rectángulo. Existen 2 tipos de entidades: las entidades fuertes y las entidades débiles, ambas dependientes de una entidad fuerte. Una OCURRENCIA se refiere a una instancia dentro de la entidad.


  • Que sea única.
  • Que se tenga pleno conocimiento de ella.- ¿Por qué en las empresas se asigna a cada cliente un número de cliente?.
  • Que sea mínima, ya que será muy utilizada por el gestor de base de datos.



Relaciones: Es una asociación entre 2 o más entidades, estas pueden ser binarias, ternarias, etc. Se identifican por ser un verbo y son colocadas dentro de un rombo.para reflejar las interacciones existentes entre entidades. Las relaciones pueden ser de tres tipos:


  • Relaciones 1-1.- Las entidades que intervienen en la relación se asocian una a una (Ej: la entidad HOMBRE, la entidad MUJER y entre ellos la relación MATRIMONIO).
  • Relaciones 1-n.- Una ocurrencia de una entidad está asociada con muchas (n) de otra (Ej: la entidad EMPERSA, la entidad TRABAJADOR y entre ellos la relación TRABAJAR-EN).
  • Relaciones n-n.-Cada ocurrencia, en cualquiera de las dos entidades de la relación, puede estar asociada con muchas (n) de la otra y viceversa (Ej: la entidad ALUMNO, la entidad EMPRESA y entre ellos la relación MATRÍCULA).

Participación: La participación de una ocurrencia de una entidad indica, mediante una pareja de números, el mínimo y máximo número de veces que puede aparecer en la relación asociada a otra ocurrencia.






Participación    
Significado
 (0,1)                
Mínimo cero, máximo uno
(1,1)                
Mínimo uno, máximo uno
(0,n)                
Mínimo cero, máximo n    (muchos)
(1,n)                
Mínimo uno, máximo n (muchos)




Cardinalidad: La cardinalidad de una relación se calcula mediante las participaciones de sus ocurrencias. Se toma el número máximo de participaciones y se colocan en ella.







Atributos: Son las características o propiedades que definen a la entidad son colocadas dentro de elipses y pueden ser de diferentes tipos: simple (no están divididos en sub-partes), compuesto (formado por más de un atributo), monovalorado (tiene un solo valor), multivalorado (pueden tener varios valores de manera simultánea), almacenado (guardan una cantidad para realizar cálculos), derivado (su valor se puede derivar de otros atributos) y nulo (puede no haber valor para un atributo).







Dominio: El dominio representa la naturaleza del dato, es decir, el conjunto de valores permitidos para un atributo. Por ejemplo: si es un número entero, una cadena de caracteres, etc.








2.3 Diseño con diagramas E-R


Es la representación gráfica del Modelo Entidad-Relación y permite ilustrar la estructura de la base de datos del negocio modelado.
Escribe Johnson "los diagramas ER constituyen una notación para documentar un diseño tentativo de bases de datos. Los analistas los utilizan para facilitar el proceso de diseño".






Entidad Fuerte: Una Entidad fuerte (también conocida como entidad regular) es aquella que sí puede ser identificada unívoca-mente. En los casos en que se requiera, se puede dar que una entidad fuerte "preste" algunos de sus Atributos a una entidad débil para que, esta última, se pueda identificar.

Entidad débil: Es aquella que no puede existir sin participar en la relación, es decir, aquella que no puede ser unívocamente identificada solamente por sus atributos como Clave.

Conjunto de entidades Fuerte: Conjunto de entidades que posee una clave primaria.



Relaciones: Una entidad se relaciona con otra entidad. Toda relación debe de llevar una cardinalidad. Una relación entre dos entidades siempre se va a dar por medio de un rombo. Cada entidad deberá tener sus elementos.

 Atributos: Características o propiedades asociadas al conjunto de entidades o relaciones y que toman valor en una entidad en particular. Los posibles valores puede tomar un atributo para un conjunto de entidades se denomina dominio.

El Discriminante: Es un conjunto de atributos que permite que esta distinción se haga. Por ejemplo; el discriminante del conjunto de entidades débiles pago es el atributo número-pago, ya que, para cada préstamo, un número de pago identifica de forma única cada pago para ese préstamo. El discriminante de un conjunto de entidades débiles se denomina la clave parcial del conjunto de entidades. 







2.4  Modelo E-R extendido


Este incorpora los elementos antes vistos en el modelo Entidad/Relación, con la adición de generalización y especialización.
Una entidad E es una generalización de un grupo entidades E1, E2…En. Estas últimas son especializaciones de la entidad general E. 
Ejemplificando esto para hacerlo más entendible:

Tomemos a una entidad “doctor” como la entidad general. Ahora, esta entidad puede dividirse en varias especialidades como enfermeros, odontólogos, ginecólogos,  etc. Todos pertenecen a doctor y heredan los atributos de esa superclase, pero además de estos tienen otros atributos propios de su especialización. 





Los tipos de especialización existentes son:

Exclusiva: Cada ocurrencia de la superclase solo puede materializarse o existir en una de las especializaciones o subclases. Para representar esta especialización se agrega un arco al triángulo de la jerarquía o generalización.

Inclusiva: Es cuando una ocurrencia de la superclase puede materializarse en más de una subclase. Se representa sin el arco, quedando únicamente el triángulo.

Total: Se da cuando una ocurrencia en la entidad padre o superclase tiene que materializarse obligatoriamente en una de las especializaciones. En este caso se representa añadiendo un pequeño círculo al triángulo de la generalización.

Parcial: La entidad superclase no tiene porqué materializarse en una de las especializaciones (es opcional). Se representa de la misma forma que la especialización inclusiva.

Ejemplo:







2.5 La Notación E-R con UML.


El UML es un estándar propuesto que ayuda a la creación de especificaciones de distintos componentes de un software. Algunos componentes son la interacción del usuario con el sistema, especificación de módulos funcionales del sistema y su interacción.
Estas son algunas partes del UML:
  1. Diagrama de clase: Este es parecido al diagrama E-R
  2. Diagrama de caso de uso: estos muestran la interacción entre los usuarios y el sistema.
  3. Diagrama de actividad: se encargan de describir el flujo de tareas entre varios componentes de un sistema.
  4. Diagrama de implementación: Muestran componentes del sistema y sus interconexiones tanto en el nivel del componente software como el hardware.

El UML muestra conjuntos de entidades como cuadros y en cuanto al E-R, muestra los atributos dentro del cuadro en lugar de elipses separadas. UML modelo objetos, mientras que E-R modela entidades. Los objetos son similares a las entidades al igual que tienen atributos, pero proporcionan un conjunto de funciones las cuales se pueden invocar para calcular distintos valores.

En UML los conjuntos de relaciones binarias se dibujan mediante una línea que conecta a los conjuntos de entidades; en esta misma se escribe el nombre del conjunto. Se puede especificar el papel que juega un conjunto de relaciones y así conectar el cuadro con una línea discontinua en donde se describe el conjunto de relaciones.Este cuadro se puede tratar como un conjunto de entidades, pero las relaciones binarias no se pueden representar directamente en el UML se deben convertir en relaciones binarias. En cuanto a las restricciones de cardinalidad en UML se especifican de la mima manera que en los diagramas E-R en donde:
 1:  denota el mínimo 
 * el máximo número de relaciones en que pueda participar una entidad.

Para ser mas entendible este punto dejamos el siguiente ejemplo de un diagrama de E-R con notación tradicional y con el mismo modelo pero con notación UML:













Comentarios

Publicar un comentario

Entradas más populares de este blog

ALUMNOS