Está en la página 1de 50

Modelado de Bases de Datos

2. Modelo Entidad-Relacin
Objetivos:
Conocer los conceptos y notacin del modelo
conceptual de datos entidad-relacin extendido.
Comprender los significados del concepto de
nulo en el modelo entidad-relacin extendido.

Contenidos:
1. Introduccin e historia del modelo
2. Conceptos bsicos del modelo
3. Extensiones del modelo

Modelo Entidad-Relacin
Bibliografa
[EN 2002] Elmasri, R.; Navathe, S.B. Fundamentos de Sistemas
de Bases de Datos. 3 ed. Addison-Wesley, (Cap. 3 y 4)
[MPM 1999] De Miguel, A.; Piattini, M.; Marcos, E. Diseo de
bases de datos relacionales. Ra-Ma. (Cap. 2)
[CBS 1998]
Connolly, T.; Begg C.; Strachan, A. Database
Systems: A Practical Approach to Design, Implementation
and Management. 2nd ed. Addison-Wesley. (Cap. 5)
[SKS 1998] Silberschatz, A;Korth, H; Sudarshan, S. Fundamentos
de Bases de Datos. 3 edicin. Madrid: McGraw-Hill. (Cap. 2)

2.1. Introduccin e historia del modelo


Entidad-Relacin
Modelo de datos conceptual de alto nivel
Propuesto por Peter P. Chen en 1976
Extensiones/aportaciones de muchos otros autores
No existe un nico MER, sino una FAMILIA DE MODELOS

Describe el mundo real como un conjunto de


ENTIDADES y de RELACIONES entre ellas
Gran difusin
Muy extendido en los mtodos de diseo de bases de datos
Soportado por herramientas software de diseo (CASE)
3

2.1. Introduccin e historia del modelo


Entidad-Relacin

En el proceso de diseo...
Requisitos
de datos

DISEO
CONCEPTUAL

Esquema
Conceptual

MER
4

2.1. Introduccin e historia del modelo


Entidad-Relacin

Esquema conceptual
Descripcin concisa de los requisitos de
informacin de los usuarios
Descripciones detalladas de
TIPOS DE DATOS
RELACIONES ENTRE DATOS
RESTRICCIONES que los DATOS deben cumplir

Sin detalles de implementacin


Ms fcil de entender
Comunicacin con el usuario no tcnico
5

2.2. Conceptos bsicos del


modelo

Entidad ( entity )
Atributo ( attribute )
Dominio ( values set )
Relacin ( relationship )

2.2. Conceptos bsicos del modelo

ENTIDAD
Cosa u objeto del mundo real con existencia
propia y distinguible del resto
Objeto con existencia...
fsica o real (una persona, un libro, un empleado)
abstracta o conceptual (una asignatura, un viaje)

Persona, lugar, cosa, concepto o suceso, real o


abstracto, de inters para la empresa (ANSI, 1977)
7

2.2. Conceptos bsicos del modelo

ATRIBUTO
Propiedad o caracterstica de una entidad
Una entidad particular es descrita por los valores de
sus atributos:
titulo = El alquimista impaciente
genero = Thriller
p1
nacionalidad = Espaa
aoestreno = 2002
...
e1

dni = 87654321
nss = 1122334455
nombre = Cristina Aliaga Gil
nacionalidad = Espaa
...

2.2. Conceptos bsicos del modelo


TIPO DE ENTIDAD (entity set)
Define un conjunto de entidades que
poseen los mismos atributos
PELICULA: titulo, genero, nacionalidad, aoestreno,numcopias
EMPLEADO: dni, nss, nombre, fechanacim, direccion, telefono,
altura, nacionalidad, edad
Notacin
EMPLEADO

PELICULA

CLIENTE

LOCAL
VIDEOCLUB

DIRECTOR
ACTOR
9

2.2. Conceptos bsicos del modelo


Instancia de un tipo de entidad
Tambin...

p3

PELICULA

Ocurrencia
Realizacin
p2
Ejemplar
Entidad concreta
o individual

titulo = El seor de los anillos


genero = Fantasa
nacionalidad = EEUU
aoestreno = 2001
...

titulo = Amores perros


genero = Drama
nacionalidad = Mjico
aoestreno = 1999
...

titulo = Amelie
genero = Comedia
nacionalidad = Francia
aoestreno = 2001
...

p4

10

2.2. Conceptos bsicos del modelo

Intensin y Extensin
Un tipo de entidad describe el esquema o intensin para un
conjunto de entidades que poseen la misma estructura
EMPLEADO: dni, nss, nombre, direccin, telefono, altura, fechanacim,
nacionalidad, edad
Las instancias del tipo de entidad se agrupan en un conjunto
de entidades o extensin
e1 (87654321, 1122334455, Cristina Aliaga Gil, Libertad, 2. Yecla.
Murcia. 30510, 968100200, 160, 28/07/1979, Espaa, 23)
e2 (12345678, 6677889900, Antonio Gil Snchez, Paz, 5. Murcia.
Murcia.30012, 968111222, 176, 14/04/1944, Espaa, 58)
e3 (11223344, 1234567890, Julia Sauce, Justicia, 20. Yecla. Murcia.
30510, 968000222, 159, 23/05/1947, Espaa, 55)
11
...

2.2. Conceptos bsicos del modelo

Tipos de atributos

Simples o Compuestos
Almacenados o Derivados
Monovalorados o Multivalorados
Opcionales

12

2.2. Conceptos bsicos del modelo


Atributos Simples o Compuestos
Atributos compuestos
Pueden dividirse en otros con significado propio
fechanacim
direccion
dia mes

ao

calle ciudad provincia codpostal

Valor compuesto = concatenacin de valores de


componentes

Atributos simples
No divisibles. Atmicos

genero
13

2.2. Conceptos bsicos del modelo


