martes, 13 de septiembre de 2011

CONSTRUCCION DE UN DIAGRAMA ENTIDAD-RELACION (E/R) TAMBIEN LLAMADO ENTIDAD INTERELACION.


Vamos a indicar una serie de guías para crear un diagrama E/R.

1.       Primero y no poco importante es leer varias veces el problema hasta tener una idea global. 
2.       Obtener una lista inicial de candidatos a entidades, relaciones y atributos.

Se realiza siguiendo los sgtes consejos:

    • Identificar las entidades suelen ser aquellos nombres comunes que son importantes para el desarrollo del problema: Eje, empleado – vehículo – pintor.
    • No hay que obsesionarse, en los primeros pasos por distinguir las entidades fuertes de las débiles.
    • Si es trivial, se toma nota de aquellas que parezcan claramente entidades débiles. De lo contrario se apuntan como entidades sin especificar si son fuertes o débiles.
    • Extraer los atributos de cada entidad, identificando aquellos que puedan ser clave. Se suelen distinguir por ser adjetivos asociados a un nombre común (que ha sido seleccionado como una entidad). Ejem. Color que es un adjetivo, puede ir asociado a la entidad vehículo.
    • Además se puede establecer el tipo de atributo seleccionando si es opcional, obligatorio, multivaluado, compuesto o derivado. Si es compuesto se indica su composición, si es derivado, se indica como se calcula.

  • Es bastante útil apuntar sinónimos, utilizados para el atributo, para eliminar redundancias.

    • Identificar los atributos de cada relación. Se suelen distinguir al igual que los de la entidad por ser adjetivos, teniendo en cuenta que para que sean de una relación solo deben ser aplicables a la relación y no a ninguna de las entidades relacionadas.

    • Es posible que los nombres comunes contengan muy poca información. Y no sea posible incluirlos como entidades. En este caso se pueden seleccionar como atributos de otra entidad que ya teníamos. Eje. El autor de un libro puede ser una entidad, pero solo si se dispone del nombre del autor, no tiene sentido incluirlo como una entidad con un solo atributo. Pondríamos como atributo el autor a la entidad LIBRO.

 
MODELO ENTIDAD RELACIÓN AMPLIADA

El modelo entidad relación extendido o ampliado incorpora, todos los elementos del modelo E/R, incluyendo además los conceptos de subclase, súper clase, junto a los conceptos de especialización y generalización:

  • Generalización y especialización: una entidad E, es una generalización de un grupo de entidades (E1, E2, En, ) si cada ocurrencia de cada una de estas entidades, es también una ocurrencia de E.




Todas las propiedades de la entidad genérica E, son heredadas por las sub-entidades.

Las sub-entidades son especializaciones de las entidad general, se puede decir que las sub-entidades o subclases tienen una relación del tipo “ES UN”, con la entidad padre o superclase.

La relación de generalización, se representa mediante un triangulo isósceles, pegado por la base a la entidad superclase.

En el ejemplo anterior Empleado, es la súper clase y los directivos, comerciales y técnicos son las subclases.

En la relación se adjunta, un atributo que indica como debe interpretarse la relación de la superclase con las subclases

TIPOS DE ESPECIALIZACIÓN




Se puede agregar mas semántica al diagrama E/R extendido combinando los sgtes tipos de especialización:

  • Especialización exclusiva: Se representa:


En este caso cada una de las ocurrencias de la superclase solo puede materializarse en una de las especializaciones; ejemplo, si un empleado es directivo, no puede ser un técnico o un comercial.

  • Especialización Inclusiva: Se produce cuando las ocurrencias de las superclase pueden materializarse a la vez en varias ocurrencias de las subclases. En este caso el empleado directivo, podría ser Tb. técnico y comercial. Se representa sin el arco




  • Especialización Total: Se produce cuando la entidad superclase tiene que materializarse obligatoriamente en una de las especializaciones, se representa así: añadiendo un circulo en la base del triangulo.  




  • Especialización parcial: La entidad superclase no tiene por que materializarse en una de las especializaciones (es opcional).

LAS ENTIDADES DEBILES


Dependen de una entidad fuerte mediante una relación, la relación que une ambas entidades también es débil, puesto que también desaparece si desaparece la entidad fuerte.

En estos casos la relación puede ser de dos tipos:

1-   Dependencia de existencia: Este tipo de dependencia expresa que las ocurrencias de una entidad débil, no tienen ningún sentido en la BBDD sin la presencia de las concurrencias de la entidad fuerte con a que están relacionadas.
  • Las transacciones que se dan en una CCC no tiene sentido si la CCC no esta activa las transacciones desaparecen.


Transacciones con dependencia de existencia, E

