Está en la página 1de 14

Departamento de Lenguajes y Sistemas Informticos

E.T.S. Ingeniera Informtica. Universidad de Sevilla

Avda Reina Mercedes s/n. 41012 Sevilla


Tlf/Fax 954 557 139 E-mail lsi@lsi.us.es Web www.lsi.us.es

E.T.S. Ingeniera
Informtica

Diseo de bases de datos


Mdulo-I Tema 3

Modelo Entidad-Relacin Extendido (EE/R)

Sevilla, febrero 2007


V 2007.02.1

Pg. 1 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

Indice
1

INTRODUCCIN ......................................................................................... 3

ENTIDADES DBILES................................................................................ 3
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9

ENTIDAD DBIL EN EXISTENCIA .................................................................................. 3


ENTIDAD DBIL EN IDENTIFICACIN .......................................................................... 3
SUBCLASE/SUPERCLASE ............................................................................................... 4
DIAGRAMAS EE/R ....................................................................................................... 4
HERENCIA DE ATRIBUTOS ............................................................................................ 4
ESPECIALIZACIN ........................................................................................................ 4
GENERALIZACIN ........................................................................................................ 5
CARACTERIZACIN DE LA ESPECIFICACIN/GENERALIZACIN................................... 5
JERARQUA DE GENERALIZACIN/ESPECIALIZACIN .................................................. 7

AGREGACIN Y ASOCIACIN ................................................................. 8

MAPEO EE/R A RM/B ...............................................................................10


4.1
4.2

HEURSTICA DE MAPEO EE/R A RM/B .....................................................................10


COMPARACIN DEL MAPEO DE JERARQUAS ................................................................13

CASO: EJEMPLO EE/R Y MAPEO A RM/B ............................................14

Pg. 2 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

1 Introduccin
El modelo Entidad-Relacin extendido (EE/R) incluye los conceptos del modelo Entidad-Relacin
original (Peter Chen, 1976), e incorpora nuevos conceptos que permiten representar requerimientos
ms complejos.
Diversos autores (Batini, Markowitz, Shoshani, Teorey, Yang, Fry, ) incorporan extensiones semnticas
al modelo original. Se estudiarn en este captulo las caractersticas de las extensiones propuestas en
el modelo OOER de Navath-Pillalamarri, incluidas en la referencia bibliogrfica del programa
([ElMasri-Navath2004] Fundamentos de Bases de Datos: Elmasri-Navath, 4Edicin, 2004 Addison
Wesley).
Los modelos EE/R suelen restringir la asociacin de atributos a las interrelaciones, restringiendo
dicha asignacin slo a entidades y a nuevas primitivas semnticas.
Se estudiarn los conceptos de subclase/superclase para representar jerarquas de
generalizacin/especializacin, as como las primitivas semnticas agregacin y asociacin.

2 Entidades dbiles
2.1 Entidad dbil en existencia
Una entidad dbil se representa con un rectngulo con doble trazo.
a#

p#

ALMACN

Realiza

0:M
PEDIDO

Fig. 1. Entidad dbil en existencia