Atributos Almacenados o Derivados
Atributos derivados
Valor calculado a partir de otra informacin ya
existente (atributos, entidades relacionadas)
Son informacin redundante...
edad [de EMPLEADO], clculo a partir de fechanacim
atributo derivado del valor de otro atributo

numcopias [de una PELICULA], cuenta del nmero de


entidades COPIA relacionadas con cada pelcula concreta
atributo derivado de entidades relacionadas

Atributos almacenados
fechanacim [de cada EMPLEADO]
nacionalidad [de una PELICULA]
14

2.2. Conceptos bsicos del modelo


Atributos Monovalorados o
Multivalorados
Atributos monovalorados (monovaluados)
slo un valor para cada entidad
fechanacim [de un EMPLEADO particular]
aoestreno [de cada PELICULA concreta]

Atributos multivalorados (multivaluados)


ms de un valor para la misma entidad
nacionalidad [ PELICULA coproducida por varios pases ]
telefono [ EMPLEADO con varios telfonos de contacto]
pueden tener lmites superior e inferior
del nmero de valores por entidad
nacionalidad (1-2)
telefono (0-3)
15

2.2. Conceptos bsicos del modelo


Atributos Opcionales (nulos)
El nulo (null value) es usado cuando...
Se desconoce el valor de un atributo para cierta
entidad
El valor existe pero falta

altura [de un EMPLEADO]


No se sabe si el valor existe o no

telefono [de un EMPLEADO]


La entidad no tiene ningn valor aplicable para
el atributo:
fechaalquiler [PELICULA slo en vdeo-venta (no alquiler)]16

2.2. Conceptos bsicos del modelo

Notacin para atributos


[MPM1999]

[EN2002]
ciudad

provincia

calle

codpostal
direccin

fechanacim

(0,3)
(0,1)

telefono

EMPLEADO

nombre

altura

calle ciudad provincia


codpostal
fechanacim
direccin
(0,3)
nombre
telefono
EMPLEADO
altura

(1,2)

nss
dni

edad

nacionalidad

nss

(1,2)

nacionalidad
dni edad

17

2.2. Conceptos bsicos del modelo

Atributos Clave
Atributo con valor distinto para cada
instancia de un tipo de entidad
dni en EMPLEADO

Una clave identifica de forma nica cada


entidad concreta atributo identificador
Notacin
EMPLEADO
EMPLEADO
dni

[EN2002]

dni

[MPM1999]
18

2.2. Conceptos bsicos del modelo

Atributos Clave (ii)


Una clave puede estar formada por
varios atributos clave compuesta
Combinacin de valores distinta para cada instancia
(nombre, fechanacim) en el tipo de entidad EMPLEADO
Una clave compuesta debe ser mnima

Un tipo de entidad puede tener


ms de una clave claves candidatas
Claves o Identificadores Candidatos de

EMPLEADO:

dni
nss
(nombre, fechanacim)
19

2.2. Conceptos bsicos del modelo

Atributos Clave (iii)


Atributo identificador principal (IP)
Clave Principal
Elegido (por el diseador) de entre los identificadores
candidatos (IC), para ser
el medio principal de identificacin de
las instancias del tipo de entidad
dni en EMPLEADO

Atributos identificadores alternativos (IA)


Claves Alternativas
El resto de ICs
nss y (nombre, fechanacim) en EMPLEADO
20

10

2.2. Conceptos bsicos del modelo


Notacin para atributos clave
[EN2002]
ciudad

calle

nombre

direccin
(0,3)
(0,1)

EMPLEADO
nss

telefono
altura

(1,2)

IP

dni

calle ciudad provincia


codpostal
fechanacim
direccin
(0,3)
nombre
telefono
EMPLEADO
altura

codpostal

fechanacim
n-f

[MPM1999]

provincia

nacionalidad

n-f
nss

edad

(1,2)

nacionalidad
dni edad

En el MER es obligatorio que todo tipo de


entidad tenga un identificador

21

2.2. Conceptos bsicos del modelo


DOMINIO (values set)

Conjunto de valores

Cada atributo simple est asociado a un dominio, que


especifica sus valores vlidos

Atributo

Dominio

nombre NOMBRES

Descripcin Dominio
cadenas de hasta 30 caracteres alfabticos

telefono TELEFONOS cadenas de hasta 9 caracteres numricos

altura

MEDIDAS

nmeros reales entre 0 y 25 (metros)

...

...

...

No suele representarse,
aunque una forma de
hacerlo sera:

nombre

EMPLEADO telefono

[MPM1999]

altura

NOMBRES
TELEFONOS
MEDIDAS 22

11

2.2. Conceptos bsicos del modelo

RELACIN (relationship)
Tambin interrelacin
Asociacin, vnculo o correspondencia
entre instancias de entidades relacionadas de
alguna manera en el mundo real
el director Alejandro Amenbar ha rodado la pelcula Mar
adentro
el empleado 87654321 trabaja en el local de videoclub
principal
la pelcula El imperio contraataca es una continuacin de
la pelcula La guerra de las galaxias
23

DIRECTOR

HA_RODADO

PELICULA

Instancia
del tipo de
relacin
Vacas

Tesis

J. Mdem

Belle Epoque

C. Saura

Torrente

F. Trueba

Tierra

S. Segura

Abre los ojos

A. Amenbar

Los otros

Tipo de Entidad:
conjunto de instancias

Tipo de Relacin:
conjunto de instancias
24

12

2.2. Conceptos bsicos del modelo


TIPO DE RELACIN (relationship set)

Estructura genrica o abstraccin del


conjunto de relaciones existentes entre
dos o ms tipos de entidad
un DIRECTOR ha rodado PELICULAs

Notacin
DIRECTOR

PELICULA

HA_RODADO

25

2.2. Conceptos bsicos del modelo

Grado de un tipo de relacin

Nmero de tipos de entidad que participan


