You are on page 1of 21

Modelo Entidad Relacin (E/R)

1) Breve Resumen de la Unidad

El diseo conceptual es el proceso por el cual se construye un modelo de la informacin que se utiliza en una empresa u organizacin, el objetivo ms esencial de la fase de requerimientos es crear un modelo de los datos del usuario. Tal modelo identifica las cosas que se van a almacenar en la base de datos y define sus estructuras y las relaciones, es el modelo entidad relacin uno de los modelos mas conocidos, simples y claros donde se puede expresar grficamente toda la estructura de la base de datos.

MODELO ENTIDAD RELACIN

Tema 1: Definicin: Es la percepcin del mundo real. Coleccin de objetos bsicos

llamados entidades y relaciones. El modelo contiene ciertas restricciones a la que debe de ajustarse los datos. Lo que hace al modelo entidad relacin universal es que no est enfocado al diseo de un modelo de bases de datos particular. Se emplea para interpretar, especificar y documentar los requerimientos para un sistema de bases de datos ya que proporciona estructuras que muestran el diseo general de los requerimientos de datos de los usuarios. El modelo debe estar compuesto por:

Entidades Atributos Relaciones Cardinalidad Claves

Tema 2: Ventajas del modelo entidad relacin


Constituye la base del modelo conceptual de datos. Es el modelo semntico mas popular encontrado en los libros.. Proporciona estructuras que muestran el diseo general de los requerimientos de datos de los usuarios. Va de lo particular a lo general Es muy flexible esta enfocado al diseo de muchas situaciones.

Tema 3: PASOS PARA CONSTRUIR EL MODELO ENTIDAD RELACIN 1. 2. 3. 4. 5. 6. Identificacin de entidades. Identificacin de relaciones. Elaborar el modelo. Identificar atributos. Refinar modelo. Pasar el modelo entidad relacin a un modelo implementable (modelo relacional).

PRIMER PASO: RECONOCER ENTIDADES Es toda cosa u objeto significativo (real imaginario) del cual se requiere conocer almacenar informacin. REPRESENTACIN DE ENTIDADES Toda entidad se representa por medio de un rectngulo con el nombre de la entidad dentro del rectngulo en maysculas. Ejemplo

AUTO

COMO IDENTIFICAR LAS ENTIDADES Es el paso central del proceso de modelo entidad relacin. Los diversos tipos de entidades son: PERSONAS: Jurdicas o naturales como: cliente, alumno, vendedor, profesor, empleado etc. OBJETOS: Tangibles y no tangibles como: artculo, cuenta etc. LUGARES: Bodega, ciudad, aula. TRANSACCIONES: Compra, venta, evaluacin. CONCEPTOS O ABSTRACCIONES: Tipo crdito, Tipo servicio, Tipo cliente etc. Toda persona realiza una transaccin y que la accin de esta recae siempre sobre un objeto dado. Todas las personas y los objetos residen y se almacenan en un lugar

SEGUNDO PASO: RELACIONES O REGLAS Relacin: Es una asociacin nmbrale, significativa y estable entre dos entidades. Ejemplo Se tienen dos entidades estudiante, clase. La relacin entre estudiante y clase es: Cada estudiante debe tener una ms clases y cada clase debe de estar compuesta por uno ms estudiantes.

ESTUDIANTE

CLASE

REPRESENTACIN DE LAS RELACIONES O REGLAS Toda relacin tiene dos extremos y para cada uno de los cuales existen: 1. Una leyenda: generalmente es un verbo. 2. Un grado de cardinalidad 1:1 uno a uno. -----------------------------

Ejemplo tomado de: http://labredes.itcolima.edu.mx/fundamentosbd/sd_u2_2.htm Fecha Septiembre 27 de 2008 hora: 10 pm

1:N uno a muchos.

-----------------------------<

Tomado de http://labredes.itcolima.edu.mx/fundamentosbd/sd_u2_2.htm Fecha Septiembre 27 de 2008 hora: 10 pm N:M muchos a muchos. >----------------------------<

Ejemplo tomado de: http://labredes.itcolima.edu.mx/fundamentosbd/sd_u2_2.htm Fecha Septiembre 27 de 2008 hora: 10 pm

Cardinalidad o multiplicidad de las relaciones

Imagen tomada de: http://gemini.udistrital.edu.co/comunidad/profesores/rfranco/modelo_er.htm Fecha agosto 14 de 2008 hora: 10 pm

