GESTIÓN DE BASES DE DATOS
UNIDAD 2:
MODELO ENTIDAD-RELACIÓN
1. MODELO E-R Extendido (o Ampliado)
Para presentar los siguientes conceptos vamos a partir de un ejemplo de entidad que se
encuentra en la mayoría de empresas: la entidad empleados. En la mayoría de empresas existen
distintos tipos de empleados, cuya descripción es difícil de recoger utilizando una misma entidad.
Por ejemplo en un centro de enseñanza nos podemos encontrar con profesores, personal de
administración, personal de limpieza y mantenimiento, etc. De los profesores, por ejemplo,
tendremos que recoger información que no se requiere para el resto de personal, como el número
de registro personal, la especialidad, el cuerpo al que pertenece, la fecha de alta en el cuerpo, etc.
PROFESOR
EMPLEADO ADMINISTRATIVO
MANTENIMIENTO
(Supertipo) (Subtipos)
Si recogemos a todo el personal en la misma entidad los que no sean profesores tendrían muchos
valores nulos en esos atributos innecesarios.
Por otra parte existen muchos atributos comunes a todo el personal como: apellidos, nombre, DNI,
dirección, fecha de contratación, etc.
Esto es lo que se pretende resolver empleando jerarquías de generalización.
Originalmente, el modelo E-R sólo incluía los conceptos de entidad, relación, dominio y atributo.
Más tarde, se añadieron otros conceptos, como los atributos compuestos y las jerarquías de
generalización, en lo que se ha denominado modelo entidad-relación extendido, o ampliado.
1.1 Generalización y Especialización
La generalización es una técnica de abstracción que permite extraer de un conjunto de entidades
una serie de atributos comunes y una serie de atributos específicos, de forma que los atributos
comunes describen el supertipo y los atributos específicos los subtipos.
Algunos autores llaman superclase al supertipo, y subclase al supertipo
La generalización es una técnica abajo-arriba, que da como resultado la identificación de un
supertipo generalizado a partir de las entidades originales. El supertipo se define basándose en
las características comunes de los subtipos.
La especialización es el proceso inverso a la generalización, consiste en una técnica de arriba-
abajo para definir un conjunto de supertipos y sus subtipos derivados. El conjunto de subtipos se
define basándose en algunas características distintivas de las entidades comprendidas en el
supertipo.
Una de las características más importantes de estas jerarquías es la herencia por la que los
subtipos heredan los atributos del supertipo.
Mercedes Garrido Lara. Curso 2012-2013 1
GESTIÓN DE BASES DE DATOS
Un subtipo puede tener atributos propios (específicos) y participar en relaciones por separado.
Un subtipo hereda todos los atributos del supertipo, y toda relación en la que participa el supertipo
Un subtipo, con sus atributos y relaciones específicos, más los atributos y relaciones que hereda
del supertipo, es un tipo de entidad por derecho propio.
Es decir estas jerarquías recogen la relación entre entidades del tipo padre-hijo o supertipo-
subtipo.
El supertipo es la entidad de mayor nivel y contiene los atributos comunes.
El subtipo es la entidad de menor nivel que contiene los atributos específicos.
1.1.1 Tipos de jerarquías
La generalización/especialización puede ser:
Total: cuando todas las ocurrencias del supertipo pertenecen a alguno de los subtipos.
En nuestro ejemplo es total si todos los empleados del centro son o profesores o administrativos
o de mantenimiento. Todos los tipos de empleado están incluidos en la clasificación.
Parcial: cuando puede haber ocurrencias en el supertipo que no pertenezcan a ninguno de los
subtipos.
Por ejemplo: Si en nuestro centro existen empleados que no sean ni profesores, ni
administrativos ni de mantenimiento.
Exclusiva: Cuando una ocurrencia del supertipo no puede estar a la vez incluida en más de un
subtipo.
Por ejemplo: que un profesor no puede ser a la vez administrativo o de mantenimiento y
viceversa.
Solapada: Cuando una ocurrencia del supertipo puede estar a la vez en varios subtipos.
Por ejemplo: Si un empleado puede ser a la vez administrativo y de mantenimiento.
Mercedes Garrido Lara. Curso 2012-2013 2
GESTIÓN DE BASES DE DATOS
Las cardinalidades de las jerarquías son:
• (1,1) en el supertipo
• (0,1) en los subtipos, para las exclusivas
• (1,1) o (0,1) en los subtipos, para las solapadas
Ejemplos de representación gráfica de los distintos tipos de jerarquía:
Aclaraciones sobre las dos ultimas relaciones (Total sin solapamiento y Total con solapamiento):
– Un Centro puede ser público o privado, pero no los dos a la vez, por eso la relación es
exclusiva (no hay solapamiento).
– Sin embargo una Empresa puede tener financiación pública, privada o ambas, por eso la
relación es con solapamiento.
Ejemplo más completo:
Mercedes Garrido Lara. Curso 2012-2013 3
GESTIÓN DE BASES DE DATOS
Actividad Propuesta
Queremos recoger la información correspondiente a las aulas de un instituto de secundaria con la
especialidad de informática:
De cada aula se quiere recoger la siguiente información: NºAula, Piso, Pasillo, Nº plazas. El
número de aula es único y distinto para todas ellas.
Cuando las aulas son salas de ordenadores necesitamos saber: nº de ordenadores, escáner y nº
de impresoras, así como otros equipamientos que pudieran instalarse.
Si se trata de laboratorios queremos saber el tipo (de ciencias, de idioma, etc.) y el equipamiento
que tiene.
Todas las aulas, sean comunes, laboratorios o salas de ordenadores, pueden tener o no proyector
y pizarra interactiva.
Existen otros tipos de aulas no recogidos en el modelo anterior como gimnasio, biblioteca, etc.
Cada aula se utiliza únicamente para las funciones que tiene asignadas (no se imparte una clase
normal en un laboratorio, etc.)
2. Representación gráfica del modelo Entidad-Relación
Hasta este punto hemos visto todos los conceptos necesarios para elaborar correctamente un
modelo E-R. Con esto podríamos llevar a cabo la primera fase de nuestro objetivo: obtener un
modelo conceptual flexible e independiente.
A continuación veremos que, con el paso del tiempo, se han ido desarrollando para este modelo
distintas simbologías con la intención de adaptarse a las herramientas de diseño basadas en la
utilización del ordenador, que paralelamente han ido surgiendo.
En el mercado podemos encontrar una gran variedad de herramientas, tanto de software libre
como propietario, que nos van a ayudar a diseñar este modelo, corregir los posibles errores y en
muchos casos nos facilitarán la generación del código (herramientas CASE).
El modelo de datos E-R, a pesar de tener algunas desventajas, como herramienta de modelado
cada vez está más extendida. De hecho los vendedores han agregado tantas extensiones a la
presentación básica que sigue siendo la herramienta de diseño de bases de datos más utilizada.
En los ejemplos vistos en esta la unidad hemos utilizado los símbolos del modelo Chen, sin
embargo se han desarrollado otros estilos que se adaptan mejor a las herramientas de modelado
de bases de datos basados en el ordenador.
Los más conocidos son:
- Diagrama entidad-relación de Chen: es el que hemos visto hasta ahora.
- Diagrama de pata de gallo
- Rein85
- IDEF1X
El modelo de Chen, está basado en los trabajos de Chen (modelo básico) y en las mejoras
incorporadas por Teorey, Yang y Fry (modelo ampliado). Ha sido el modelo en que se han
basados las herramientas CASE dominante desde finales de los 80. Aunque actualmente no sea
el modelo dominante como generador de modelos ER, todas las herramientas actuales tienen su
origen en él.
Mercedes Garrido Lara. Curso 2012-2013 4
GESTIÓN DE BASES DE DATOS
El modelo pata de gallo, desarrollado por Bachman, es una herramienta de modelado muy
extendida por usar una notación fácil de entender. Si en el modelo Chen utiliza la designación 1: N
para el tipo de correspondencia entre relaciones y (0,1), (1,1), (0,n), (1,n) para las cardinalidades,
el modelo pata de gallo reúne esta información en un solo símbolo. Sin embargo este modelo no
puede representar cardinalidades distintas de 0, 1 o n como sí puede hacerse en el modelo Chen
(por ejemplo (3,30): mínimo 3 y máximo 30 alumnos). Algunas herramientas comerciales que
utilizan este modelo evitan este problema añadiendo estas cardinalidades en el diagrama usando
texto y definiéndolas en el directorio de datos.
El modelo Rein85 fue desarrollado por Reiner en 1985. Basado en las mismas convenciones que
el de pata de gallo, sin embargo sus símbolos son diferentes. Este modelo no reconoce
cardinalidades, únicamente trata de conectividad. Su nivel de abstracción es mayor.
El modelo IDEF1X fue desarrollado a finales de los 70 por la fuerza aérea de EE.UU mediante el
programa ICAM (fabricación asistida por ordenador). Se trata de un programa que pretendía
aumentar la productividad de la fabricación aplicando tecnología informática. Se desarrollaron
unos estudios que obtuvieron métodos gráficos para definir funciones, estructuras de datos y
dinámicas de empresas de manufacturas. Se convirtió en una herramienta de modelado de datos
de manufactura en general, aunque utiliza menos símbolos que otros modelos y por tanto
proporciona menos detalles.
Actividad Resuelta
Ejemplo de representación de un diagrama entidad-relación utilizando los modelos anteriores
Un cliente puede tener muchos vehículos. Cada vehículo es de un cliente. La participación de la
entidad VEHICULOS es opcional. Puede haber clientes registrados que no tengan ningún
vehículo.
Mercedes Garrido Lara. Curso 2012-2013 5
GESTIÓN DE BASES DE DATOS
2.1 Herramientas para construir diagramas E/R
Actualmente hay muchas herramientas para construir diagramas E/R en el mercado.
ZONA DE DESCARGA.
• Software libre: Herramientas que puedan interpretar y generar modelos ER, SQL y hacer
análisis de base de datos MySQL son: Workbench y DBDesigner (código abierto).
http://dev.mysql.com/downloads/workbench/5.0.html
http://www.fabforce.net/dbdesigner4/index.php
Algunas herramientas de software libre se utilizan para generar únicamente el diagrama,
sin tener conocimiento de lo que significan, ni generan SQL. Como Kivio (incluida en la
suite KDE Koffice ) y Dia.
• Freeware: Una herramienta que puede generar la base de datos y la capa de código de la
aplicación es el Editor de RISE.
http://www.freedownloadmanager.org/es/downloads/Editor_RISE_55134_p/
• Software propietario: Algunos de los diagramas ER de propiedad son: herramientas
ARIS, dbForge Studio para MySQL, DeZign para bases de datos, ERwin, Oracle Designer,
Toad Data Modeler, Microsoft Visio.
http://www.quest.com/toad-data-modeler/
http://technet.microsoft.com/es-es/evalcenter/ee390821.aspx
Mercedes Garrido Lara. Curso 2012-2013 6