en el tipo de relacin
Binaria: grado 2 (el ms frecuente)
Ternaria: grado 3
Reflexiva (o recursiva): grado 1
ACTOR

ACTUA_EN

CLIENTE
CONTINUACION
DE

PELICULA

PELICULA

ALQUILA

PELICULA

LOCAL_VIDEOCLUB
26

13

2.2. Conceptos bsicos del modelo

Nombres de Rol (papel)


Todo tipo de entidad que participa en un tipo de
relacin juega un papel especfico en la relacin
DIRECTOR

realizador

HA_RODADO

film

PELICULA

Los nombres de rol se deben usar, sobre todo, en


los tipos de relacin reflexivos, para evitar
ambigedad
original
VERSION_DE

versin

PELICULA
27

2.2. Conceptos bsicos del modelo


Restricciones estructurales sobre tipos de
relacin

Limitan las posibles combinaciones de


entidades que pueden participar en las
relaciones
Extradas de la situacin real que se modela
Una pelcula debe haber sido dirigida por uno y slo un
director
Un director ha dirigido al menos una pelcula y puede haber
dirigido muchas

Clases de restricciones estructurales:


Razn de cardinalidad (o tipo de correspondencia)
Razn de participacin
28

14

2.2. Conceptos bsicos del modelo


Razn de Cardinalidad Notacin EN2002
Nmero mximo de instancias de tipo de
relacin en las que puede participar una
misma instancia de tipo de entidad
la cardinalidad de HA_RODADO es 1 a N
HA_RODADO es de tipo 1 a N

DIRECTOR

Notacin
etiqueta en la lnea que
une entidad y relacin
Ojo: da la sensacin de
que se representa al revs

HA_RODADO

N
PELICULA
29

2.2. Conceptos bsicos del modelo


Razn de Cardinalidad Notacin EN2002
Razones de cardinalidad ms comunes:
1:1 (uno a uno)
1:N (uno a muchos)
M:N (muchos a muchos)
trabajador
1
TRABAJA_EN
1
lugar trabajo

EMPLEADO
encargado 1
SUPERVISA
sucursal N
LOCAL_VIDEOCLUB

ACTOR
personaje M
ACTUA_EN
N
film
PELICULA
30

15

2.2. Conceptos bsicos del modelo


Razn de Cardinalidad Notacin [MPM1999]
Nmero mximo de instancias de un tipo
de entidad que pueden estar relacionadas
con una instancia del otro tipo de entidad
Notacin
Etiqueta (1:1, 1:N, M:N) junto al tipo de relacin, o
Flecha en sentido ... a N
trabajador

1:1

1:N

TRABAJA_EN

ACTOR

EMPLEADO
encargado
SUPERVISA

ACTUA_EN

M:N

sucursal
LOCAL_VIDEOCLUB

lugar trabajo

PELICULA
31

2.2. Conceptos bsicos del modelo


Razn de Cardinalidad Notacin [SKS1998]
Nmero mximo de instancias de un tipo de
entidad a las que otra instancia puede estar
asociada, va un conjunto de relaciones
Notacin
flecha en el sentido ... a 1
trabajador

EMPLEADO
encargado

TRABAJA_EN

SUPERVISA

ACTOR

ACTUA_EN

sucursal
lugar trabajo

LOCAL_VIDEOCLUB

PELICULA

32

16

2.2. Conceptos bsicos del modelo


Razn de Participacin Notacin [EN2002]
Especifica si toda la extensin de un tipo de
entidad participa en un tipo de relacin, o
slo parte de la extensin
Indica si hay dependencia en existencia de
un tipo de entidad respecto de un tipo de
relacin
Clases de participacin:
Participacin total (dependencia en existencia)
Participacin parcial
33

3.2. Conceptos bsicos del modelo


Razn de Participacin (ii)

[EN2002]

Notacin
Lneas
dobles o
simples

DIRECTOR
1

trabajador
1
TRABAJA_EN
1
lugar trabajo

EMPLEADO
encargado 1
SUPERVISA
sucursal

HA_ RODADO
N

PELICULA

ACTOR
personaje M
ACTUA_EN
N
film
PELICULA

LOCAL_VIDEOCLUB

34

17

2.2. Conceptos bsicos del modelo


Cardinalidad de tipo de entidad
Otra forma de expresar las razones de
cardinalidad y participacin
PERSONA

PERSONA

EDIFICIO

USA

EDIFICIO

POSEE

PERSONA

USA
p1

EDIFICIO
POSEE

e1

p1

e2

e2

p2

p2
e3

p3

e1

e3

e4

p3

e4
35

2.2. Conceptos bsicos del modelo


Cardinalidad de tipo de entidad Notacin [EN2002]
Nmeros mnimo y mximo de instancias del
tipo de relacin en las que puede intervenir
una instancia del tipo de entidad
Notacin
(min, max) en la lnea que une entidad y relacin
(1,n)

(0,m)
USA

PERSONA
(0,n)

POSEE

EDIFICIO
(1,1)

36

18

2.2. Conceptos bsicos del modelo


Cardinalidad de tipo de entidad (iii)
1
TRABAJA_EN

[EN2002]

EMPLEADO
1

ACTOR

SUPERVISA

ACTUA_EN

PELICULA

LOCAL_VIDEOCLUB

(1,1)
TRABAJA_EN
(1,1)

EMPLEADO
(0,n)

ACTOR

SUPERVISA

ACTUA_EN

(1,n)

(0,m)

(1,1)

PELICULA

LOCAL_VIDEOCLUB

37

2.2. Conceptos bsicos del modelo


Cardinalidad de tipo de entidad Notacin MPM1999]

Nmeros mnimo y mximo de instancias


de un tipo de entidad que pueden estar
relacionadas con una instancia del otro
tipo de entidad
Notacin
(min, max) en la lnea que une entidad y relacin
PERSONA