3. Una condicin opcional mandatoria Mandatoria: Se representa con lnea continua y se utiliza la palabra debe. _________________________ toma desde 1, 2, .., N Opcional: Se representa con lnea discontinua y se utiliza la palabra puede. ------------------------------------------ Toma desde 0, 1, 2,..,N

Condicin debe

ESTUDIANTE

CLUB

Condicin puede

Al hacer la unin de estas dos partes de l a relacin queda: Debe puede

ESTUDIANTE
Inscribirse tener

CLUB

La relacin regla se escribe de la siguiente forma: Cada estudiante debe inscribirse en uno ms club Y cada club puede tener uno ms estudiantes.

Imagen tomada de: http://gemini.udistrital.edu.co/comunidad/profesores/rfranco/modelo_er.htm Fecha agosto 14 de 2008 hora: 10 pm RELACIONES RECURSIVAS Es una jerarqua definida sobre una misma entidad. Para este tipo de relaciones tambin se tiene en cuenta las reglas anteriores como: La leyenda, la cardinalidad y la condicin. RECOMENDAR

CLIENTE

RECOMENDADO

La regla relacin se escribe: Cada cliente puede recomendar uno y solo un cliente y cada cliente puede ser recomendado por uno y solo un cliente. TERCER PASO: ELABORAR EL MODELO Para elaborar el modelo entidad relacin se tienen en cuenta las entidades que tengo relacionadas sin repetir entidades. Ejemplos:

Compuesta

pertenece

LINEA

ESTACION

Tener Pertenecer

Tener pertenecer

TREN

ACCESO

Imagen tomada de: http://gemini.udistrital.edu.co/comunidad/profesores/rfranco/modelo_er.htm Fecha agosto 14 de 2008 hora: 10 pm CUARTO PASO: RECONOCER ATRIBUTOS Cualquier detalle que sirve para identificar, describir, cualificar, clasificar expresar el estado de una entidad. Un atributo puede ser: Texto, nmero, figuras sonidos. TIPOS DE ATRIBUTOS Atributos clave primaria: Toda entidad debe ser identificada con unicidad mediante uno de sus atributos una combinacin de los mismos, denominado clave primaria identificador nico. As todos los atributos de una entidad deben depender nicamente del valor de la clave primaria. Su representacin para el modelo entidad relacin se hace colocando el smbolo # antepuesto al nombre del atributo. Ejemplo

AUTO #placa

Atributos mandatarios u obligatorios: Cuando el valor de un atributo debe ser siempre conocido, este se representa mediante un smbolo * antepuesto al nombre del atributo. Ejemplo

AUTO #placa *marca


Atributos opcionales: Son aquellos que pueden ser desconocidos, estos se representan por punto antepuesto al nombre del atributo. Ejemplo

AUTO #placa *marca .capacidad

REGLAS PARA LA IDENTIFICACIN DE ATRIBUTOS Durante este proceso es posible identificar nuevas entidades y relaciones ocultas en el modelo. 1. Toda entidad debe tener un identificador nico clave primaria en caso de que no la tenga puede asignar una. 2. Un atributo debe escribirse siempre en singular y en minscula, un nombre de atributo en plural coincide con el problema de repeticin esta repeticin de atributos puede revelar la existencia de entidades faltantes en le modelo. Ejemplo:

CLIENTE #cedula *nombre *TelfonoS

Aqu podemos ver que un cliente puede tener varios telfonos lo que me est indicando la presencia de una nueva entidad llamada telfono. Ejemplo:

Pertenecer

tener

TELEFONO

CLIENTE

3. Un atributo se transforma en una entidad cuando tiene significado completo en s mismo, con relaciones y atributos propios.

MATERIA #codigo *nombre *area


Podemos observar que rea que es un atributo y este tambin tiene atributos propios como nmero del rea y nombre del rea y se pude relacionar con la materia.

Pertenecer

tener

MATERIA #codigo *nombre

AREA #Cod_area *nombre_area

4. Toda entidad debe tener al menos dos atributos una clave primaria y un descriptor. Las nicas entidades que pueden tener solo la clave primaria son las entidades de interseccin que tienen clave primaria compuesta por dos atributos.

AUTO_EMPLEA #placa #cedula

COMO IDENTIFICAR CLAVES: 1. Clave candidatas: es un grupo de atributos que identifican de forma nica un registro en una tabla.

10

