Está en la página 1de 15

Fases del diseo de BD

Tema 2. Modelo entidad-relacin (ER)


Minimundo
Modelado de datos utilizando el modelo
entidad-relacin. Elmasri/Navathe 02
OBTENCIN
Entidad-relacin extendido y modelado de I
Y ANLISIS
DE REQUISITOS
objetos. 4.7. Tipos de relacin de grado superior a dos. n
Elmasri/Navathe 02 d
e Requisitos funcionales Requisitos de la BD
p
e d
Modelos de datos conceptuales de alto nivel para el n e ANLISIS
d DISEO
diseo de BD i l FUNCIONAL CONCEPTUAL
e
Ejemplo n
t S Especificacin Esquema conceptual (ER)
Tipos de entidad, conjuntos de entidad, atributos y e G transacciones
B
claves D DISEO LGICO
Vnculos (o relaciones), tipos de vnculo (o tipos de (Transformacin del
modelo de datos)
relacin), roles y restricciones estructurales E
s
Tipos de entidad dbiles p DISEO DE
e Esquema lgico (ej. relacional)
Refinamiento del diseo ER para la BD ejemplo PROGRAMAS
c c DE APLICACIN
Diagramas ER, convenciones de denominacin y a
f d DISEO
cuestiones de diseo i a FSICO
Tipos de vnculo (o relacin) de grado superior a dos c
o S IMPLEMENTACIN
DE TRANSACCIONES Esquema interno
Ejemplos de diseo G
dB
e D
Programas de aplicacin

A. Jaime 2005 DBD Tema 2 1 A. Jaime 2005 DBD Tema 2 2

Esquema conceptual Ejemplo: BD Empresa

Descripcin concisa de los requisitos de se ocupa de los empleados, departamentos y


informacin de los usuarios. proyectos de una empresa.

Requisitos de informacin:
Contiene descripciones detalladas de:
tipos de entidad Organizada en departamentos. Cada uno con
vnculos (o relaciones) nombre y nmero nico. Tiene un director y su
fecha de inicio. Puede estar distribuido en varios
restricciones lugares.

No incluyen detalles de implementacin Cada departamento controla cierto nmero de


proyectos. Cada uno con nombre y nmero nicos
y se realiza en un solo lugar.
Pueden servir para comunicarse con usuarios no
tcnicos De cada empleado se guarda su nombre, nmero de
seguridad social, direccin, salario, sexo y fecha de
nacimiento. Est asignado a un departamento pero
puede trabajar en varios proyectos (no tienen por
qu ser controlados por el mismo departamento). N
horas semanales dedicadas a cada proyecto y quin
es su supervisor.

De los familiares de cada empleado (para


administrar sus seguros) interesa su nombre, sexo,
fecha de nacimiento y parentesco (hijo, esposa, ...).

A. Jaime 2005 DBD Tema 2 3 A. Jaime 2005 DBD Tema 2 4


Esquema ER
Conceptos del modelo ER
para la BD Empresa
Los datos se describen como:
Entidades
Nombre
Atributos
Sexo
FAMILIAR Vnculos (o relaciones)
FechaNacimiento
N Parentesco

FAMILIARES_DE

1
NombreP Iniciales Apellido
Nombre Otros conceptos:
Nss Sexo Direccin Salario
supervisor
1
Atributo simple, Grado de tipo de
FechaNacimiento
compuesto, mono y vnculo
EMPLEADO SUPERVISIN
multivaluado, Vnculo (o relacin)
N 1 supervisado
N almacenado y como atributo
derivado Rol
TRABAJA_PARA DIRIGE FechaInic Valor nulo Restricciones de
1 1 Atributo complejo cardinalidad y de
Nombre

DEPARTAMENTO Nmero Tipo de entidad participacin


Localizaciones
Conjunto de entidades Atributos de tipo de
N 1 NmeroDeEmpleados
Horas Atributo clave vnculo
TRABAJA_EN CONTROLA Tipo de entidad dbil
Dominio
N
M Nombre Tipo de vnculo (o Clave parcial
PROYECTO Nmero
Localizacin
relacin) Tipo de vnculo
ternario

A. Jaime 2005 DBD Tema 2 5 A. Jaime 2005 DBD Tema 2 6

Entidades y atributos Tipos de atributos. Valores nulos