(0,m)
(1,1)

USA
POSEE

(1,n)

EDIFICIO

(0,n)
38

19

2.2. Conceptos bsicos del modelo


Cardinalidad de tipo de entidad (v)

Comparacin de notaciones
[EN2002]
PERSONA

(0,n)

PERSONA

POSEE

(1,1)

EDIFICIO

EDIFICIO
POSEE

p1

POSEE ( PERSONA(0,n) : EDIFICIO(1,1) )

e1
e2

p2
e3

[MPM1999]
PERSONA

(1,1)

POSEE

p3

(0,n)

e4

EDIFICIO

POSEE( PERSONA(1,1) : EDIFICIO(0,n) )

En toda notacin, la cardinalidad de una entidad


es la etiqueta de la lnea que la une a la
39
relacin

Cardinalidad de tipo de entidad


Comparacin de notaciones (ii)
[EN2002]

EMPLEADO

SUPERVISA

LOCAL
VIDEOCLUB

1:N

[MPM1999]

EMPLEADO

[SKS1998]

EMPLEADO

(1,1)

SUPERVISA

LOCAL
(0,n) VIDEOCLUB

SUPERVISA

LOCAL
VIDEOCLUB
40

20

Cardinalidad de tipo de entidad


Cardinalidad de tipos de entidad recursivos
1

superior (0,n)

[EN2002]

subalterno
EMPLEADO (0,1)
N

continuacin (0,1)
PELICULA

JEFE DE

precuela
(0,1)

1:1

SECUELA DE

[MPM1999]
versin (0,n)
PELICULA

original
(0,1)

N:1

VERSIONA

41

Atributos de tipos de relacin


[EN2002]

EMPLEADO
1

1
horas

TRABAJA_EN

SUPERVISA

fechainicio

LOCAL_VIDEOCLUB

[MPM1999]

M:N
ACTOR

(0,m)

ACTUA_EN

papel
salario
(1,n)

PELICULA
42

21

2.2. Conceptos bsicos del modelo

Atributos de tipos de relacin (ii)


Conceptualmente pertenecen a la relacin
Un atributo de una M:N es propio de la relacin
Un atributo de una 1:1 o 1:N se puede llevar a
uno de los tipos de entidad participantes
1
horas

TRABAJA_EN

EMPLEADO
1

horas

SUPERVISA
N

LOCAL_VIDEOCLUB

[EN2002]

fechainicio

fechainicio

horas

43

2.2. Conceptos bsicos del modelo


Tipo de Entidad Dbil Notacin [EN2002]
No tiene atributos clave propios
Una instancia se identifica por su relacin
con una instancia de otro tipo de entidad
Tipo de relacin identificador
Relaciona un tipo de entidad dbil y un tipo de entidad
regular (fuerte, dominante, padre, propietaria)

Clave parcial (o discriminante)


Atributos de la entidad dbil, que identifican de forma
nica cada instancia, siempre que est relacionada
con una instancia del tipo de entidad regular

Clave = (clave_entidad_regular, clave_parcial)

Notacin

COPIA

44

22

2.2. Conceptos bsicos del modelo

Tipo de entidad dbil (ii) [EN2002]


nss

Tipo de
Entidad
Regular
Tipo de
Relacin
Identificador

PACIENTE
1
ACUDE

titulo

PELICULA
1
TIENE

N
diahora

VISITA_MEDICA

COPIA

numcopia

N
Clave parcial o
Discriminante

ASISTIDA
POR
1
MEDICO
especialidad

ncolegiado

Dependencia
en existencia

nombre

45

2.2. Conceptos bsicos del modelo


Tipo de entidad dbil (iii) [EN2002]
No toda participacin total (o dependencia en existencia)
implica un tipo de entidad dbil
EMPLEADO

dni

1
POSEE
N
PERMISO
CONDUCCION

numlicencia
tipo

PERMISO_CONDUCCIN no es dbil: depende en existencia de


EMPLEADO, pero tiene clave primaria propia
46

23

Tipo de entidad dbil (iv)


Notacin [MPM1999]

Definicin distinta de tipo de entidad dbil


La existencia de una instancia del tipo de
entidad dbil depende de la existencia de
una instancia del tipo de entidad regular
Tipo de relacin dbil (o dependencia)
Relaciona un tipo de entidad dbil y otro regular

Clases de dependencia:
En existencia
En identificacin

47

2.2. Conceptos bsicos del modelo


Tipo de entidad dbil (v)

[MPM1999]

Dependencia en existencia ( entre entidades)


Si desaparece una instancia del tipo de entidad
regular deben desaparecer las instancias de la
entidad dbil que dependen de ella
Etiqueta E en el tipo de relacin dbil

Dependencia en identificacin
Adems de la dependencia en existencia...
Una instancia del tipo de entidad dbil no se puede
identificar por s misma
Su clave es (clave_entidad_regular, clave_parcial)
Etiqueta ID en el tipo de relacin dbil
48

24

2.2. Conceptos bsicos del modelo


Tipo de entidad dbil (vi)
dni

EMPLEADO
E
POSEE

1:N

[MPM1999]
titulo

PELICULA

Tipo de
Relacin
Dbil

ID
TIENE
1:N

numlicencia

numcopia
PERMISO
CONDUCCION

tipo

PERMISO_CONDUCCION es
dbil, pues depende en
existencia de EMPLEADO, pero
no depende en identificacin

COPIA
idcopia

COPIA es dbil, pues depende


en existencia de PELICULA, y
tambin depende en
identificacin
49

Tipo de entidad dbil (vii)


Comparacin de conceptos y notacin

[EN2002]
CLIENTE

[MPM1999]
dni

(1,1)
E
POSEE

POSEE
N
PRESTAMO

1:N

(0,n)
numprestamo
PRESTAMO

dni

CLIENTE

Dependencia en existencia