2-   Dependencia de Identificación: Este tipo se produce cuando además de la dependencia de existencia, la entidad débil, necesita a la fuerte para poder crear una clave, de tal manera que pueda completar la identificación de sus ocurrencias.
Una empresa que crea aplicaciones software:
a)  la compañía se identifica por su nombre “Microsoft”.
b)  Las aplicaciones se identifican por su nombre comercial “ Office”
c)   Cada compañía de software pone un nombre a cada una de sus aplicaciones.
            

Ejemplo de entidad débil con dependencia de IDENTIFICACION (I)

Ejercicio: Decir que tipo de relación de Dependencia tienen las siguientes entidades:
1-  Un Toto (Entidad Débil) Pertenece a una ganadería (Entidad fuerte). Al toro se le identifica por un número y el nombre de su ganadería, puesto que puede haber varios toros con el mismo número pero pertenecientes a distintas ganaderías.

                             
2-  En el acceso al parking de una empresa un empleado (entidad fuerte) tiene un vehiculo ( entidad débil)

                 
Ejercicio:
Se desea realizar el diagrama entidad relación (ER) correspondiente al sgte enunciado:

1- Supongamos el bibliobús que llega a un pueblo que proporciona un servicio de prestamos de libros a los socios del pueblo, los libros están clasificados por temas.
Un tema puede contener varios libros. Un libro es prestado a muchos socios.  En el préstamo de libros es importante saber, la fecha de préstamo y la fecha de devolución, de los libros nos interesa saber el titulo, el autor y el número de ejemplares y del tema nos interesa la descripción del tema.
Poner entidades, relación, atributos, participación de cada una de las entidades en la relación y el grado de la relación.



2- Suponemos el sgte anunciado sobre municipios, viviendas y personas. Cada persona (dni, nombre, dirección) solo puede habitar en una vivienda (código de vivienda-descripción), y estar empadronada en un municipio (Código municipio – provincia) pero puede ser propietarias de varias viviendas.



3- Se desea enseñar una BBDD, sobre la información de las reservas de una empresa dedicada al alquiler de automóviles, teniendo en cuenta que:
-Un determinado cliente puede tener en un momento dado hechas varias reservas (código reserva – descripción).
-De cada Cliente se desea almacenar su DNI, nombre, dirección y teléfono.
-Además, dos clientes se diferencian por un Código único.
-Cada cliente puede ser avalado por otro cliente de la empresa.
-Una reserva la realiza un único cliente pero puede involucrar a varios coches en una única reserva.
-Es importante registrar el precio de alquiler de cada uno de los coches y el precio total de la reserva.
-No se mantiene los datos de reservas anteriores.
-Todo coche tiene siempre asignado un determinado garaje (código de garaje) que no puede cambiar.
-De cada coche se requiere la matricula, el modelo, el color y la marca.

 4- El ministerio de educación y ciencia desea mantener información acerca de los cuadros que se encuentran en las pinacotecas Españolas y toda la info. Relacionada con ellos.
De cada Pinacoteca se desea saber el nombre (se supone único, la ciudad en la que se encuentra, la dirección y los metros cuadrados que tiene)
Cada pinacoteca tiene una serie de cuadros de los que se quiere saber (código, nombre, medidas fecha en que fue pintado y técnica utilizada para pintarlo).
Cada cuadro es pintado por un único pintor (nombre, país, ciudad, fecha nacimiento, fecha fallecimiento).
Un pintor puede tener a otro como maestro, a su vez, un maestro puede serlo de varios o de ninguno.
Los pintores pueden pertenecer o no a una escuela de pintura de la que se desea saber su nombre y en que país y fecha apareció.
Los pintores puedes tener también uno o varios mecenas, también queremos controlar la fecha en que se inicia y termina el mecenazgo.
A su vez un mismo mecenas puede serlo de varios pintores.
Elipse: paisElipse: ciudadElipse: Cod_pimElipse: nombreElipse: nombrElipse: paisElipse: Cod_es

CARDINALIDAD DE LAS RELACCIONES REFLEXIVAS


En las relaciones reflexivas la misma entidad juega 2 papeles distintos en la relación.
Para calcular su cardinalidad hay que extraer las participaciones según los 2 roles existentes.
Ejemplo: En la relación reflexiva “es jefe”, la entidad empleados aparece con 2 roles. El primer rol es empleado como jefe y el segundo rol es el empleado como el subordinado. Así se puede calcular las participaciones en la relación preguntando:

-          ¿Cuántos subordinados puede tener un jefe?(1,n)
-          ¿Cuántos jefes puede tener un subordinado?(0,1)

ATRIBUTOS Y DOMINIOS