Entidad: cosa del mundo real con existencia Simple (o atmico): DNI
NomPila
independiente: Compuesto: Nombre Apellido1
algo fsico: una cierta persona (Aitor), una casa, pueden formar una jerarqua Apellido1
un automovil, un empleado, ... es la concatenacin de sus atributos simples
algo conceptual: una compaa (ACME), un
puesto de trabajo (secretario de centro), un Monovaluado: FechaN
curso universitario (2 A), ... Multivaluado: Localizaciones (Donostia, Tolosa, Eibar)
Pueden tener lmites inferior y superior de nmero de
valores
Atributo: es una propiedad especfica de una
entidad (atributos de ACME: el nombre, su direccin, su
Almacenado: FechaN
telfono, ...)
Derivado: Edad
(calculado a partir de la fecha de nacimiento FechaN
Cada entidad se describe mediante un conjunto de
atributos
Valores nulos, se asignan a atributos:
sin valor aplicable
Una entidad concreta tendr un valor para cada uno
(Ttulo universitario para personas sin ttulo)
de sus atributos
de valor desconocido:
Nombre=John Smith falta: altura de una persona
Direccin= 2311 Kirby, no se sabe si existe: n de telfono
Entidad 1 Houston, Texas 77001
Edad=55
Atributos complejos: anidaciones arbitrarias de atributos
Telfono=713-749-2630
compuestos y multivaluados

A. Jaime 2005 DBD Tema 2 7 A. Jaime 2005 DBD Tema 2 8


Tipo de entidad, claves y conjuntos de
Tipos de entidad en la BD Empresa
valores

Tipo de entidad: conjunto de entidades que poseen


Diseo inicial extraido de los requisitos:
los mismos atributos (cada entidad su propio valor
para cada atributo) Por ejemplo: informacin de Nombre
empleados de una compaa Nmero El libro le
llama
Se describe con su nombre y lista de atributos Localizaciones Gerente

Las entidades de un t. de entidad son el DEPARTAMENTO


Director

conjunto de entidades o extensin del t. de Fecha_Inicio_Director


entidad.
Nombre
El t. de entidad se llama intensin de su Nmero
conjunto de entidades Localizacin

PROYECTO DepartamentoControlador
Atributo clave de un t. de entidad:
Tiene un valor nico para cada entidad del t. de
entidad (restriccin de clave o unicidad). Esto NombreP Iniciales Apellido
se deber cumplir para cualquier extensin. Nombre
Nss
Ejemplo: DNI para personas Departamento
FechaNacimiento Sexo Direccin Salario

Puede ser un atributo compuesto Supervisor


EMPLEADO
Debe ser mnima (sin atributos superfluos) TrabajaEn
Algunos t. de entidad pueden tener ms de un
atributo clave
Puede haber t. de entidad sin clave: t. de entidad Empleado FAMILIAR NombreFamiliar
dbil
Parentesco FechaNacimiento Sexo

Conjunto de valores (dominio) del atributo, es el


conjunto de todos los posibles valores que puede
tomar el atributo.
A. Jaime 2005 DBD Tema 2 9 A. Jaime 2005 DBD Tema 2 10

Tipos de entidad en la BD Empresa (2) Vnculos implcitos en el ejemplo

En el ejemplo no se ha representado el n de horas Vnculo implcito: atributo que hace referencia a


semanales que trabaja un empleado en un proyecto otro tipo de entidad
Se puede resolver haciendo que TrabajaEn est En el ejemplo son vnculos implcitos: Gerente de
compuesto de Proyecto y Horas DEPARTAMENTO, DepartamentoControlador de
PROYECTO, Supervisor de EMPLEADO, ...
NombreP Iniciales Apellido En el modelo ER estas referencias hay que
Nombre representarlas como vnculos (o relaciones)
FechaNacimiento Nss Sexo Direccin Salario
Departamento

Supervisor
Proyecto EMPLEADO Durante el diseo inicial los vnculos se pueden
TrabajaEn capturar en forma de atributos
Horas

Al refinarse el diseo se transforman en vnculos


entre los t. de entidad
Una alternativa:

Nombre
Nmero
Localizacin

PROYECTO DepartamentoControlador

Empleado
Trabajadores
Horas

A. Jaime 2005 DBD Tema 2 11 A. Jaime 2005 DBD Tema 2 12


Vnculos (o relaciones) Vnculos como atributos

En ocasiones conviene considerar un tipo de


vnculo en forma de atributo
Un tipo de vnculo R (como TRABAJA_PARA) entre
n tipos de entidad (EMPLEADO, DEPARTAMENTO) A sto lo hemos llamado vnculo implcito
define un conjunto de asociaciones ( conjunto de
vnculos) entre las entidades de los n tipos de EMPLEADO
N
TRABAJA_PARA
1
DEPARTAMENTO
entidad
N 1
EMPLEADO TRABAJA_PARA DEPARTAMENTO En el ejemplo anterior (TRABAJA_PARA), con el
atributo Departamento en EMPLEADO (contiene el
departamento del empleado):
Cada instancia de vnculo r R es una asociacin Contiene una
referencia a la
de entidades que incluye una nica entidad de cada EMPLEADO Departamento entidad de
tipo de entidad que participa en el tipo de vnculo Departamento

En los tipos de vnculo binarios, tambin se puede


(Gonzalo, ATC), (Fernando, CCIA), (Txiki, CCIA) incluir en DEPARTAMENTO (contiene todos los
empleados del departamento):

Grado de un tipo de vnculo es el nmero de tipos DEPARTAMENTO Empleados


de entidad que participan (en el ejemplo grado=2)

Grado 2 = tipo de vnculo binario, grado 3 ternario. Si se incluye en ambos sitios, cada uno debera ser
el inverso del otro.
Los ms comunes son los binarios.

A. Jaime 2005 DBD Tema 2 13 A. Jaime 2005 DBD Tema 2 14

Nombres de roles y vnculos recursivos Restricciones estructurales

Nombre de rol indica qu papel desempea cada Razn de cardinalidad (vnculos binarios): n de
entidad participante de un tipo de entidad en cada instancias de vnculo en las que puede participar
instancia de vnculo una entidad. Las ms comunes son:
1:1
1:N
EMPLEADO
N
TRABAJA_PARA
1
DEPARTAMENTO
N:M
Trabajador o Patrn o
empleado departamento Restriccin de participacin:

No son necesarios con tipos de entidad distintos


Total (dependencia de existencia): todo
(se usa el nombre del tipo de entidad) empleado debe pertenecer a un departamento
N 1
Si no, el nombre de papel es indispensable: EMPLEADO TRABAJA_PARA DEPARTAMENTO

EMPLEADO
supervisor supervisado
1 SUPERVISIN N Parcial: algunos empleados dirigen un
departamento (otros no)

1 1
Estos ltimos tipos de vnculo se llaman vnculos EMPLEADO DIRIGE DEPARTAMENTO
recursivos
pero todo departamento es dirigido por un
empleado (total)

A. Jaime 2005 DBD Tema 2 15 A. Jaime 2005 DBD Tema 2 16


Atributos de tipo de vnculo Atributos de tipo de vnculo (2)

Son atributos asociados al tipo de vnculo: Con tipos de vnculo 1:N slo se pueden trasladar al
t. de entidad del lado N:
M N
EMPLEADO TRABAJA_EN PROYECTO
N 1
EMPLEADO TRABAJA_PARA DEPARTAMENTO
Horas
FechaInicio
1 1
EMPLEADO DIRIGE DEPARTAMENTO Cada empleado empieza en una fecha distinta, luego no
podemos poner una fecha comn en el departamento
FechaInicio
En tipos de vnculo M:N no se puede trasladar, ya
que es un valor determinado por la combinacin de
entidades participantes en la instancia de vnculo
Con tipos de vnculo 1:1 y 1:N este atributo puede (no por una de ellas individualmente):
trasladarse a uno de los t. de entidad participantes:
M N
EMPLEADO TRABAJA_EN PROYECTO

1 1
EMPLEADO DIRIGE DEPARTAMENTO
Horas

FechaInicio

(se poda haber trasladado a DEPARTAMENTO


en lugar de a EMPLEADO)

A. Jaime 2005 DBD Tema 2 17 A. Jaime 2005 DBD Tema 2 18

Tipo de entidad vs. Entidad


Tipo de entidad dbil
Tipo de vnculo vs. Vnculo

Son los que no tienen atributos clave propios


Cdigo Ttulo DNI Nombre
Tipos de entidad
y
Tipo de vnculo
Una entidad de un tipo de entidad dbil se identifica
LIBRO
M
PRESTADO
N
LECTOR por su vnculo con otra entidad de otro tipo de
Cada uno es una entidad, en combinacin con alguno de los atributos
NCopias intensin, es de esta ltima.
decir, representa
a un conjunto de
informacin Parentesco FechaNacimiento Sexo

N 1
FAMILIAR FAMILIARES_DE EMPLEADO
LIBRO LECTOR Conjuntos de
entidades NombreFamiliar FechaNacimiento Nss ...
Tolk-1 El Sr. de los Anillos 3 11 Joseba representadas
(extensiones).
Orw-1 1984 2 22 Miren Cada lnea es Tipo de entidad Tipo de vnculo Tipo de entidad
Shar-1 Wilt 1 una entidad propietario o
dbil identificador identificador

NO puede haber 2 entidades de un tipo de entidades con todos sus El tipo de entidad dbil siempre tiene una restriccin
atributos iguales, ya en un conjunto no hay elementos repetidos
de participacin total respecto al tipo de vnculo
identificador
PRESTADO Conjunto de
Tolk-1 11 vnculos No toda dependencia de existencia da lugar a una
representados
Tolk-1 22 (extensin). entidad dbil:
Orw-1 11 Cada lnea es
un vnculo
Shar-1 22 1 1
PERSONA TIENE PERMISO_CONDUCIR

NO puede haber 2 vnculos de un tipo de vnculos con todos sus DNI NmLicencia

atributos iguales, ya en un conjunto no hay elementos repetidos Es clave

A. Jaime 2005 DBD Tema 2 19 A. Jaime 2005 DBD Tema 2 20


Tipo de entidad dbil (2) Tipo de entidad dbil (3)

Parentesco FechaNacimiento Sexo Un tipo de entidad dbil tambin se puede representar


en forma de atributo multivaluado complejo:
N 1
FAMILIAR FAMILIARES_DE EMPLEADO FechaNacimiento Sexo
Parentesco
NombreFamiliar
FechaNacimiento Nss ...
Familiares EMPLEADO

Puede haber 2 empleados cuyos hijos (Parentesco) se NombreFamiliar FechaNacimiento Nss ...
llamen Eduardo (NombreFamiliar, Sexo) y los hijos
hayan nacido el mismo da (FechaNacimiento) Se elige como representacin el tipo de entidad dbil
Se trata de 2 Eduardos distintos cuando:
Slo se puede distinguir a los 2 Eduardos por ser tiene muchos atributos
hijos de distinto empleado participa de manera independiente en otro
tipo de vnculo (adems de su tipo de vnculo
identificador)
Se dice que cada entidad EMPLEADO posee a sus
entidades dependientes (las relacionadas con ella)
Se pueden definir varios niveles de tipos de entidad
dbil:

Clave parcial: atributo(s) que puede(n) distinguir a Un tipo de entidad dbil puede tener ms de un tipo de
las entidades dbiles relacionadas con la misma entidad propietario y un tipo de vnculo identificador
entidad propietaria (distinguir a los familiares de un de grado mayor que dos
mismo empleado)
En el caso peor, la clave parcial es la combinacin
de todos los atributos del tipo de entidad dbil

A. Jaime 2005 DBD Tema 2 21 A. Jaime 2005 DBD Tema 2 22

Refinamiento del diseo ER Refinamiento del diseo ER


para la BD Empresa para la BD Empresa (2)

1 1
EMPLEADO DIRIGE DEPARTAMENTO
Supervisor

FechaInicio EMPLEADO

Gerente supervisor supervisado


1 SUPERVISIN N

Fecha_Inicio_Gerente

M N
N 1
EMPLEADO TRABAJA_EN PROYECTO
EMPLEADO TRABAJA_PARA DEPARTAMENTO

Proyecto
Horas
Departamento TrabajaEn
Horas

1 N N 1
DEPARTAMENTO CONTROLA PROYECTO FAMILIAR FAMILIARES_DE EMPLEADO

Empleado
DepartamentoControlador

A. Jaime 2005 DBD Tema 2 23 A. Jaime 2005 DBD Tema 2 24


Resumen de notacin para diagramas ER Resumen de notacin para diagramas ER (2)

TIPO DE ENTIDAD

PARTICIPACIN TOTAL
TIPO DE ENTIDAD DBIL E1 R E2 DE E2 EN R

TIPO DE VNCULO

1 N RAZN DE CARDINALIDAD 1:N


E1 R E2
TIPO DE VNCULO IDENTIFICADOR PARA E1:E2 EN R

ATRIBUTO

(min, max) RESTRICCIN ESTRUCTURAL


ATRIBUTO CLAVE R E (min, max)
EN LA PARTICIPACIN DE E EN r

ATRIBUTO MULTIVALUADO

ATRIBUTO COMPUESTO
...

ATRIBUTO DERIVADO

ATRIBUTO CLAVE PARCIAL

A. Jaime 2005 DBD Tema 2 25 A. Jaime 2005 DBD Tema 2 26

Restricciones estructurales Nombres apropiados para los elementos


notacin alternativa del esquema ER

Tipos de entidad: nombres en singular


Tipos de vnculo: verbos
EMPLEADO
N
TRABAJA_PARA
1
DEPARTAMENTO
Atributos: tambin son sustantivos

(1,1) (1,N) Tipos de entidad: en mayscula


EMPLEADO TRABAJA_PARA DEPARTAMENTO
Tipos de vnculo: en mayscula
Atributos : primera letra en mayscula
Roles : en minscula
(mn, mx)
R E

Tipos de vnculo: ordenado de izda a dcha (o de


mn indca que cada entidad de E debe participar en arriba hacia abajo) de manera que se pueda leer
al menos mn instancias de vnculo de R en todo
momento (por ejemplo FAMILIAR - FAMILIARES_DE -
EMPLEADO)
mx indca que cada entidad de E debe participar en
como mucho mx instancias de vnculo de R en
todo momento
0<=mn<=mx y mx>=1
mn=0 indca participacin parcial
mn>0 indca participacin total
Esta notacin es ms precisa y se puede usar para
especificar restricciones estructurales para tipos de
vnculo de cualquier grado

A. Jaime 2005 DBD Tema 2 27 A. Jaime 2005 DBD Tema 2 28


Tipos de vnculo (o tipos de relacin) con
Elecciones de diseo
grado mayor que 2

Un atributo se puede refinar en tipo de vnculo En general el grado de un tipo de vnculo puede ser
por ser una referencia a un tipo de entidad cualquiera:
B A B A AB B

E2
Tambin en caso de dos atributos, inverso el uno
E1
del otro se refinan en el mismo tipo de vnculo
E3
binario En R
B A A B A AB B
... E4

Un atributo que est en varios tipos de entidad


puede refinarse en un tipo de entidad
independiente (con un solo atributo) Ejemplo de tipo de vnculo ternario. Relaciona tros
de entidades. Por ejemplo (sum1, proy1, comp1) y
Ms adelante podran descubrirse nuevos atributos (sum1, proy2, comp4)
para ese tipo de entidad
Z A A B C

Z B
AZ BZ CZ Apellido Cantidad NombreProyecto
Z C
Z Z SUMINISTRADOR SUMINISTRA PROYECTO

Lo inverso a lo anterior tambin es posible, cuando


NmComponente COMPONENTE
hay un tipo de entidad con un solo atributo, que est
relacionado con un solo tipo de entidad
Z Z ZB B Z B

A. Jaime 2005 DBD Tema 2 29 A. Jaime 2005 DBD Tema 2 30

Tipos de vnculo ternarios Tipos de vnculo ternarios (2)

Un tipo de vnculos ternario no representa lo mismo Si slo tenemos vnculos binarios la representacin
que tres binarios: de un tipo de vnculo ternario se hace del siguiente
Apellido NombreProyecto
modo:
M N
SUMINISTRADOR SUMINISTRA PROYECTO Apellido Cantidad NombreProyecto
M M
1 N N 1
PUEDE_ N N SUMINISTRADOR SS SUMINISTRA SP PROYECTO
COMPONENTE UTILIZA
SUMINISTRAR
N
NmComponente SC Sin clave
parcial
1
NmComponente COMPONENTE
Apellido Cantidad NombreProyecto

SUMINISTRADOR SUMINISTRA PROYECTO


(algunas herramientas de diseo de BD slo
COMPONENTE
admiten tipos de vnculo binarios)
NmComponente

Ejemplo: Para los suministradores s1 y s2, los componentes c1 y c2 y los pro- El tipo de entidades dbil SUMINISTRA no tiene
yectos p1 y p2, obtener los tros de SUMINISTRA y los pares de las
c
clave parcial
relaciones binarias en los siguientes casos, donde s prepresenta
que el suministrador s suministra el componente c al proyecto p Una entidad de SUMINISTRA se identifica mediante
c1 c2
la combinacin de las 3 entidades propietarias de
s1 p1 s1 p1 SUMINISTRADOR, COMPONENTE y PROYECTO
c2 c1
c2 c1
s2 c1 p2 s2 c2 p2

A. Jaime 2005 DBD Tema 2 31 A. Jaime 2005 DBD Tema 2 32


Tipos de vnculo ternarios (3) Tipos de vnculo ternarios (4)

Sin embargo si existen (p1,c1), (p1,s1) y (s1,c1)


Semestre
NombreP
IMPARTI_
DURANTE
SemestreAo
Ao
No tiene por qu existir (p1,c1,s1) en OFRECE
PROFESOR SEMESTRE
OFRECE
Por ejemplo cuando sucede (p1,c1,s2), (p1,c2,s1),
PUEDE_ OFRECIDO_
(p2,c1,s1) y no sucede (p1,c1,s1)
IMPARTIR CURSO DURANTE

NmeroC

Ahora incorporamos restricciones adicionales:


OFRECE (grado3): el profesor p ofrece el curso c Semestre
NombreP SemestreAo
durante el semestre s IMPARTI_
DURANTE Ao

PUEDE_IMPARTIR: el curso c pueden impartirlo los PROFESOR SEMESTRE

profesores p1, p3, p4, ... 1 OFRECE

IMPARTI_DURANTE: durante el semestre s PUEDE_


1 OFRECIDO_
IMPARTIR CURSO DURANTE
impartieron clase los profesores p1, p3, p4, ...
NmeroC
OFRECIDO_DURANTE: en el semestre s se ofrecieron
los cursos c1, c2, c3, ...
Cuando un profesor puede impartir un nico curso
Restricciones necesarias: las dos relaciones binarias (IMPARTI_DURANTE y
Ej. si existe (p1,c1,s1) en OFRECE, deben existir: PUEDE_IMPARTIR) son equivalentes a la ternaria
(p1,c1) en PUEDE_IMPARTIR (OFRECE)
(p1,s1) en IMPARTI_DURANTE En ese caso es preferible quedarse con las
relaciones binarias y olvidarse de la ternaria
(s1,c1) en OFRECIDO_DURANTE

A. Jaime 2005 DBD Tema 2 33 A. Jaime 2005 DBD Tema 2 34

Tipo de entidad dbil con tipo de vnculo Restricciones estructurales en tipos de


identificador ternario vnculo de grado mayor que dos
Con (mn, max) se pierde parte del significado que tena
Nombre NombreE en relaciones binarias
El (1,N) significa que cada entidad de SUMINISTRADOR
CANDIDATO CEE EMPRESA
aparecer como mnimo en un tro de SUMINISTRA y
como mximo en varios :
Departamento
ENTREVISTA Dep_Fecha Apellido Cantidad NombreProyecto
Fecha
(1,N) (0,N)
SUMINISTRADOR SUMINISTRA PROYECTO
DA_LUGAR_A

(0,N)
OFERTA_TRABAJO COMPONENTE NmComponente

La notacin M:N:P aade la idea de clave.


Aqu se indica que la clave de SUMINISTRA es el par
En este caso el tipo de entidad dbil ENTREVISTA (proyecto, componente). Es decir, no hay dos tros de
tiene varios tipos de entidad propietarios SUMINISTRA con igual proyecto y componente al
(CANDIDATO y EMPRESA) mismo tiempo:
Apellido Cantidad NombreProyecto

(0,N) (0,N)
SUMINISTRADOR SUMINISTRA PROYECTO
1 N
M (0,N)
COMPONENTE NmComponente

Si no se aade esta segunda notacin se entiende que en


los extremos figura N, M y P (sin ningn 1).
Una relacin ternaria no tiene sentido si hay una o varias
binarias equivalentes (ni cuaternarias si hay ternarias ...)
No tiene sentido una ternaria etiquetada con 1:1:N

A. Jaime 2005 DBD Tema 2 35 A. Jaime 2005 DBD Tema 2 36


Camiones

Ejemplo de diseo:
Diseo de CAMIONES (1)
CAMIONES
Partiendo de los requisitos de datos siguientes dise- Entender los pasos como gua de diseo
a el diagrama ER. Haz las suposiciones que creas No son estrictos ni hay por qu darlos en ese orden
convenientes, dejando constancia escrita de ellas.

La compaa de transportes CAMIONES recoge pedi- 1) Identificar t. de entidad, atributos y claves:


dos de los almacenes de la cadena VELZQUEZ Hnos.
Nmero Peso Volumen Viaje
y las entrega a las tiendas de la misma cadena. De mo-
mento hay 6 almacenes y 45 tiendas. Cada tienda tiene Tienda
Nmero PEDIDO
su propio nombre, y conocemos tambin su direccin y
Almacn
telfono. Cada almacn tiene un nmero diferente ade- Direccin
ALMACN
ms de la direccin y telfono. Un camin puede trans- Tfno Nombre
portar varios pedidos en el mismo viaje y entregar cada Direccin
TIENDA
pedido a la tienda que lo solicit. Cada viaje se identifica Matrcula
Tfno
por un nmero. Cada pedido se identifica por un nme- PesoMax CAMIN
ro e incluye datos sobre peso, volumen y tienda de desti- Nmero
VolumenMax
no. Cada camin tiene el nmero de matrcula y su pro- Fecha
VIAJE
pio lmite mximo de volumen y peso transportado. La Camin
flota de la compaa CAMIONES consta de 150 veh-
Almacn
culos y cada uno realiza entre 3 y 4 viajes semanales.
Deseamos contar con una BD para uso comn entre las Suposiciones:
dos empresas, que sirva para: Un pedido se toma completo de un almacn y se
Controlar el uso de los camiones (fechas). entrega tambin completo a una sola tienda.
Controlar las entregas (pedidos entregados) En un viaje interviene solo un camin, toma varios
Que ayude a programar los viajes (conocer los pedidos de un almacn y los entrega a una o varias
pedidos hechos, de qu almacn a qu tiendas y los
viajes asignados a camiones) tiendas.