numprestamo

50

25

Tipo de entidad dbil (viii)


Comparacin de conceptos y notacin (ii)
[EN2002]
PRESTAMO

[MPM1999]
numprestamo

PRESTAMO

numprestamo

(1,1)

TIENE

1:1

N
numpago

PAGO

ID
TIENE
(0,n)
numpago
PAGO
idpago

Entidad Dbil de
otra entidad dbil
51

Dependencia en identificacin

Tipo de entidad dbil (ix)


Comparacin de conceptos y notacin (iii)
[EN2002]
ACTOR

[MPM1999]
nombre

ACTUA_EN

M:N

(1,n)

nombre

(0,m)

ACTUA_EN

PELICULA

ACTOR

titulo

Participacin total

PELICULA

titulo

52

26

Tipos de relacin con grado superior a dos

[EN2002]

[MPM1999]

CLIENTE

CLIENTE

(0,n)

(1,1)
(0,1)

ALQUILA

CINTA
VIDEO

fecha (0,m)

fecha

LOCAL
VIDEOCLUB

(1,n)

ALQUILA

CINTA
VIDEO

(1,1)
LOCAL
VIDEOCLUB

Cardinalidad de los tipos de entidad

53

Tipos de relacin con grado


superior a dos (ii)
Equivalencia ternaria varias binarias
[EN2002]

fecha

(0,n)
CLIENTE

(0,n)
(0,1)
ALQUILA

fecha

ALQUILA

CLIENTE

(0,1)

(1,m)
CINTA
VIDEO

CINTA
VIDEO

ALQUILA_EN

(0,m)

(1,n)

LOCAL
VIDEOCLUB

LOCAL
VIDEOCLUB

(1,1)
CONTIENE

(1,n)
54

27

Tipos de relacin con grado


superior a dos (iii)
[EN2002]
idprov

(1,n)

PROVEEDOR
cantidad

(1,n)
SUMINISTRA

fecha

PROVEEDOR

PUEDE
SUMINISTRAR

codpr

(1,m)

(1,m)

(0,m)
PRODUCTO

PRODUCTO

PROVEE

(1,p)

(1,n)

TIENDA

(0,n)
VENDE

TIENDA

(1,m)
nombre

Prdida de semntica...

55

Tipos de relacin con grado


superior a dos (iv)
Solucin tpica: coexistencia ternaria/binarias
[EN2002]
idprov

(1,n)

PROVEEDOR

(1,m)
PROVEE

(1,n)
TIENDA

(1,m)

(1,n)

(0,m)

codpr

PRODUCTO

SUMINISTRA

(1,p)

PUEDE
SUMINISTRAR

fecha
cantidad

(1,m)

(0,n)
VENDE

nombre
56

28

Tipos de relacin con grado


superior a dos (v)

Otra solucin: relacin ternaria como entidad


dbil (Entidad Asociativa)
[EN2002]
cantidad fecha
(1,1)
(1,n)

(1,1)
CONTIENE

SUMINISTRO

REALIZA

(1,1)

PROVEEDOR

(0,n)
PRODUCTO

RECIBE

idprov

codpr

(1,n)
nombre

TIENDA
57

Tipos de relacin con grado


superior a dos (vi)

Relaciones ternarias falsas


idemp

dni

EMPRESA

(0,n)

REALIZA

(0,m)

[EN2002]

CANDIDATO

(1,1)
num
fecha

(0,1)
ENTREVISTA

GENERA

(1,1)

OFERTA
EMPLEO
idoferta

Tipo de entidad dbil de ms de un tipo de entidad


58

29

2.3. Extensiones del modelo


Modelo Entidad-Relacin Extendido, MERE
Enhanced Entity-Relationship model, EER

Aportaciones de diversos autores al modelo


Entidad-Relacin bsico.
Permiten representar...

Relaciones exclusivas entre s


Jerarquas de Especializacin/Generalizacin
Agregacin de entidades

59

2.3. Extensiones del modelo


Relaciones Exclusivas

Dos (o ms) tipos de relacin son exclusivos,


respecto de un tipo de entidad que participa en ambos, si cada
instancia del tipo de entidad slo puede participar en uno de
los tipos de relacin
VEHCULO

CONSUME

GASTA

GASOIL

GASOLINA

CONSUME y GASTA son exclusivas respecto del tipo de


entidad VEHICULO
60

30

2.3. Extensiones del modelo


Especializacin/Generalizacin (E/G)

Caso especial de relacin entre un tipo de entidad y


varios otros tipos de entidad
La jerarqua o relacin que se establece entre uno y
otros corresponde a la nocin de es_un o de
es_un_tipo_de
Estas jerarquas pueden formarse por
especializacin o bien por generalizacin
61

2.3. Extensiones del modelo


E/G: Subtipo de un tipo de entidad

Agrupacin de instancias dentro de un tipo de


entidad, que debe representarse explcitamente
debido a su importancia para el diseo o aplicacin

Subtipos del tipo de entidad VEHCULO:

Subtipos del tipo de entidad EMPLEADO:

CAMIN
TURISMO
AUTOBS
CICLOMOTOR
SECRETARIO
GERENTE
COMERCIAL

El tipo de entidad que se especializa en otros se llama


62
supertipo ( VEHICULO, EMPLEADO )

31

2.3. Extensiones del modelo


E/G: Relacin Supertipo/Subtipo
Es la relacin que se establece entre
un supertipo y cada uno de sus
subtipos (nocin es_un o es_un_tipo_de)
EMPLEADO
Notacin:

EMPLEADO

SECRETARIO

SECRETARIO

GERENTE

GERENTE

EMPLEADO

COMERCIAL

[MPM1999]

[EN2002]

COMERCIAL

[SKS1998]

ES

SECRETARIO

GERENTE

COMERCIAL 63

2.3. Extensiones del modelo