2. Clave primaria: Es una de las claves candidatas que se selecciona para que sea clave primaria. 3. Clave secundaria alterna: Es la clave que queda despus de escoger la clave primaria. 4. Clave compuesta: Es una clave con ms de un atributo, es el caso de las entidades de interseccin. 5. Clave sustituta: Es una columna de valores nicos que puede mantener una aplicacin el DBMS. 6. Clave Ajena: Es un atributo que es una clave primaria en una entidad y que esta en otras entidades fuera de aquella a donde pertenece, estas clave son muy importantes ya que por medio de estas hace la relacin el modelo relacional. QUINTO PASO: REFINAR MODELO Para refinar el modelo entidad relacin: 1. Se destruye toda relacin N:M que tenga el modelo para que quede 1:N. COMO ELIMINAR LAS RELACIONES DE N:M Se crea una nueva entidad que intersecta a las entidades participantes y donde el identificador nico (clave primaria) se forma mediante la combinacin de las claves primarias de dichas entidades.

Ejemplo: Debe puede

ESTUDIANTE

CLUB

Inscribirse

tener

Esta es la relacin que debo eliminar para que queden relaciones 1:N. Debe puede

Inscribirse

tener

11

La relacin queda de la siguiente manera:

ESTUDIANTE #cedula *nombre EST_CLUB #cedula #num_club *horario

CLUB #num_club nom_club

Las entidades estudiante y club son las entidades participantes y la entidad est_club es la entidad de interseccin entidad dbil y toda la relacin se llama relacin de dependencia. La entidad de interseccin puede tener nicamente la clave primaria como se dijo en el reconocimiento de claves y en caso de colocarle otros atributos hay que tener en cuenta que este dependa de los dos atributos que forman la clave primaria. Ejemplo: Un atributo para la entidad EST_CLUB seria el horario en que un estudiante est inscrito en un club. 2. Reglas para ubicar la clave forneas: 1. si la relacin es de 1: 1 cualquiera de las dos entidades le pasa la clave primaria a la otra 2. si la relacin es de 1: N: la entidad lado 1 le pasa la clave primaria al lado N 3. Otros puntos importantes para tener en cuenta al momento de refinar el modelo Revisar para ver que hace falta que es redundante en el modelo de acuerdo a las condiciones o requerimientos que se pidieron.

Tema 4: Otros conceptos para el modelo entidad relacin

12

SUPERCLASES Y SUBCLASES DE ENTIDADES En el modelo entidad relacin, una entidad agrupa un conjunto de ocurrencias de entidad del mismo tipo. En muchos casos, estas ocurrencias se pueden agrupar a su vez en otros subconjuntos que tienen un significado propio para los propsitos de la Base de Datos y, por tanto, deberan representarse de forma explcita. Por ejemplo, la entidad EMPLEADO puede a su vez subdividirse en SECRETARIA, INGENIERO, JEFE, TCNICO, ASALARIADO, SUBCONTRATADO, etc. El conjunto de ocurrencias de entidad en cada una de estas entidades ser un subconjunto de las ocurrencias de entidad de EMPLEADO, ya que por ejemplo, un ingeniero tambin es un empleado. Llamaremos a cada uno de estos subconjuntos Subclases de la entidad EMPLEADO y a EMPLEADO una Superclase de cada uno de estos subconjuntos.1 Llamaremos a la relacin existente entre las Superclases y las Subclases como relacin Clase/Subclase. En el ejemplo anterior, EMPLEADO/SECRETARIA y EMPLEADO/TCNICO son dos relaciones Clase/Subclase. Hay que tener en cuenta que una ocurrencia de una Subclase representa el mismo objeto real que alguna correspondiente a su Superclase, por ejemplo la SECRETARIA "Concha Leco" ser tambin la EMPLEADO "Concha Leco". Por tanto, la ocurrencia de Subclase es la misma que en la Superclase pero con un rol especfico. Una ocurrencia de Subclase no tienen sentido si no es a su vez ocurrencia de Superclase. Por otro lado, una ocurrencia de superclase puede ser a su vez ocurrencia de varias subclases o de ninguna. Por ejemplo, "Roberto Mate" como ocurrencia de EMPLEADO puede a su vez pertenecer a subclases INGENIERO y ASALARIADO.2