A. Jaime 2005 DBD Tema 2 37 A. Jaime 2005 DBD Tema 2 38

Diseo de CAMIONES (2 y 3) Diseo de CAMIONES (4)


2) Identificar vnculos implcitos:
4) Establecer las restricciones de participacin y
Nmero Peso Volumen Viaje
cardinalidad a los tipos de vnculo
Tienda
Nmero PEDIDO Matrcula

Direccin
Almacn
PesoMax
CAMIN
ALMACN (0,N)
Tfno Nombre VolumenMax
REALIZA
Direccin
TIENDA (1,1)
Matrcula (1,1) Nmero
Tfno
VIAJE
PesoMax CAMIN (1,N) Fecha
Nmero
VolumenMax RECOGE TRANSPORTA
Fecha Nmero
VIAJE (0,1)
Camin Peso
(0,N) PEDIDO
Almacn Volumen
(1,1) (1,1)

3) Transformar vnculos implcitos en tipos de SOLICITADO A_ENTREGAR

vnculo: (0,N) (0,N)

ALMACN TIENDA Nombre


Almacn PEDIDO SOLICITADO ALMACN
Direccin
Nmero Tfno Direccin
Tienda PEDIDO A_ENTREGAR TIENDA Tfno

Suposiciones:
Camin VIAJE REALIZADO_POR CAMIN
Los pedidos se introducen antes de organizar el viaje.
Viaje PEDIDO TRANSPORTADO VIAJE En base a los datos de pedidos y ocupacin de
camiones el programa de aplicacin puede organizar
Almacn VIAJE RECOGE ALMACN los viajes.