E/G: Relacin Supertipo/Subtipo (ii)

La extensin de un subtipo es un subconjunto de la extensin del


supertipo
Una instancia de subtipo tambin es instancia del supertipo y es la
misma instancia, pero con un papel especfico distinto
Una instancia no puede existir slo por ser miembro de un subtipo:
tambin debe ser miembro del supertipo
Una instancia del supertipo puede no ser miembro de ningn
subtipo VEHCULO
EMPLEADO_HOSPITAL

CAMIN

TURISMO

CICLOMOTOR
MDICO

CELADOR ENFERMERO LIMPIADOR


64

32

2.3. Extensiones del modelo


E/G: Herencia de tipo
Un subtipo puede tener atributos propios (especficos)
y participar en relaciones por separado
Un subtipo hereda todos los atributos del supertipo,
y toda relacin en la que participa el supertipo
Un subtipo, con sus atributos y relaciones especficos, ms
los atributos y relaciones que hereda del supertipo, es un
tipo de entidad por derecho propio
numBastidor

VEHCULO

precio

(1,n)

FABRICA

(1,1)

FABRICANTE

N:1

[MPM1999]

(1,1)
CAMIN

TURISMO

numEjes

MOTOCICLETA

numPlazas
tonelaje numPuer

ID
LLEVA

cilindrada 1:1

(0,1)
SIDECAR

65

2.3. Extensiones del modelo


E/G: Especializacin

Proceso de definicin de un conjunto de subtipos


de un tipo de entidad ( supertipo)
Subtipos suelen estar definidos segn caracterstica
distintiva de las entidades del supertipo

Discriminante de la especializacin
EMPLEADO

[MPM1999]

actividad

SECRETARIO

GERENTE

COMERCIAL

66

33

2.3. Extensiones del modelo


E/G: Especializacin (ii)

Varias especializaciones de un tipo de entidad,


con base en diferentes discriminantes

[MPM1999]

VEHCULO

motorS/N

VEHCULO_A_MOTOR

tipo

VEHCULO_SIN_MOTOR

CAMIN TURISMO

PELCULA

gnero

DRAMA TERROR

COMEDIA

MOTOCICLETA

color

BLANCO_Y_NEGRO

[EN2002]

COLOR
67

2.3. Extensiones del modelo


E/G: Especializacin (iii)

Conviene incluir relaciones subtipo/supertipo si hay...

Atributos que slo tienen sentido para algunas instancias de


un tipo y no para todas (atributos especficos)
especialidadMdica no es aplicable a CELADOR
Tipos de relacin en los que slo participan algunas
entidades de un tipo y no todas (relaciones especficas)
Relacin SUPERVISA entre CELADOR y SECCIN_HOSPITAL
1:1

[MPM1999]

CELADOR

(1,1)

SUPERVISA

(1,1)

SECCIN_HOSPITAL

68

34

3.3. Extensiones del modelo


E/G: Generalizacin
Proceso inverso de la especializacin
Suprimir diferencias entre varios tipos de entidad:
identificar atributos y relaciones comunes, y formar
un supertipo que los incluya
numBastidor
precio

CAMIN

numEjes
numBastidor
precio

numBastidor

fechaFab

VEHCULO

precio

tonelaje

CAMIN

fechaFab

TURISMO

fechaFab
numEjes
TURISMO

numPuer

tonelaje

numPuer

[EN2002]
69

2.3. Extensiones del modelo


E/G: Generalizacin vs. Especializacin

Generalizacin

nfasis en las similitudes


Cada instancia del supertipo es tambin una
instancia de alguno de los subtipos

Especializacin

nfasis en las diferencias


Alguna instancia del supertipo puede no ser
instancia de ningn subtipo
70

35

2.3. Extensiones del modelo


Restricciones sobre la E/G

Definicin
Qu instancias del supertipo pertenecen a cada subtipo?

Disyuncin/Solapamiento
A cuntos subtipos puede pertenecer (a la vez) una instancia del
supertipo?

Completitud/Parcialidad
Debe toda instancia del supertipo pertenecer a algn subtipo?

71

2.3. Extensiones del modelo


Restricciones sobre la E/G: Definicin

Subtipos definidos por predicado o condicin

Condicin de pertenencia a cada subtipo


con base en el valor de algn atributo del supertipo
Restriccin que especifica que...
Las instancias del subtipo deben satisfacer la condicin
Todas las instancias del supertipo que cumplen la
condicin, deben pertenecer al subtipo
PERSONA

estadoLaboral=en_activo
EMPLEADO

[EN2002]
matriculado=true

ESTUDIANTE
72

36

2.3. Extensiones del modelo


Restricciones sobre la E/G: Definicin (ii)
Subtipos definidos por atributo
Todas las subclases definen la condicin de pertenencia en
trminos del mismo atributo
... es el discriminante de la especializacin
EMPLEADO_HOSPITAL

PERSONA

estadoLaboral
en_activo
EMPLEADO

en_paro

claseTrabajo
mdico

celador

PARADO
MDICO

[EN2002]

enfermero

limpiador

ENFERMERO

CELADOR

LIMPIADOR

[MPM1999]
73

2.3. Extensiones del modelo


Restricciones sobre la E/G: Definicin (iii)

Subtipos definidos por el usuario

No existe (o no interesa definir) ninguna condicin de


pertenencia a los subtipos
El usuario, al insertar una instancia, elige a qu subtipo
pertenece
PROFESOR

TITULAR

AYUDANTE

[MPM1999]

ASOCIADO
74

37

2.3. Extensiones del modelo


Restricciones sobre la E/G:

Disyuncin/Solapamiento

Subtipos disjuntos si una instancia del supertipo


puede ser miembro de, como mximo, uno de los
subtipos
VEHCULO

VEHCULO

d
TURISMO

CAMIN

TURISMO

[EN2002]

CAMIN