HERENCIA DE ATRIBUTOS EN LA RELACIN CLASE/SUBCLASE. Debido a que una subclase es a su vez parte se una superclase, la subclase tendr sus atributos especficos as como los atributos correspondientes a la superclase a la que pertenece. Esto quiere decir que la ocurrencia de entidad de una subclase hereda los atributos correspondientes a la superclase a la que pertenece. De la misma manera hereda las relaciones en las que su correspondiente superclase participa.3 ESPECIALIZACIN. El proceso por el que se definen las diferentes subclases de una superclase se conoce como especializacin. El conjunto de subclases se define basndonos en caractersticas diferenciadores de las ocurrencias de entidad de la superclase. Por ejemplo, el conjunto se subclases {SECRETARIA, INGENIERO, TCNICO} es una especializacin de la superclase EMPLEADO mediante la distincin del tipo de trabajo en cada ocurrencia de entidad. Podemos tener varias especializaciones de una misma
1 2

http://www.galeon.com/konnan2001/ERE.htm . Ibd. 3 Ibd.

13

entidad basndonos en distintos criterios. Por ejemplo, otra especializacin de EMPLEADO podra dar lugar a las subclases ASALARIADO y SUBCONTRATADO, dependiendo del tipo de contrato.4 DIAGRAMAS ENTIDAD RELACIN

EMPLEADO #cedula *nombre

Ser un

Es un

SECRETARIA *velocidad

TECNICO *nivel

INGENIERO *tipo

Tema 5: Ejercicios resueltos de modelo entidad relacin 1. Deseamos disear una base de datos para una universidad, se dispone de la siguiente informacin: Los departamentos pueden estar en una sola facultad. Un profesor est siempre asignado a un slo departamento y adscrito a una o varias ctedras, pudiendo cambiar de ctedra pero no de departamento; interesa la fecha en que un profesor es adscrito a una ctedra. Tenga en cuenta que una ctedra puede ser asignada a varios profesores

Ibd., p. 18

14

DEPARTAMENTO #num_dpto *nombre_dep


tener asignado

estar

tener

FACULTAD #codigo *nombre

adscrito

PROFESOR #cedula *nombre

CATEDRAS #Num_catedr *nom_cat

adscripcin

PROF_CATED #Cedula #Num_catedra

2. Se desea disear una base de datos que contenga informacin relativa a las carreteras de determinado pas. Se pide realizar el diseo en el modelo E/R, sabiendo que: En dicho pas las carreteras se encuentran dividas en tramos. Un tramo siempre pertenece a una nica carretera y no puede cambiar de carretera. Un tramo puede pasar por varios trminos municipales, siendo de inters el kilmetro del tramo por el que entra en dicho trmino municipal y el kilmetro por el que sale. Existen una serie de reas en las que se agrupan los tramos y cada uno de ellos no puede pertenecer a ms de un rea.

AREA #num_area *nom_area

tener pertenece

tener

CARRETERA #numero *nombre

TRAMO #num_tramo *nom_tramo

pertenece

TRAMO_TERMINO #num_tramo #num_termino *kilometro_e 15 *kilometro_s

TERMINO_MUNICIPAL #num_termino *nom_municipio

3. Se desea disear una base de datos sobre la informacin de las reservas de una empresa dedicada al alquiler de automviles. Se dispone de la siguiente informacin: Un determinado cliente puede tener en un momento dado varias reservas. Una reserva la realiza un nico cliente, pero puede involucrar a varios coches. Es importante registrar la fecha de comienzo de la reserva y la de terminacin. Todo coche tiene siempre asignado un determinado garaje, que no puede cambiar. Cada reserva se realiza en una determinada agencia. En la base de datos pueden existir clientes que no hayan hecho ninguna reserva.

Hacer

ser

AGENCIA #num_ag *nombre

RESERVA #num_reser *inicio_r *fin_r *cedula *num_ag

Realizar

CLIENTE #cedula *nombre GARAJE #num_g *capacid *placa


Contiene estar

RESE_AUTO #num_res #placa

AUTO #placa *modelo *marca *color 16