A. Jaime 2005 DBD Tema 2 39 A. Jaime 2005 DBD Tema 2 40


Diseo de CAMIONES (5 a 8)

5) Considerar atributos de vnculo:


Matrcula
En este caso se puede
PesoMax
CAMIN dejar en VIAJE
(0,N)
VolumenMax
REALIZA Fecha
(1,1)

VIAJE Nmero

6) Considerar tipos de entidad dbiles, su vnculo


identificador y su clave parcial.
7) Considerar el inters de convertir algn tipo de
entidad en tipo de vnculo y hacer que sus
atributos sean los del tipo de vnculo (como pasa
con INFORME_NOTA en el ejercicio 3.16).
Ejercicios
8) Considerar el inters de tipos de vnculo de grado
mayor que 2.
9) Considerar el inters de convertir un atributo
que aparece en varios tipos de entidad en tipo de
entidad independiente o lo contrario (un tipo de
entidad con un solo atributo que se relaciona con
un nico tipo de entidad convertirlo en atributo)
10) Considerar el inters de tener representado un
tipo de vnculo mediante vnculos implcitos (en
una sola direccin o en ambas)

A. Jaime 2005 DBD Tema 2 41 A. Jaime 2005 DBD Tema 2 42

Ejercicio 1 Ejercicio 2