[MPM1999]
75

2.3. Extensiones del modelo


Restricciones sobre la E/G:
Disyuncin/Solapamiento (ii)

Subtipos solapados si una instancia del supertipo


puede ser, a la vez, miembro de ms de un subtipo
Es la opcin por defecto
PERSONA

PERSONA

o
EMPLEADO

ESTUDIANTE

[EN2002]

EMPLEADO

ESTUDIANTE

[MPM1999]
76

38

2.3. Extensiones del modelo


Restricciones sobre la E/G:

Completitud/Parcialidad

Especializacin total (completa) indica que toda


instancia del supertipo tambin debe ser instancia de
algn subtipo
ANIMAL
ANIMAL

MACHO

HEMBRA

HERMAFRODITA

MACHO

[EN2002]

HEMBRA

HERMAFRODITA

[MPM1999]
77

2.3. Extensiones del modelo


Restricciones sobre la E/G:
Completitud/Parcialidad (ii)

Especializacin parcial indica que es posible que


alguna instancia del supertipo no pertenezca a
ninguno de los subtipos
Es la opcin por defecto
La unin de las extensiones de los subtipos no es la
extensin del supertipo en su totalidad
ALIMENTO

ALIMENTO

[EN2002]

[MPM1999]
d

LACTEO

FRUTA

VERDURA

LACTEO

FRUTA

VERDURA
78

39

2.3. Extensiones del modelo


E/G: Tipos de Especializacin

Las restricciones de disyuncin y completitud son


independientes entre s
Dan lugar a 4 tipos de especializacin:
Disjunta y Total
Disjunta y Parcial
Solapada y Total
Solapada y Parcial
Lo veremos con un ejemplo de una base de datos de
una Universidad
79

2.3. Extensiones del modelo


E/G: Especializacin Disjunta y Total
EMPLEADO

ESTUDIANTE
tipo

claseTrabajo

DOCENTE

ADMON_Y_SERV BECARIO

BECARIO

NO_BECARIO

Especializacin Disjunta y Parcial


DOCENTE
cuerpoDocente

AYUDANTE

TITULAR

CATEDRTICO

[MPM1999]
80

40

2.3. Extensiones del modelo


E/G: Especializacin Solapada y Total
PERSONA
ocupacin

EMPLEADO

[MPM1999]

ESTUDIANTE

Especializacin Solapada y Parcial


EMPLEADO
dedicacin
DOCENTE

INVESTIGADOR
81

2.3. Extensiones del modelo


E/G: Reglas de insercin y eliminacin

Deben aplicarse a la Especializacin y la Generalizacin,


debido a las restricciones definidas
Insertar una instancia en un supertipo implica
insertarla en todos los subtipos definidos por predicado o por
atributo, para los cuales satisface el predicado de definicin
Insertar una instancia en un supertipo de una
especializacin total implica insertarla en, al menos, un
subtipo
Y si la especializacin es disjunta, entonces la instancia se
insertar en un nico subtipo

82

41

2.3. Extensiones del modelo


E/G: Reglas de insercin y eliminacin (ii)

Eliminar una instancia de un supertipo implica


eliminarla de todos los subtipos a los que pertenece
Eliminar una instancia de un subtipo implica
eliminarla del supertipo si la especializacin es ...
disjunta y total, o bien
solapada y total, y la instancia ya slo pertenece
al subtipo (se elimin del resto)
En el resto de casos, la instancia slo se elimina del
subtipo

No del supertipo ( lo hara el usuario, si fuese necesario)


83

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas

Hasta ahora hemos estudiado jerarquas de


especializacin en las que se cumple la restriccin:
Todo subtipo participa en slo una relacin
supertipo/subtipo

Un subtipo tiene un nico supertipo: es el concepto de rbol

En una retcula de especializacin...


Un subtipo puede participar en varias
relaciones supertipo/subtipo
Un subtipo puede tener ms de un supertipo
84

42

E/G: Ejemplo de Retculas


nombre
[MPM1999]
PERSONA
dni
direccin
sexo

fechaIni DESEMPLEADO

jornada
salario

EMPLEADO

ocupacin

ESTUDIANTE

tipoEstudiante

dedicacin

(1, n) centro

DOCENTE ADMN_Y_SERV

BECARIO

puesto

cuerpoDocente

jornada
carrera

NO_BECARIO

beca

CATEDRTICO TITULAR NO_NUMERARIO


tipoCtedra

tipoPlaza

duracinContrato

85

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas: Herencia mltiple

En las jerarquas de especializacin


Cada subtipo hereda atributos y relaciones...

de su (nico) supertipo directo

y de sus supertipos predecesores, hasta la raz

TITULAR hereda de DOCENTE, EMPLEADO y PERSONA

En las retculas de especializacin

Un subtipo hereda atributos y relaciones...

de sus supertipos (mltiples) directos herencia mltiple

y de todos sus supertipos predecesores, hasta la raz

BECARIO hereda directamente de EMPLEADO y ESTUDIANTE,


e indirectamente hereda de PERSONA
Los subtipos compartidos dan lugar a retculas
86

43

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas: Herencia mltiple (ii)

En herencia mltiple pueden surgir conflictos al heredar


atributos distintos denominados igual
BECARIO hereda jornada de dos predecesores !!

Cmo resolver esta situacin?


Renombrar algunos de los atributos en conflicto
BECARIO hereda ambos atributos:
jornada corresponde a jornada de EMPLEADO y
jornadaEstudio corresponde a jornada de ESTUDIANTE
Definir un orden de prioridad en la herencia
BECARIO hereda jornada de ESTUDIANTE y no de
EMPLEADO
87

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas:

Inhibicin de la herencia

Algunos modelos de datos permiten indicar que


ciertos atributos del supertipo no deben ser
heredados por los subtipos
POLGONO

[MPM1999]

numVrtices
ancho
PENTGONO