Los atributos de una entidad, son las características o propiedades que la definen como identidad. Por ejemplo, para representar la entidad hotel son necesarias sus características, es decir el número de plazas disponibles, su dirección, ciudad, categoría. Se representa mediante elipses conectadas directamente a la entidad.

ATRIBUTO CLAVE
El atributo que aparece subrayado se le denomina clave, y designa un atributo que no puede repetir ninguna ocurrencia de la entidad. Se dice que este atributo identifica inequívocamente a una entidad. Todas las entidades fuertes deben tener al menos un atributo clave. Tengas en cuenta que una entidad pueda formar la clave mediante varios atributos, en este caso, se dice que la clave de la entidad es una clave compuesta. Si la clave esta formada por un único atributo se dice que es atómica.
Ejemplo: Para identificar de forma única una oferta de trabajo, se necesitaría el nombre del puesto y el nombre de la empresa que lo oferta.



ATRIBUTOS DE RELACIÓN
Un atributo de relación es aquel que es propio de una relación y que no puede ser cedido a las entidades que intervienen en la relación.

Ejemplo: Un mecánico repara un vehículo, la reparación se realiza en una determinada fecha
DOMINIOS. Cada uno de los atributos que tiene una entidad, pertenece a un dominio. El dominio representa la naturaleza del dato, es decir, si es un número entero, una cadena de caracteres o un número real.

Numero entero, no tiene parte decimal. 1 – 2 – 3 – 4 -1500
Numero Real, Incluye enteros y decimales, positivos y negativos.: 28.3, 5, -250.36.
Cadena de caracteres: Combinación de letras y/o Números.
Numero de teléfono, es una cadena de caracteres por la naturaleza del dato, no operamos con el.
Incluso naturaleza más compleja como una fecha, o una hora.
Por ejemplo los siguientes atributos de la entidad empleado pertenecen a los sgtes dominios:

ATRIBUTO
DOMINIO
LONGITUD
DNI
Cadena de caracteres
10
NOMBRE
Cadena de caracteres
50
FECHA_NACIMIENTO
Fecha

DIRECCION
Cadena de caracteres
100
SUELDO
Numero Real

NUMERO DE HIJOS
Numero Entero

DEPARTAMENTO
Cadena de caracteres/ Tipo especial según opciones de departamentos.(rrhh,admin.,contabilidad-informática)


Si un dominio se especifica mediante el tipo de datos como en el caso del DNI, Nombre o Fecha de Nacimiento, se dice que se define por INTENSIÓN.

Si se especifica mediante un conjunto de valores, como en el dominio departamentos, que puede tener los valores:
RRHH, Administración, Informática, o Contabilidad. La definición del Dominio es por EXTENSION.

TIPOS DE ATRIBUTOS
Se pueden clasificar los atributos según las sgtes restricciones:

1-Atributos obligatorios / opcionales;
Atributo Obligatorio, Es un atributo que debe tomar un valor obligatoriamente, no quiere decir que se ponga o no en la BD, significa que el valor nunca puede estar vacío.
Atributo Opciones; Puede no tomar un valor por que se ha desconocido en un momento determinado. En este caso el atributo tiene un valor nulo.

2-Atributos Compuestos / Simples o Atómicos:
Atributos Compuestos, Es aquel que puede descomponerse en atributos mas sencillos, por ejemplo hora-de-salida, se puede descomponer en 2, horas y minutos.

3-Atributos univaluados / Atributos Multivaluados:
Atributos Univaluados; El atributo toma un único valor: Edad, nombre.
Atributos Multivaluados: Pueden tomar varios valores: Teléfono, Autor de un libro.

4-Atributos derivados
Son aquellos cuyo valor se puede calcular através de otros atributos, ejemplo: el atributo de Edad, se puede calcular apartir de la fecha de nacimiento de una persona.
Para distinguir si es simple, compuesto univaluado, se representa según la siguiente tabla:


Compuesto Elipse doble, se especifican los atributos a continuación.
Multivaluado, Elipse Doble
Opcional la línea es discontinua
Derivado, el trazo de la elipse es discontinuo.
Esta Notación no es totalmente estandar.

Justifica que tipo de atributos son los sgtes atributos de la entidad persona

·                   Fecha de nacimiento (24/11/1976)                Atomico 
·                   Lugar de Nacimiento ( Zaragoza)                 univaluado
·                   Edad (34)                                                      derivado -univaluado
·                   Es mayor de edad ( si )                                 derivado
·                   DNI ( 55582739-A                                        univaluado
·                   TELEFONOS ( 925884721, 657662531)     multivaluado
·                    APELLIDOS (garca perez)                          compuesto