Completa los esquemas ER: Completa los esquemas ER:

Una editorial publica varios libros o ninguno. Un Una editorial publica varios libros o ninguno. Un
libro es publicado por una sola editorial: libro es publicado por una sola editorial. Un lector
puede tomar prestados varios libros. Cada entidad
EDITORIAL PUBLICA LIBRO libro representa a todos los ejemplares del mismo.

EDITORIAL PUBLICAN
Un autor puede escribir varios documentos. Un
documento puede tener varios autores. LIBRO

LECTOR TIENE
AUTOR ESCRIBE DOCUMENTO

Un tema puede estar dividido en subtemas. Un Qu cambia si un mismo libro es publicado por
subtema puede dividirse en subsubtemas, etc. Un varias editoriales. Se desea saber la editorial de
subtema pertenece a un slo tema. cualquier libro prestado a un lector.

TEMA CONSTA

A. Jaime 2005 DBD Tema 2 43 A. Jaime 2005 DBD Tema 2 44


Ejercicio 3 Ejercicio 4
PEDIDO
N_Pedido Cliente Direccin Ciudad
Completa el esquema ER: 25 A. lvarez S. Martn 50 Donostia
33 J. Mugica Roteta 20 Donostia
En un pedido se pueden solicitar varios artculos. Interesa LNEA
conocer la cantidad solicitada (CantSolicitada) de cada artculo Lnea N_Pedido Artculo Cantidad Tienda Formato
en un pedido. 1 25 B5 100 1 Lujo
2 25 B5 100 1 Normal
1 33 B3 4 1 Normal
Cada artculo tiene un precio unitario (PrecioU). Se almacena
informacin que permite cobrar cada artculo de un pedido de
forma diferente segn quien sea el cliente y como sea el Un pedido (como el 25) puede constar de varias lneas.
pedido (PrecioC). Adems un pedido puede incluir varias lneas del mismo
artculo. Esto sucede, por ejemplo, cuando se solicitan
Un pedido se puede entregar en varios envos parciales. Esto unidades de un artculo con diferente formato (ej. unidades en
produce varias facturas por pedido. Se desea guardar el n de formato Lujo y otras Normal, como con el artculo B5 del
unidades de un artculo (UnidadesEnv) recogidas en cada pedido 25)
factura. Tambin se desea conservar el n de unidades de cada Un cliente puede tener ms de una tienda.
artculo que faltan por enviar en cada pedido (UnidadesPend).
Hay que tener en cuenta que tanto un pedido como una factura De acuerdo con lo anterior, completa el siguiente esquema ER
pueden incluir diferentes artculos. (atributos, claves, tipos de entidad dbil, tipos de vnculo):

N_Pedido Lnea
DNI NPed
N (1,N) (1,1)
1 PEDIDO CONSTA LNEA
CLIENTE C-P PEDIDO
(1,1)
M SOLICITADO
(1,1)

P-A N_Cliente (0,N) PERTENECE

Direccin CLIENTE (0,N)


1 N
(1,N) ARTCULO
N Ciudad
F-P TIENE
FACTURA ARTICULO
(1,1)
M F-A NArt Direccin
N
NFac TIENDA
N_Tienda

A. Jaime 2005 DBD Tema 2 45 A. Jaime 2005 DBD Tema 2 46

Ejercicio: Universidad Ejercicio: BUQUES


(3.16 Elmasri/Navathe 02)

Se quieren registrar las visitas a puertos realizadas por


los buques. Partiendo de los requisitos de datos
siguientes, disea el diagrama ER:
Cada buque se identifica con su nombre. Adems
interesa almacenar el nombre del dueo, qu tipo de
buque es y la historia de movimientos realizados.
Cada tipo de buque consta de un cdigo nico. Se
desea guardar tambin el tonelaje y el material del
casco. Puede haber varios buques del mismo tipo.
Por cada movimiento realizado por un buque se guarda
la longitud y latitud, y una marca temporal formada por
una fecha y una hora.
Cada buque est adscrito a un puerto, desde el que
inicia todas sus visitas. Cada puerto tiene un nombre,
una descripcin, el pas al que pertenece y el mar
donde se ubica. En ningn pas puede haber 2 puertos
de igual nombre. Sin embargo hay puertos con el
mismo nombre correspondientes a pases distintos.
Se guarda el nombre y continente de cada pas y el
nombre y profundidad media de cada mar. En ambos
casos, el nombre identifica unvocamente al pas y mar
respectivamente.
Por cada visita de un buque a un puerto interesa
guardar la fecha en la que arrib al puerto (fecha de
inicio) y la fecha de partida (fecha fin). Un buque
puede visitar muchas veces el mismo puerto. Si un
buque entra al mismo puerto varias veces el mismo da
slo se almacena la ltima visita del da.
A. Jaime 2005 DBD Tema 2 47 A. Jaime 2005 DBD Tema 2 48
Camiones Camiones

Ejercicios: variantes de CAMIONES Ejercicios: variantes de CAMIONES (2)

Partiendo de los requisitos de datos presentados D) Considera la misma situacin del apartado A, pero
anteriormente, considera las siguientes variantes al ahora se desea guardar la informacin de las lneas
problema: de detalle de cada pedido. Una lnea de detalle
consta de un nmero (distinto por cada lnea de un
A) Un pedido se compone de varios artculos. Cada mismo pedido), cdigo de artculo y unidades. Una
artculo se identifica por su nmero y contiene su lnea de detalle corresponde a un nico pedido
descripcin. Un mismo artculo puede figurar en
varios pedidos. Interesa guardar las unidades de un E) Un artculo puede ser de diferentes colores. As en
artculo en un pedido. Todos los artculos de un un pedido queremos incluir la informacin del color
pedido provienen de un almacn y se entregan a de los artculos. Plantea las modificaciones
una tienda. pertinentes sobre la solucin al apartado D.

B) Considera el mismo caso del apartado anterior, pero