Toda entidad dbil (weak entity) es dbil en existencia. Ej.: en un almacn (a#) se realizan distintos
pedidos y un pedido queda identificado por el cdigo de pedido (p#). La entidad pedido es dbil en
existencia.

2.2 Entidad dbil en identificacin


Una entidad dbil en identificacin, adems, se representa con un rombo con doble trazo.
a#

Fecha

ALMACN

Realiza

Hora

0:M
PEDIDO

Fig. 2. Entidad dbil en identificacin


Toda entidad dbil en identificacin tambin lo es en existencia. La diferencia estriba en que los
atributos de la entidad dbil no son suficientes para identificarla.
Ej.: en un almacn (a#) se realizan distintos pedidos y un pedido queda identificado por (fecha,hora
y a#) puesto que en diferentes almacenes podran darse pedidos concurrentes en el tiempo.
Pg. 3 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

2.3 Subclase/superclase
En el modelo ER una entidad tipo representa un conjunto de entidades del mismo tipo; ej. la
entidad tipo TCNICO.
Un TCNICO puede ser por ej. ANALISTA, PROGRAMADOR, CONSULTOR, etc. Tienen en
comn que todos son TCNICOS pero tienen propiedades distintas (atributos) e interrelaciones
adicionales con otras entidades segn sean ANALISTA, PROGRAMADOR, CONSULTOR, etc.
Es decir una entidad tipo puede tener subagrupaciones de entidades que es importante representar.
Cada una de estas subagrupaciones (ANALISTA, PROGRAMADOR, CONSULTOR) es una
subclase de la entidad TCNICO. TCNICO es una superclase.
Una entidad de la subclase es la misma que la de la superclase pero con un papel especfico.
Toda ocurrencia de alguna subclase pertenece a la superclase y no al revs. Es decir todo
ANALISTA es un TCNICO y no todo TCNICO es ANALISTA.

2.4 Diagramas EE/R


TECNICO

NIF
Nombre

d
0:1
PROGRAMADOR

0:1
ANALISTA

0:1
CONSULTOR

Fig. 3. Subclases y superclases.

2.5 Herencia de atributos


Una entidad que es miembro de una subclase hereda todos los atributos de la superclase. Por tanto
la subclase posee sus atributos especficos ms los que hereda como miembro de la superclase.

2.6 Especializacin
Es el proceso de definir un conjunto de subclases a partir de una entidad tipo (superclase). As el
conjunto de subclases {ANALISTA, PROGRAMADOR, CONSULTOR} es una especializacin de
la superclase TCNICO.
Pueden existir varias especializaciones de una misma entidad tipo.
La especializacin permite

Asociar atributos especficos a cada subclase.

Establecer interrelaciones adicionales entre las subclases y otras entidades.


Pg. 4 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

2.7 Generalizacin
Es el proceso de abstraccin inverso a la especializacin.
Se suprimen las diferencias entre varios tipos de entidades y generalizamos sus caractersticas
comunes para formar una entidad superclase.
Ej. Tenemos las entidades COCHE y CAMIN.

COCHE

Matrcula

Matrcula
Precio

CAMIN

Vel-mx

Precio
N Ejes

Matrcula

VEHCULO

Precio
1

d
0:1
Vel-mx

0:1
COCHE

N Ejes

CAMIN

Fig. 4. Generalizacin a partir de las entidades COCHE y CAMIN.


Mediante un proceso de generalizacin obtenemos la entidad VEHCULO.
El proceso inverso consiste en ver COCHE y CAMIN como una especializacin de la superclase
VEHCULO.

2.8 Caracterizacin de la especificacin/generalizacin


Dependiendo de que las ocurrencias de alguna subclase puedan aparecer o no en ms de una
subclase podemos diferenciar entre:

Subclases disjuntas.
Subclases solapadas.

Cuando una ocurrencia de la superclase puede aparecer en ms de una subclase decimos que las
subclases son solapadas.
Se representa por la letra o (overlapping) :

Pg. 5 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

Cuando una ocurrencia de la superclase solo aparece en una nica subclase decimos que las
subclases son disjuntas.
d

Se representa por la letra d(disjoint) :

Atendiendo al nivel de recubrimiento de la poblacin (ejemplares/ocurrencias) de la superclase


respecto a la poblacin de las superclases pueden representarse dos tipos de jerarquas:

Jerarqua total
Jerarqua parcial

Cuando toda ocurrencia de la superclase aparece al menos en una subclase se dice que la jearqua
es total.
Se representa por:

Cuando en la superclase existen ocurrencias que no aparecen en ninguna de las subclases se dice
que la jearqua es parcial.
Se representa por:

Ej. Todas las piezas se compran o fabrican y una pieza puede ser comprada y fabricada
Cdigo

PIEZA

Precio

o
0:1
NLote

0:1
Proveedor

PIEZA_FABRICADA

PIEZA_COMPRADA

Precio

Fig. 5. Jerarqua total con solapamiento

Pg. 6 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

Existen dos razones principales que aconsejan la definicin de superclases y subclases:

Hay atributos que no pueden ser aplicables a todas las ocurrencias de la entidad. Por
ej. slo nos interesa saber los aos de experiencia de los consultores y no de los
analistas y programadores.
Algunas ocurrencias de la entidad tienen interrelaciones adicionales con otras
entidades. Por ej. slo los analistas dirigen proyectos (slo los analistas se
interrelacionan con los proyectos).

2.9 Jerarqua de generalizacin/especializacin


Es posible especificar subclases
generalizacin/especializacin:

de

una

subclase

formando

una

jerarqua

de

Nombre

PERSONA
1

o
0:1
Curso

0:1
Sueldo

ESTUDIANTE

EMPLEADO

0:1
Nhoras

ADMINISTRATIVO

0:1

PROFESOR

Fig 6. Jerarqua de especializacin


EMPLEADO es una subclase de PERSONA y es tambin una superclase de
{ADMINISTRATIVO, PROFESOR}. Esto implica la restriccin de que todo profesor ha de ser
un empleado.
Una subclase puede ser subclase en ms de un vnculo clase/subclase.
Ej. JEFE_PROYECTO es una subclase de CONSULTOR y de ASALARIADO. Por tanto para
ser JEFE_PROYECTO es necesario ser CONSULTOR y ASALARIADO.
JEFE_PROYECTO es una subclase compartida.

Pg. 7 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

NIF
Nombre

TCNICO
1

d
0:1

0:1

PROGRAM.

ANALISTA

0:1
Salario

CONSULTOR

Precio/hora

0:1
ASALARIADO

0:1
SUBCONTRATADO

0:N

Trabaja
JEFE_PROYECTO
1:1
EMPRESA

Fig. 7. Retcula de generalizacin/especializacin

3 Agregacin y Asociacin
La agregacin es un concepto de abstraccin para construir objetos compuestos a partir de sus
objetos componentes.
Permite combinar entidades entre las que existe una interrelacin y formar una entidad de ms alto
nivel. Es til cuando la entidad de ms alto nivel se tiene que interrelacionar con otra entidad
Ej. Un tcnico puede trabajar en varios proyectos y en un proyecto trabajan varios tcnicos.
Como consecuencia del trabajo de un tcnico en un proyecto puede publicar uno o varios
artculos.
Nif

Pr
0:N

TECNICO

0:N
PROYECTO

Trabaja

Ar

1
0:N
Publica

ARTICULO

Fig. 8. Agregacin.

Pg. 8 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

La abstraccin de asociacin permite asociar o vincular dos entidades independientes.


Una asociacin queda identificada por la identificacin de las entidades participantes.
Una diferencia entre asociacin y agregacin es que al eliminar la asociacin las entidades
participantes siguen existiendo. En la agregacin si se elimina la entidad agregada se eliminan
adems las entidades que la forman
La forma de representar la asociacin segn los autores [Elmasri/Navath2004] consiste en crear
una nueva entidad TRABAJA que depende en identificacin de TECNICO y PROYECTO.
Nif

Pr
0:N

TECNICO

0:M
PROYECTO

En

Ar

1
1

TRABAJA

Escribe

0:N

ARTICULO

Fig. 9. Representacin de la asociacin segn [Elmasri/Navath2004]


Autores como Rob P, Coronell C1 proponen la representacin de la asociacin como un nuevo tipo
de entidad denominada entidad compuesta, definiendo un smbolo que combina la representacin
de una entidad y una interrelacin (tiene el comportamiento de ambas). De este modo, una entidad
compuesta puede, a su vez, participar en otras interrelaciones en el modelo.

Nif

TECNICO

Pr

0:N

0:N

Trabaja

Escribe

PROYECTO

Ar
0:N

ARTICULO

Fig. 10. Representacin de una asociacin como entidad compuesta.


En adelante y en los ejercicios propuestos en la asignatura se utilizar esta notacin para la
asociacin o entidad compuesta.
1

Sistemas de Bases de Datos; Diseo, Implementacin y Administracin. Rob P,Coronell C, 2004 International
Thomson.

Pg. 9 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

4 Mapeo EE/R a RM/B


La generacin de gestores de bases de datos actuales estn todava basados en el modelo bsico
(RM/B) de Codd, aunque suelen incorporar algunas extensiones semnticas al mismo
(disparadores, encapsulacin de funciones, procedimientos, etc.).
En las fases de diseo tecnolgico es comn la utilizacin de gramticas (basadas en estndares
SQL o bien diseo propietario) que atienden a este modelo (RM/B); es por tanto necesario (en
casos en que la modelacin conceptual est basada en modelos EE/R) aplicar mtodos que
transformen la semntica de un modelo en otro. No debe olvidarse en estas transformaciones la
teora de la normalizacin (formas normales), aunque esta, en modelos complejos no suele ser
directamente aplicable (Mtodos de descomposicin o de sntesis). Suelen emplearse mtodos
heursticos que, a partir de un buen modelo de entidades, generan extensiones adecuadas; es decir:
extensiones o esquemas relacionales normalizados.
A continuacin se presente la heurstica propuesta por [Elmasri/Navath2004] y se justifica la
validez del mtodo o nivel de normalizacin.

4.1 Heurstica de mapeo EE/R a RM/B


Paso 1: Mapeo de entidades regulares
Caso 1a. Atributos monovaluados.
Dada una entidad A, con identificador Ia, y con las propiedades {a1, a2, .., an}, se genera una relacin
RA (Ia , a1, a2, .., an) PK(Ia).
Justificacin: Si todos los atributos ai son independientes entre s y monovaluados, entonces puede
asegurarse que las nicas dependencias son del tipo Ia ai; por lo que RA est en 3FN (ya que
Iaai: Ia es superclave).
Caso 1b. Atributos multivaluados.
Dada una entidad A, con identificador Ia, y con las propiedades multivaluadas {v1, v2, .., vn}, se
genera una relacin RAvi (Ia , vi) PK(Ia , vi) FK(Ia)/ RA.
Justificacin: Al no haber dependencias funcionales entre (Ia , vi), lo que puede asegurarse por el
axioma de reflexividad de rmstrong es (Ia , vi) (Ia , vi) por lo que RA est en 3FN (ya que
(Ia , vi) (Ia , vi): (Ia , vi) es superclave).

Pg. 10 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

Paso 2: Mapeo de entidades dbiles


Caso 2a. Dbil en existencia.
Dada una entidad W, dbil en existencia de la entidad A (anteriormente mapeada), con identificador
Iw, y con las propiedades {w1, w2, .., wn} se genera una relacin
RW (Iw,w1,w2,..,wn,Ia) PK(Iw) FK(Ia)/ RA.
Justificacin: Si todos los atributos wi son independientes entre s, se est en la misma situacin de
referencia de los casos 1a(monovaluados para entidades fuertes) y 1b(multivaluados), entonces
puede asegurarse que RW est en 3FN en cuanto a los atributos wi; como, por otro lado, tambin
puede asegurarse que Iw Ia,entonces RW est en 3FN (ya que Iw wi: y Iw Ia, y Iw es
superclave).
Caso 2b. Dbil en identificacin.
Dada una entidad W, dbil en identificacin de la entidad A (anteriormente mapeada), con
atributo(s) identificador(es) Iw necesarios para identificar una instancia de W, y con las propiedades
{w1, w2, .., wn} se genera una relacin RW (Iw,w1,w2,..,wn,Ia) PK(Ia, Iw,) FK(Ia)/ RA.
Justificacin: Si todos los atributos wi son independientes entre s y monovaluados, las nicas
dependencias son: wi: (Iw, Ia) wi , entonces RW est en 3FN ya que (Iw, Ia) es superclave.
Paso 3. Mapeo de interrelaciones 1:N
Si existe una interrelacin S(de cardinalidad 1:N) entre las entidades A y B anteriormente mapeadas
mediante relaciones RA (Ia , a1, a2, .., an) PK(Ia) y RB (Ib , b1, b2, .., bm) PK(Ib), de modo que a una
instancia de B corresponde como mximo una instancia de A, entonces puede ampliarse
(propagarse) el esquema de B, incluyendo el identificador Ia de RA en la relacin RB, quedando la
relacin RB (Ib , b1, b2, .., bm, Ia) PK(Ib) FK(Ia)/ RA.
Justificacin: En este caso, puede afirmarse que Ib Ia, luego RB sigue estando en 3FN.
Paso 4. Mapeo de asociaciones (agregaciones o interrelaciones M:N:P)
Si existe una asociacin(o una agregacin) S entre las entidades A,B,..X anteriormente mapeadas
mediante relaciones RA(Ia,a1,a2,..,an) PK(Ia), RB (Ib,b1,b2,..,bm) PK(Ib), RX (Ix,x1,x2,..,xp) PK(Ix) se
genera una relacin
RS(Ia, Ib,Ix) PK(Ia, Ib,Ix) FK1(Ia)/ RA, FK1(IB)/ RB, . FKx(Ix)/ Rx
Justificacin: Si la cardinalidad entre las entidades es mltiple (todas con todas tomadas de dos en
dos), entonces puede asegurarse por el axioma de reflexividad de rmstrong es (Ia, Ib,Ix) (Ia,
Ib,Ix), con lo que RS est en 3FN.
Caso 4a. S tiene propiedades adicionales (asociacin) {s1,s2,..,sr}; se aaden entonces los
atributos a la generacin mapeada, quedando el esquema
RS(Ia, Ib,Ix, s1,s2,..,sr) PK(Ia, Ib,Ix) FK1(Ia)/ RA, FK1(IB)/ RB, . FKx(Ix)/ Rx
Justificacin: Puede afirmarse que si: (Ia, Ib,Ix)si, quedando tambin RS en 3FN.
Pg. 11 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

Caso 4b. Alguna de las cardinalidades de S es simple (1).


Ej.: Si entre las entidades A,B,..X puede afirmarse que dada la pareja de instancias de (A,B),
identificadas por la tupla (Ia, Ib) y a esta pareja solo corresponde, como mximo, una instancia de X,
identificada por Ix, entonces existe la dependencia funcional (Ia, Ib)Ix, con lo que el esquema se ve
reducido (Ix desaparece de la clave primaria, pues est en las mismas condiciones de dependencia
que el resto de los atributos si) a:
RS(Ia, Ib,Ix, s1,s2,..,sr) PK(Ia, Ib) FK1(Ia)/ RA, FK1(IB)/ RB, . FKx(Ix)/ Rx
Justificacin: Puede afirmarse que si: (Ia, Ib) si y que (Ia, Ib) Ix, quedando tambin RS en 3FN.
Paso 5. Mapeo de jerarquas de generalizacin/especializacin
Sea la superclase P con propiedades {I,p1, p2, .., pm}siendo I el atributo identificador de P y sean los
subtipos { Si con propiedades {si1, si2, .., sir}}, entonces pueden plantearse cuatro alternativas de
mapeo:
Caso 5a. Se genera una relacin para la superclase Rp (I, p1, p2,.., pm) PK(I) y una relacin para
cada una de las subclases Ri (I, si1, si2,.., sir) PK(I) FK(I)/ Rp.
Justificacin: Para pm: I pm y para sir: I sir , por lo que Rp y Ri estn en 3FN.
Caso 5b. Se genera una relacin para cada Si aadiendo todos los atributos de la superclase:
Ri(I, si1, si2,.., sir, p1, p2, .., pm) PK(I).
Justificacin: sir: I sir , pm: I pm , por lo que Ri estn en 3FN.
Caso 5c. Se genera una nica relacin con los atributos de P y la unin de todos los atributos de
los Si, y aadiendo un atributo que defina el subtipo (categora o discriminante):
Rp (I, p1, p2,.., pm , discriminante , s11, s12,.., s1r , s21, s22,.., s2r , .., si1, si2,.., sir) PK(I)
Justificacin: I discriminante, pm: I pm , sir: I sir , por lo que Rp est en 3FN.
Caso 5d. Se genera una nica relacin con los atributos de P y la unin de todos los atributos de
los Si, y aadiendo un vector (vector_cat (cat1, cat2, ..,cati ) donde cati es un booleano que
determina si la instancia o ejemplar pertenece a la subclase ).
Rp (I, p1, p2,.., pm , cat1 , s11, s12,.., s1r , cat2 , s21, s22,.., s2r , .., cati , si1, si2,.., sir) PK(I)
Justificacin: cati: I cati , pm: I pm, sir: I sir , por lo que Rp est en 3FN.

Pg. 12 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

4.2 Comparacin del mapeo de jerarquas


Se presenta a continuacin un cuadro comparativo del comportamiento de las opciones de mapeo:

5a
5b

Comportamiento de la jerarqua
Relaciones
Nulos
creadas
Parcial
Total
Disjuntas Solapadas
Bueno
Bueno
Bueno
Bueno
Rp, {R1, R2,..,Ri } Bueno
Bueno
Bueno
Bueno
Redundancia
para
Se
pierde
una
{R1, R2,..,Ri }

5c

Rp

5d

Rp

Paso

entidad que no
pertenece
a
alguna de las
subclases
Discriminante is
null
para
ocurrencias
de
entidades que no
pertenecen
a
ninguna subclase

atributos
de
entidades
que
pertenecen
a
varias subclases

Bueno

Muchos
nulos (*)

Bueno

Muchos
nulos (*)

(*) Los pasos 5c y 5d son recomendables cuando hay pocas subclases y stas tiene pocos atributos.

Pg. 13 de 14

Diseo de Bases de Datos

Modelo EE/R
Sevilla, febrero/2007, V 2007.02.1

5 Caso: Ejemplo EE/R y mapeo a RM/B


A continuacin se presenta el EE/R de un modelo simplificado que recoge los vinos que elabora
cada bodega, su composicin por tipos de uva y clasificados en jvenes o de crianza. Cuando se
trate de vinos de crianza se registrar la calidad de las distintas aadas.
Bodega
BODEGA

DO
Telfonos

Elabora
Porcentaje

0:N

Vino

0:N

Grados

Uva

0:N

VINO

UVA

Compone
1

d
0:1

JOVEN

0:1

CRIANZA

Tiempo_
envejecimiento

Tiene
0:N

AADA

Ao
Calidad

El mapeo a RM/B quedara:


Relaciones
Bodegas (Bodega, DO)
Telfonos(Bodega, Telfono)
Vinos(Vino, Grados, Bodega,
Categora2, Tiempo_ envejecimiento)
Uvas(Uva)
Compone(Vino,Uva,Porcentaje)

PK
Bodega
(Bodega, Telfono)
Vino
Uva
(Vino,Uva)

Aadas (Vino, Ao, Calidad)

(Vino, Ao)

FK
Bodega/ Bodegas
Bodega/ Bodegas
Vino / Vinos
Uva/ Uvas
Vino/ Vinos

Para el mapeo de la jerarqua se ha optado por la opcin 5c ya que hay slo dos subclases y con
pocos atributos.
2

Categora toma los valores de los subtipos del vino, es decir joven o crianza para discriminar la pertenencia a un
tipo u otro.

Pg. 14 de 14

También podría gustarte