TRINGULO

RECTNGULO

alto

CUADRADO

lado

ancho y alto no deberan ser heredados por el subtipo


88

44

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas:

Redefinicin de atributos heredados

Si un supertipo y un subtipo tienen un atributo con


el mismo nombre, se entiende que el atributo del
subtipo redefine el del supertipo

Se utiliza el mismo nombre y significado semntico


pero se modifica cmo se calcula o cmo se representa el
valor del atributo

Tiene sentido sobre todo para atributos derivados


ancho
rea

RECTNGULO

[MPM1999]

alto
rea
lado

CUADRADO

89

2.3. Extensiones del modelo


E/G: Jerarquas y Retculas:

Tratamiento de la herencia
Consideraremos que en el MERE ...
Los subtipos heredan todos los atributos de los supertipos
Pero se permite la redefinicin de atributos en los
subtipos, y la inhibicin de la herencia de atributos
ancho
rea

RECTNGULO

[MPM1999]

alto
rea

CUADRADO

lado

... y si se da herencia mltiple y existe conflicto de


nombres, el usuario elegir entre
Renombrar algunos atributos en conflicto, o
Inhibir la herencia de algunos atributos

90

45

2.3. Extensiones del modelo


Agregacin de tipos de entidad

Restriccin inherente del MER:


No puede expresar relaciones
entre varias relaciones, ni
entre un tipo de relacin y un tipo de entidad

La agregacin...
Permite combinar varios tipos de entidad, relacionados
mediante un tipo de relacin, para formar un tipo de
entidad agregada de nivel superior
til cuando el tipo de entidad agregado debe
relacionarse con otros tipos de entidad
91

2.3. Extensiones del modelo


Agregacin de tipos de entidad (ii): Ejemplo 1

Esquema en el MERE que almacena informacin sobre las


entrevistas que una ETT organiza entre solicitantes de empleo y
diferentes empresas

[EN2002]

nombre
EMPRESA
direccin

(1,n)
M

(1,m)

ENTREVISTA_A
fecha

telefContacto

nif

SOLICITANTE
nombre
telef

nomContacto

Algunas entrevistas dan lugar a ofertas de empleos y otras no


cmo modelamos esto?

92

46

2.3. Extensiones del modelo


Agregacin de tipos de entidad (iii): Ejemplo 1

Solucin 1: Relacin ternaria


EMPRESA

ENTREVISTA_A

SOLICITANTE

OFERTA_EMPLEO

[EN2002]

ERROR!
Toda entrevista da lugar a un empleo
ESO ES FALSO!
93

2.3. Extensiones del modelo


Agregacin de tipos de entidad (iv): Ejemplo 1

Solucin 2:
EMPRESA

[EN2002]
ENTREVISTA_A

SOLICITANTE

RESULTA_EN

OFERTA_EMPLEO

ERROR!
NO es posible establecer una
relacin entre varias relaciones,
ni entre relaciones y entidades

94

47

2.3. Extensiones del modelo


Agregacin de tipos de entidad (v): Ejemplo 1

Solucin 3:

ENTREVISTA_A

EMPRESA

SOLICITANTE

ENTREVISTA

Entidad
COMPUESTA o
AGREGADA

RESULTA_EN

[EN2002]

OFERTA_EMPLEO

OK!

OFERTA_EMPLEO tiene dependencia en existencia respecto de


RESULTA_EN
95

2.3. Extensiones del modelo


Agregacin de tipos de entidad (vi): Ejemplo 1
[EN2002]

Solucin 4: Relacin ternaria falsa


nombre

nif

EMPRESA

(0,n)

(0,m)

REALIZA

SOLICITANTE

(1,1)
(0,1)
fecha

ENTREVISTA

nomContacto

telefContacto

GENERA

(1,1)

OFERTA
EMPLEO
idOferta

Tipo de entidad dbil de otros dos


Qu significa que ENTREVISTA tenga fecha como clave parcial?
96

48

2.3. Extensiones del modelo


Agregacin de tipos de entidad (vii): Ejemplo 1

Solucin 5:

[EN2002]

nombre

nif

EMPRESA

(0,n)

(1,1)

REALIZA

(1,1)

GENERA

(0,m)
SUFRE

ENTREVISTA

(0,1)

SOLICITANTE

fech
a

(1,1)

OFERTA
EMPLEO

idOferta

Tipo de entidad dbil de otros dos


97

2.3. Extensiones del modelo


Agregacin de tipos de entidad (viii): Ejemplo 2
Esquema en el MERE que almacena informacin acerca de
profesores y las asignaturas que stos imparten, as como los
diversos medios que utilizan para impartir cada asignatura
(pizarra, transparencias, etc.)
PROFESOR

EXPLICA

ASIGNATURA

UTILIZA
N

MEDIO

[EN2002]

ERROR! no es posible establecer una


relacin entre una relacin y una entidad
98

49

2.3. Extensiones del modelo


Agregacin de tipos de entidad (ix): Ejemplo 2

Solucin:

[EN2002]

PROFESOR

EXPLICA

ASIGNATURA

EXPLICACIN
M
Entidad COMPUESTA
o AGREGADA

UTILIZA
N
MEDIO
99

MER : AGREGACIN
AGREGACIN COMPUESTO / COMPONENTE:
Un todo se obtiene por la unin de diversas partes, que pueden ser
objetos distintos y que desempean papeles distintos en la
agregacin.
COCHE
(1,1)
CHASIS

[MPM99]
(4,4)

(1,1)
MOTOR

RUEDA

AGREGACIN COLECCIN / MIEMBRO :


Un todo se obtiene por la unin de diversas partes del mismo tipo
y que desempean el mismo papel en la agregacin.
Se puede establecer orden entre las partes
BOSQUE

ARBOL

FLOTA

{NumBarco}

BARCO
100

50

También podría gustarte