donde los artculos de un pedido pueden ir a F) Considera la misma situacin del apartado B pero
distintas tiendas. Interesa distinguir cuntas incluyendo la informacin de lneas de detalle.
unidades de cada artculo de un pedido se entregan
a cada tienda. G) Reconsidera la situacin inicial (previa al apartado
A) si un viaje se identifica en lugar de con un
C) Considera la misma situacin del apartado B, pero nmero, por camin, la fecha y un nmero de
donde un pedido puede no entrar en el mismo orden en esa fecha (1 significa el primer viaje de
camin y entonces sus artculos se reparten en ese da, 2 el segundo viaje, ...)
distintos viajes.
Por ejemplo para el artculo 1 del pedido 1, dos
unidades pueden entrar en un viaje y otras 3
unidades deben ir en otro.

A. Jaime 2005 DBD Tema 2 49 A. Jaime 2005 DBD Tema 2 50

Ejercicio: Biblioteca municipal Ejercicio: Restaurante


Un restaurante de comida rpida sirve pedidos en el local. Cada pedido puede
Una biblioteca almacena informacin de los libros que incluir uno o varios artculos y productos especiales. Un artculo lleva uno o
varios ingredientes. Los productos especiales son ofertas del restaurante,
toman en prstamo sus lectores. Por cada libro se guarda un aparte de llevar los ingredientes del artculo sobre el que se basa, lleva uno o
identificador nico, el ttulo y el nombre, direccin y varios ingredientes adicionales.
telfono de su editorial. Precio NomIngr Suministrador
(0,N) (0,N)
La biblioteca dispone de varios locales a los que llama NomArt LLEVA INGREDIENTE LLEVA
(1,N)
sucursales. La BD que debemos disear contiene Tipo (1,N)
(0,N) (1,1) PRODUCTO
NomPrd
Precio ARTCULO BASE DE
informacin a compartir por todas ellas. ESPECIAL
Tamao
(0,N)
Se dispone de una o varias copias de cada libro, que se (0,N)
Cantidad (0,N) (0,N) Cantidad
encuentran distribuidas por las sucursales. Les interesa saber INCLUIDO PEDIDO INCLUIDO
Hora
por cada libro el nmero de copias asignadas a cada Nmero pedido
sucursal, y el identificador y nombre nicos de la sucursal Fecha Hora
servido
junto a la direccin de la sucursal. El restaurante, adems de atender pedidos en el local, quiere ofrecer un
Un ejemplar de un libro se puede encontrar en un momento nuevo servicio de envo de pedidos a domicilio. Para dichos pedidos
interesa guardar la direccin y el telfono de contacto del solicitante del
determinado fsicamente en la sucursal a la que est pedido. Se aceptan anulaciones de pedidos, pero la informacin de un
asignado o bien puede estar prestado a un lector. De ste domicilio se guardar aunque se haya anulado el pedido solicitado. Qu
ltimo sabemos cul es el nmero de su tarjeta (no hay dos cambiaras en el esquema E/R (aadir/eliminar/modificar) para incluir la
lectores con el mismo nmero de tarjeta), sabemos su informacin relativa a domicilios?
nombre, direccin y telfono. Como se desprende del esquema E/R anterior, cada artculo lleva uno o
Van guardando qu libros ha tomado prestado cada lector, ms ingredientes y un ingrediente puede estar en ms de un artculo.
Ahora nos plantean la siguiente situacin:
de qu sucursal lo ha tomado y la fecha de prstamo y
En el restaurante hay ingredientes que pueden sustituirse por otros.
devolucin de la ltima vez que tom prestado el libro de la Por ejemplo en ocasiones la lechuga se sustituye bien por cogollos o
sucursal. bien por escarola.
Como tambin suelen hacer consultas por autores, quieren Puede coincidir que dos ingredientes distintos se sustituyan por el
almacenar los autores de cada libro. Ocurre que hay autores mismo ingrediente. Por ejemplo los espaguetis y los macarrones
suelen sustituirse por tallarines.
diferentes que se llaman igual, as que han decidido
Sin embargo las sustituciones no son generales, sino que se aplican
distinguir a dos autores con el mismo nombre por el libro del de forma diferente para cada artculo. Por ejemplo, en las pizzas los
que son autores, de manera que no puede haber dos autores championes se sustituyen por setas o por hongos, mientras que en
con el mismo nombre que hayan escrito el mismo libro las ensaladas se sustituyen por maz o por hongos.
(distinguiendo a los libros por su identificador nico) Qu cambiaras en el esquema E/R (aadir/eliminar/modificar) para
incluir la informacin relativa a sustitucin de ingredientes?
A. Jaime 2005 DBD Tema 2 51 A. Jaime 2005 DBD Tema 2 52
Ejercicio: Festival de cine Ejercicio: Mundial de ftbol
Disea un esquema E/R que recoja la siguiente informacin
Disea un esquema E/R que recoja la siguiente sobre el mundial de ftbol Corea-Japn 2002. En esta BD
informacin sobre un festival de cine: iremos almacenando informacin sobre los equipos
participantes y sus jugadores, el resultado obtenido en cada
partido, los controles antidopaje a los que se han sometido los
Un festival de cine almacena informacin de los jugadores, y por ltimo, los hoteles en los que se aloja cada
equipo.
premios concedidos a lo largo de los aos, de las
Para cada equipo interesa guardar el cdigo con el cual se
pelculas participantes y de las personas que han identifica, el nombre del pas, el nmero total de goles
intervenido en las pelculas como productor, marcados hasta el momento en el mundial y la camiseta que
director y como actor. Para cada premio interesa viste.
saber la categora y ao del mismo (mejor actriz 98, Para cada partido jugado entre dos equipos se almacena la fecha en
mejor director 2000, etc.), el dinero en euros, a qu la que se jug, el resultado (0-0, 2-0, 0-1, ...) y los rbitros que
dirigieron el partido (incluidos jueces de lnea, etc.). Dos
persona o personas les corresponde y la pelcula equipos pueden jugar entre s ms de una vez si van superando
(nica) a la que est asociado. A cada pelcula se le las eliminatorias.
asocia un cdigo y se guarda el ttulo y el gnero Para cada jugador de cada equipo, se guarda su nmero de DNI
(western, terror, etc.) al que pertenece. Para cada (que incluye el cdigo del pas), nombre, fecha de nacimiento,
persona se guarda su nombre, sexo, nacionalidad, los clubes a los que ha pertenecido dicho jugador durante el
ltimo ao y el nmero de goles marcados en el mundial.
en qu pelcula o pelculas ha participado como
Cuando finaliza el mundial todo jugador ha debido pasar por un
actor, como director y como productor. Una
control antidopaje obligatorio. Adems, los jugadores pueden
pelcula puede tener varios productores, varios ser requeridos para realizar uno o ms controles adicionales. En
directores y varios actores. El jurado del festival cada control se registra la fecha y el lugar en el que se realiz.
puede decidir no conceder un premio a ningn Por cuestiones de organizacin se desea guardar informacin sobre
participante (declararlo desierto). los hoteles en los que se aloja cada equipo. Los equipos jugarn
los partidos en diferentes sedes, por lo que se alojarn en
distintos hoteles. En un mismo hotel slo se alojar un nico
equipo en todo el mundial. En la BD cada hotel se identifica
mediante un cdigo, y adems tiene un nombre, una direccin y
un telfono. Cada equipo reserva un nmero concreto de
habitaciones en cada hotel. Este ltimo dato tambin figurar en
la BD.
A. Jaime 2005 DBD Tema 2 53 A. Jaime 2005 DBD Tema 2 54