4. Video club En una tienda de video se necesita mantener informacin de alrededor de 3000 casetas cada uno de los casetes tiene asignado un nmero por cada `pelcula se necesita conocer un titulo y categora por ejemplo: comedia, suspenso, drama, accin, ciencia ficcin, etc. Se mantienen algunas copias de muchas pelculas. Se le da a cada pelcula una identificacin y se mantiene seguimiento de lo que contiene cada casete. Un casete puede venir en varios formatos y una pelcula es grabada en un solo casete; frecuentemente las pelculas son pedidas de acuerdo a un actor especifico Tom Cruise y Demi More son los ms populares es por esto que se debe mantener informacin de los actores que pertenecen a cada pelcula. No en todas las pelculas actan artistas famosos, a los clientes de la tienda le gusta conocer datos como el nombre real del actor, y su fecha de nacimiento. En la tienda se mantienen informacin solo d los actores que aparecen en las pelculas y que se tiene a disposicin. Solo se alquila videos a aquellos que pertenecen al club de videos. Para pertenecer al club se debe tener un buen crdito. Por cada miembro del club se mantiene una ficha con su nombre, telfono y direccin, cada miembro del club tiene asignado un nmero de membresa. Se desea mantener informacin de todos los casetes que un cliente alquila, cuando un cliente alquila un casete se debera conocer e nombre de la pelcula, la fecha en la que se alquila y la fecha de devolucin. ENTIDAD CLIENTE PELCULAS TIPO_PEL ACTORES CASETE

17

ALQUILER

Ejemplo tomado de:

http://www.monografias.com/trabajos34/base-de-datos/base-de-datos.shtml
Fecha Septiembre 27 de 2008 hora: 10 pm

5. Un modelo ER de Propietarios de Taxis Conductores y Empresas Un TAXI cuantos PROPIETARIOS tiene? R/ uno (El uno se pone en PROPIETARIOS) Un PROPIETARIO cuantos TAXIS tiene? R/ Varios (La N se pone en TAXIS) Un TAXI cuantos CONDUCTORES tiene? R/ Uno (el 1 se pone en CONDUCTORES) Un CONDUCTOR Cuantos TAXIS maneja? R/ Uno (El Uno se pone En TAXIS) Un PROPIETARIO a cuantas EMPRESAS esta afiliado? R/ Varias (La N se pone en EMPRESAS) Una EMPRESA cuantos PROPIETARIOS tiene afiliados? R/ Varias (La N se pone en Propietarios)

18

Ejemplo tomado de:

http://www.calasanz-pereira.edu.co/prueba/html/modules/Access/normalizacion.htm
Fecha Septiembre 27 de 2008 hora: 10 pm

Nota: Este modelo no tiene destruidas las relaciones N:M. que hay entre cassette y
alquiler y la de actor pelcula.

Documento elaborado por Oralia corts Grajales apoyada en lasiguiente Bibliografia.

19

Bibliografia

Korth, Henry ; Siberschatz, Abram. Fundamentos de Bases de datos. Mc Graw Hill. Gary W,Hansen; James V,Hansen. Diseo y administracin de Bases de Datos. Prentice Hall, 1997. 834 p. Henry F. Korth, Abraham Silberschatz. Fundamentos de Bases de Datos. McGrawHill. Segunda Edicin. C.J Date. Addison-Wesley. Introduccin a los Sistemas de Bases de Datos. De Miguel, Adoracin; Piattini, Mario. Fundamentos y modelos de Bases de Datos. Rocha, Mario. Modelo entidad relacin. Documento Cibergrafa Universidad Distrital francisco Jos de Caldas. Modelo entidad Relacin. Obtenido en Internet el 22 de agosto de 2008. Hora: 10.05 pm. http://gemini.udistrital.edu.co/comunidad/profesores/rfranco/modelo_er.htm Introduccin a los Sistemas de Base de Datos. Obtenido en Internet el Fecha Septiembre 27 de 2008 hora: 10 pm http://www.temas-estudio.com/base-de-datos/ Universidad Calasanz de Pereira. Normalizacin. Obtenido en Internet el Fecha Septiembre 27 de 2008 hora: 10 pm http://www.calasanzpereira.edu.co/prueba/html/modules/Access/normalizacion.htm Introduccin a los Sistemas de Base de Datos. Obtenido en Internet el Fecha Septiembre 27 de 2008 hora: 10 pm http://www.monografias.com/trabajos34/base-de-datos/base-de-datos.shtml Instituto tecnolgico de Colima. Obtenido en Internet el Fecha Septiembre 27 de 2008 hora: 10 pm http://labredes.itcolima.edu.mx/fundamentosbd/sd_u2_2.htm Circuitos Electrnicos, practicas mas, Bases de datos y normas de Calidad. Obtenido en Internet el Fecha Septiembre 27 de 2008 hora: 10 pm http://www.galeon.com/konnan2001/ERE.htm

20

21