Ejercicio:
Autobuses universitarios Ejercicio: club nutico
Las facultades y escuelas de la UPV/EHU (en adelante centros) Disea un esquema E/R que recoja la informacin sobre
desean ofrecer a sus alumnos un servicio de autobuses para un club nutico segn la siguiente descripcin:
trasladarlos desde el pueblo donde residen a su centro de estudios.
Para gestionarlo nos piden que diseemos un esquema E/R que
Se guarda el nombre, direccin, DNI, telfono y fecha de
recoja la siguiente informacin: ingreso de cada socio y sus embarcaciones (propiedad).
Para cada centro de la universidad que ofrece este servicio se Cada embarcacin tiene una matricula, nombre, es de un
desea guardar el cdigo que lo identifica, su nombre, su direccin tipo y unas dimensiones. Figura un nico socio como su
y cules son los autobuses que ha contratado. propietario.
Para cada alumno universitario que usa el servicio de autobuses se Cada amarre se identifica conjuntamente por zona y
almacena su DNI (a los extranjeros la universidad les asigna un nmero. Tambin se guarda la ltima lectura de los
DNI propio diferente a cualquier otro DNI existente), su nombre, contadores de agua y luz, la embarcacin a la que est
los identificadores de los cursos en los que est matriculado (por asignado (nica) y la fecha de asignacin del amarre a la
ejemplo: 1 de ITIS y 2 de ITIS), el pueblo (nico) donde
reside y el centro (nico) en el que est matriculado. Adems
embarcacin. No puede haber varios amarres asignados a
figura para cada alumno en qu autobuses puede viajar y para la misma embarcacin.
cada uno de ellos en qu fecha realiz la inscripcin. Un socio puede ser propietario de uno o ms amarres. En
Para cada autobs contratado se dispondr de su matrcula, tal caso se guarda la fecha de compra del amarre. Un
nmero de asientos, nombre de la compaa (hay autobuses que amarre puede ser propiedad de un solo socio. No hay
no pertenecen a ninguna compaa) y las paradas que realiza para ninguna relacin entre la fecha de compra de un amarre y
recoger y dejar a los alumnos que lo utilizan. Adems, como cada su fecha de asignacin.
centro de la universidad contrata autobuses de forma exclusiva (un
mismo centro puede contratar varios autobuses), para cada Los amarres del club nutico se dividen en zonas. Cada
autobs se dispondr del centro (nico) que lo contrat. zona se identifica por una letra, contiene un determinado
De cada pueblo incluido en el servicio de autobuses se tiene su tipo de barcos y todos sus amarres tienen la misma
cdigo identificativo, nombre, provincia y las paradas que realizan profundidad y anchura. Lgicamente, un amarre
los diferentes autobuses en el mismo (puede haber ms de una). pertenece a una sola zona.
Por cada parada del pueblo se almacena la calle en la que est Los empleados se identifican por un cdigo. Adems
situada. Una misma parada puede ser utilizada por ms de un sabemos su nombre, direccin, telfono, especialidad y
autobs. Distintos pueblos pueden tener calles con el mismo por cada zona el nmero de barcos de los que se encarga.
nombre. Cada empleado est asignado a una o varias zonas. En
NO AADIR al esquema E/R INFORMACIN QUE NO SE cada zona puede trabajar ms de un empleado.
HAYA MENCIONADO (como nuevos atributos, vnculos...)

A. Jaime 2005 DBD Tema 2 55 A. Jaime 2005 DBD Tema 2 56


Ejercicio: zoo
Disea un esquema E/R que recoja la informacin sobre un
zoo segn la siguiente descripcin:
Para cada especie interesa saber sus nombres vulgar y
cientfico, una pequea descripcin, los diferentes hbitat
naturales en los que puede vivir y las zonas del parque en
las que se encuentran.
Lgicamente hay varias especies que pueden vivir en un
mismo hbitat natural y en una misma zona del zoo puede
haber ms de una especie.
Por cada hbitat se almacena su nombre, clima, vegetacin
predominante y el continente o continentes en los que se
encuentra. Para cada zona del parque se guarda su nombre y
extensin en hectreas.
No hay dos especies con el mismo nombre cientfico ni dos
hbitat o dos zonas con el mismo nombre.
Se han establecido varios itinerarios que recorren el zoo.
Cada uno consta de un cdigo identificativo, duracin y
longitud del recorrido, y las zonas y especies incluidas.
Varios itinerarios pueden incluir la misma zona o la misma
especie. A cada itinerario se le asignan uno o ms guas.
Se organizan varias visitas diarias. Cada una se identifica
por su itinerario y nmero. Adems se tiene la hora de
comienzo, el mximo nmero de visitantes y el gua (nico)
asignado.
Para cada gua se guarda su dni, nombre, direccin, telfono
y fecha de alta como gua. Un gua puede llevar varios
itinerarios y varias visitas.

A. Jaime 2005 DBD Tema 2 57

También podría gustarte