Está en la página 1de 82

TEMA 3

DISENO. MODELO ENTIDAD-RELACION

1. Diseo de una Base de Datos . . . . . . . . . . . . . . . . . 2 n 2. Modelo Entidad-Relacin . . . . . . . . . . . . . . . . . . . . . 9 o (a) Entidad, atributo, interrelaciones . . . . . . . . . . 10 (b) Lazos de correspondencia, claves, entidades fuertes y dbiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 e (c) Diagrama E-R . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3. Modelo E-R extendido . . . . . . . . . . . . . . . . . . . . . . . 46 (a) Especializacin - Generalizacin . . . . . . . . . . . 47 o o (b) Agregacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 o 4. Criterios de diseo de un esquema E-R . . . . . . . 61 n 5. Diseo de un esquema E-R . . . . . . . . . . . . . . . . . . 68 n 6. Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

Diseo de una Base de Datos n


Sistema de Base de Datos: Pretende satisfacer las necesidades de informacin de diferentes usuarios, sobre o un conjunto de datos comunes a todos ellos. Ejemplo: Base de Datos de gestin de un banco. Se o pretende satisfacer las siguientes necesidades de informacin: o
Presidente: Cuntas cuentas corrientes hay? a a Cuntas cuentas de ahorro? Cuntos clientes tiene el banco? a Cunto dinero se guarda en las cuentas, corrientes o de a ahorro? Jefe del Dept. de contabilidad: Cada cliente ha de recibir el saldo de su cuenta. Cada cliente ha de recibir los movimientos que genera su cuenta. Jefe del Dept. de prstamos: e e Informe de los pagos mensuales realizados para cada prstamo.

Para poder satisfacer estas necesidades hay que realizar un diseo de la Base de Datos. n
2

FASES DE DISENO DE UNA BASE DE DATOS

FASES:
1. Captacin y anlisis de requerimientos o a
Caracterizar de forma completa las necesidades que desean los usuarios de la BD, tanto en los datos como en las operaciones a realizar con los datos. Entrevistas con los futuros usuarios de la BD para captar las necesidades. Resultado: REQUISITOS DE DATOS: Necesidades de datos. Especicacin de la informacin que se quiere guardar. o o REQUISITOS FUNCIONALES: Necesidades de manipulacin de datos. Especicacin de las operaciones a reo o alizar con los datos.

2. Diseo conceptual de la BD n
Una vez escogido el modelo abstracto que se quiere utilizar, el diseador aplica los conceptos de este modelo para traducir los n requisitos de datos del usuario al modelo abstracto, formando el esquema conceptual de la BD. Validar el esquema conceptual sobre las transacciones especicadas en los requisitos funcionales (consultas, actualizaciones, borrados, inserciones).

Implementacin del modelo conceptual sobre un siso tema de base de datos concreto se realiza en dos fases: DISENO LOGICO y DISENO F ISICO. n o 3. Diseo lgico
Conversin del esquema conceptual de la BD al modelo de o datos que implementa el sistema de BD (usualmente el modelo de BD relacional). ESQUEMA RELACIONAL DE BD Denicin del conjunto de relaciones base que constituyen el o nivel conceptual de la arquitectura ANSI/SPARC.

4. Diseo f n sico
Denir las caracter sticas f sicas de la BD a partir del esquema de la BD. Denicin del conjunto de cheros que constituyen el esquema o interno de la arquitectura ANSI/SPARC.

NIVELES DE MODELADO EN UNA BD


NIVEL Esquema conceptual de BD Esquema de BD Estado actual BD EJEMPLO modelo E-R, modelo orientado a objetos modela relaciones y atributos de la BD modela BD CONSTRUCCIONES objetos, interrelaciones, entidades

persona, nombre, direccin, o DNI, empleado por, Pepe viu al 13 Rue del Percebe

ESQUEMA DE BD:
Estructura lgica y semntica para registrar un conjunto de o a hechos de una realidad concreta. Esquema obtenido a partir del modelo conceptual de BD escogido.

MODELO ABSTRACTO DE DATOS: Descripcin o que posibilita la creacin de esquemas conceptuales de o BD utilizados por aplicaciones concretas.
Tambin denominado modelo conceptual de datos o moe delo semntico de datos. a Capturar la semntica o signicado del entorno que se prea tende modelar en la BD. MODELADO SEMANTICO DE DATOS o Desarrollado para incrementar la efectividad y la precisin del diseo de la BD. n Modelo de fcil conversin a otros modelos (jerrquico, a o a relacional, en red, orientado a objeto).

TIPOS DE MODELOS ABSTRACTOS:


Modelo Binario-Sem`ntico (Abrial, 1974) a Modelo Entitat-Relacin (Chen, 1976) o Modelo Semntico de Datos - SMD (Hammer-McLeod, 1981) a Modelo de Datos Funcional (Shipman, 1981) Modelo Orientado a Objetos - Model E-R extendido

MODELO ORIENTADO A OBJETOS: Modelo E-R extendido. Modelo abstracto de datos ms utilizado actuala mente. Basado en el modelo E-R de Chen, incorporando conceptos de programacin orientada a objetos en o los modelos semnticos de datos: a o o Especializacin - Generalizacin Agregacin o Estudia el comportamiento de los datos, no de las estructuras. Busca formas de manipular los datos, no de las estructuras.

Modelo Entidad-Relacin o
Entity-Relationship Model Tambin denominado Model Entidad-V e nculo. Basado en una percepcin del mundo real. o Consta de
Entidades: Conjunto de eventos (objetos o acciones) bsicos. a Relaciones: Conjunto de interrelaciones entre las entidades.

A partir de estos dos conceptos, el Modelo E-R dene otros que son utilizados para construir el modelo abstracto de la BD:
Atributo Lazos de correspondencia Claves Entidades fuertes y dbiles e

a Estos elementos se representan grcamente mediante un Diagrama E-R.


9

ENTIDAD
Acontecimiento (objeto o accin) del mundo real que o es distinguible del resto.
Entidad concreta (objeto): Persona, libro, etc. o e Entidad abstracta (accin): Prstamo, vacaciones, etc.

Entidad tiene asignado un conjunto de propiedades (atributos), con valores para identicar la entidad de forma u nica.
Ejemplo: Entidad PERSONA con atributos Nombre, DNI, Direccin, etc. o

CONJUNTO DE ENTIDADES: Coleccin de entio dades del mismo tipo que comparten propiedades.
Ejemplo: Conjunto de personas clientes de un banco Conjunto de entidades CLIENT.

Conjunto de entidades PRESTEC-BANCARI representa el conjunto de todos los prstamos concedidos e por un banco.

EXTENSION de un conjunto de entidades: Las entidades individuales que constituyen un conjunto.


Ejemplo: Todos los clientes de un banco son una extensin o del conjunto de entidades CLIENT. 10

Conjunto de entidades no necesariamente disjunto.


Ejemplo: EMPLEAT: Conjunto de entidades de todos los empleados de un banco. CLIENT: Conjunto de entidades de todos los clientes de un banco. Una entidad persona (Pepe Pinto) puede estar como extensin de EMPLEAT, de CLIENT o de ambos conjuntos o de entidades a la vez.

BASE DE DATOS: Coleccin de conjuntos de entio dades, cada una de las cuales contiene un nmero de u entidades del mismo tipo.
Para simplicar la nomenclatura, a partir de ahora se cambiarn las a deniciones: CONJUNTO DE ENTIDADES ENTIDAD = = ENTIDAD INSTANCIACION DE ENTIDAD

BASE DE DATOS: Coleccin de entidades, cada una o de las cuales contiene un nmero de instanciaciones de u entidad del mismo tipo.

11

DIAGRAMA E-R: Entidades son representadas mediante cuadrados.

12

ATRIBUTO
Descripcin de propiedades que tiene cada instanciacin o o de entidad. Cada entidad tiene un nico valor por atributo. u
Ejemplo: Atributos de la entidad CLIENT: Nom, DNI, Carrer, Ciutat. Atributos de la entidad PRESTEC: Nmero-Prstec, u e Import.

Cada atributo tiene asociado un dominio. Cada instanciacin en una entidad es descrito por un o conjunto de parejas (atributo,valor), una por cada atributo de la entidad:
Ejemplo: { (Nom,Lpez), (DNI,67789901), (Carrer,Major), (Ciutat, o Peguerinos) }

13

TIPOS DE ATRIBUTOS:
SIMPLES - COMPUESTOS: Atributo simple: No se puede subdividir en ms atria butos. Atributo compuesto: Atributo que se puede subdividir en atributos ms simples. a Permite agrupar atributos relacionados semnticamente. a JERARQUIA DE ATRIBUTOS
Ejemplo: Entidad CLIENT (Nom-Client, Adrea-Client), on c Nom-Client(Nom, Cognom1, Cognom2) Adrea-Client(Carrer, Ciutat, Prov c ncia, Codi-Postal) Carrer(Nmero-Carrer, Nom-Carrer, Pis) u

14

MONOVALORADOS - MULTIVALORADOS: Atributo monovalorado: Atributo que tiene un slo o valor por cada instanciacin de entidad. o
Ejemplo: Atributos DNI, Nom.

Atributo multivalorado: Atributo que tiene ms de un a valor por cada instanciacin de entidad. o mites inferior y superior para el Pueden denirse l nmero valores del atributo. u
Ejemplo: Atributo Nom-Subordinat en la entidad EMPLEAT Un empleado puede tener varios subordinados.

15

VALOR NULO (NULL): Valor que toma un atributo de una instanciacin de eno tidad cuando sta no tiene valor para el atributo. e Signicados del valor nulo: VALOR NO APLICABLE: No tiene sentido dar un valor de atributo a la instanciacin. o VALOR PERDIDO: Valor existe pero no se tiene. VALOR NO CONOCIDO: No se sabe si existe o no valor para la instanciacin. o

Ejemplo: DNI=NULL: Persona tiene DNI pero no se sabe qu Nmero es. e u Ejemplo: Nmero-Pis=NULL: u Direccin sin atributo piso (una casa). o a Existe el piso, pero no se sabe cul es. No se sabe si la direccin corresponde a un bloque de pisos o o a una casa.

16

DERIVADO: Atributo con valor que se puede obtener de los valores de otros atributos o entidades.
Ejemplo: Entidad CLIENT con atributo Prstecs, que representa e el nmero de prstamos que tiene el cliente en el banco. u e Atributo Prstecs derivable contando el nmero de instanciaciones e u prstamo asociadas a cliente. e

Ejemplo: Entidad EMPLEAT con atributos Data-Inici, Antiguitat, que representan la fecha de incorporacin a la empresa y la o antigedad del trabajador en la empresa. u Atributo Antigedad derivable de la Data-Inici u Antigedad = Data-Actual - Data-Inici u

17

Ejemplo: BASE DE DATOS BANCARIA. Formada por un conjunto de entidades y atributos:


CLIENTE(Nombre-cliente,DNI,Calle-Cliente,Ciudad-Cliente) PRESTAMO(Nmero-Prstamo,Importe) u e COMPTE(Nmero-Cuenta,Saldo) u SUCURSAL(Nombre-Sucursal,Ciudad,Activos)

DIAGRAMA E-R: Atributos son representados mediante elipses.

18

INTERRELACIONES
Asociacin entre diferentes instanciaciones de entidad. o
Ejemplo: Interrelacin que asocia el cliente Lpez con el prstamo o o e P-15, signica que Lpez es cliente con el prstamo P-15. o e

o CONJUNTO DE INTERRELACIONES: Coleccin de interrelaciones del mismo tipo, es decir, entre las mismas entidades y con mismo signicado. Denicin: Sean las entidades E1 , E2 , . . . , En , se dene o un conjunto de interrelaciones R como el subconjunto {(e1, e2 . . . en )|e1 E1, e2 E2 , . . . , en En }
o on (e1 , e2 , . . . , en ) es una interrelacin.

19

Ejemplo: Entidades CLIENT i PRESTEC. Conjunto de interrelaciones PRESTATARI asocia clientes y prstamos. e

Ejemplo: Entidades PRESTEC y SUCURSAL. Con junto de interrelaciones SUCURSAL-PRESTEC asocia sucursales y prstamos. e PARTICIPACION: Asociacin entre entidades o entre o instanciaciones de entidades. Entidades E1 , . . . , En PARTICIPAN en el conjunto de interrelaciones R.
Ejemplo: Instanciacin de entidad CLIENT Lpez y la instanciao o cin de entidad PRESTEC P-15 participan en la interrelacin o o PRESTATARI.

Interrelacin signica en el mundo real que el cliente Lpez tiene o o un prstamo con el banco, numerado como P-15. e 20

PAPEL: Funcin o signicado que describe una instano ciacin de entidad en una interrelacin. Signicado de o o la interrelacin. o Describe una propiedad del mundo real. No se especica cuando la interrelacin es entre dos o entidades diferentes. o Si la interrelacin es entre la misma entidad (interrelacin unaria o recursiva), la entidad participa o en la interrelacin ms de una vez con diferentes o a signicados (papeles).
Ejemplo: Entidad EMPLEADO, con una interrelacin unaria sobre o entidad: TRABAJA-PARA con dos papeles: DIRECTOR, con pares ordenados (Jefe-1,Empleado-1) SUBORDINAT, con pares ordenados (Empleado-1,Jefe-1)

21

INTERRELACIONES CON ATRIBUTOS: Interrelacin con atributos descriptivos asociados. o


Ejemplo: Interrelacin IMPOSITOR entre entidades CLIENTE y o CUENTA se le asocia el atributo Fecha-Acceso para especicar la fecha ms reciente en la cual el cliente ha accedido a su cuenta. a

22

GRADO DE UNA INTERRELACION: Nmero de u entidades implicadas en una interrelacin. o Tipos: Unaria: Interrelacin con la misma entidad (grado o 1). Binaria: Interrelacin entre dos entidades (grado o 2). Interrelacin ms usual. o a Ternaria: Interrelacin entre tres entidades (grado o 3).
Interrelacin poco frecuente. o Ms restrictiva que corresponendientes binarias (trampa a de conexin). o Ejemplo: Interrelacin CPS. o Instancia (Lpez,P-15,Figueres) signica que el cliente o Lpez tiene el prstamo P-15 en la sucursal de Figueres. o e

n-ARIAS: Interrelacin entre n entidades. o frecuente.

Poco
23

Para simplicar la nomenclatura, a partir de ahora se cambiarn las deniciones: a


CONJUNTO DE INTERRELACIONES INTERRELACION = = INTERRELACION INSTANCIACION DE INTERRELACION

DIAGRAMA E-R: Interrelaciones son representadas mediante rombos.

24

LAZOS DE CORRESPONDENCIA
Lazos en los cuales el contenido de la BD se ha de adaptar. De dos tipos: Correspondencia de cardinalidades Dependencias de existencia.

25

Correspondencia de cardinalidades
Tambin denominada razn de cardinalidades. e o Expresa el nmero de instanciaciones de entidades a las u cuales la otra entidad puede estar asociada mediante la interrelacin. o Caracter stica muy til que se aplica a las interrelaciones u binarias.

26

Para una interrelacin binaria R entre las entidades A y o B, la correspondencia de cardinalidades puede ser: UNO a UNO (1-1)
Una instancia de A se asocia como mucho a una instancia de B. Una instancia de B se asocia como mucho a una instancia de A.

UNO a VARIOS (1-n)


u Una instancia de A se asocia a cualquier nmero de instancias de B. Una instancia de B se asocia como mucho a una instancia de A.

27

VARIOS a UNO (n-1)


Una instancia de A se asocia como mucho a una instancia de B. u Una instancia de B se asocia a cualquier nmero de instancias de A.

VARIOS a VARIOS (n-n)


Una instancia de A se asocia a cualquier nmero de insu tancias de B. Una instancia de B se asocia a cualquier nmero de insu tancias de A.

28

Correspondencia de cardinalidad en una interrelacin deo pende del mundo que se pretende modelar, denido en el conjunto de restricciones espec cas.
Ejemplo: Interrelacin PRESTATARIO entre entidades CLIENTE o STAMO. y PRE Correspondencia 1-n: Un cliente puede tener diversos prstamos. e Un prstamo slo puede ser de un cliente. e o Correspondencia n-n: Un cliente puede tener diversos prstamos. e Un prstamo puede ser de diversos clientes. e

29

Segn la correspondencia, los atributos de la interrelacin u o pueden situarse en diferentes lugares. Correspondencia 1-1: Atributos de la interrelacin o pueden estar situados en la interrelacin o en cualo quiera de las dos entidades. Correspondencia 1-n, n-1: Atributos de la interrelacin pueden estar situados en la interrelacin o o o en la entidad que tenga las n instanciaciones.
Ejemplo: Interrelacin IMPOSITOR(Fecha-Acceso) con coro respondencia 1-n entre las entidades CLIENTE(Nombre-Cliente) y CUENTA(Nmero-Cuenta). u Atributo de la interrelacin Fecha-Acceso puede estar asocio ado a la entidad COMPTE.

Eleccin de situar los atributos en la entidad o la interrelacin o o dene el modelo a representar. Situar el atributo en la interrelacin indica que el atributo o corresponde a una accin ligada a las dos entidades, no o a una sola entidad. 30

Correspondencia n-n: Atributos de la interrelacin o situados en la interrelacin. o


Ejemplo: Interrelacin IMPOSITOR con correspondencia o n n entre las entidades CLIENTE(Nombre-Cliente) y CUENTA(Nmero-Cuenta) u Atributo de la interrelacin Data-Accs puede situarse: o e En CLIENTE: Una nica fecha de acceso por cliente u (la ltima), sin considerar en qu cuenta se ha hecho el u e acceso. En CUENTA: Unica fecha de acceso por cuenta, independientemente del cliente que haya accedido (el ltimo). u En INTERRELACION: Una fecha de acceso por cliente y cuenta.

31

Dependencia de existencia
Denicin: Dadas dos entidades A,B, se dice que la o entidad A tiene dependencia de existencia de B Una instanciacin de A depende de la existencia de o la instanciacin de B. o Si una instanciacin de B se borra, se han de borrar o las instanciaciones dependientes de ella en A. B: Entidad dominante. A: Entidad subordinada.
Ejemplo: Entidades PRESTAMO i PAGO (pagos del prstamo). e PRESTAMO(Nmero-Prstamo,Importe) u e PAGO(Nmero-Pago,Fecha-Pago,Importe-Pago) u Interrelacin PRESTAMO-PAGO con correspondencia 1-n o Cada prstamo tiene diversos pagos. e Cada pago tiene asociado un prstamo. e e Si se borra un prstamo, hay que borrar los pagos asociados al prstamo. e Si se borra un pago del prstamo NO hay que borrar el e prstamo. e 32

Denicin: La participacin de una entidad E en una o o interrelacin R es TOTAL si toda instancia de E paro ticipa al menos en una instancia de R. Denicin: La participacin de una entidad E en una o o interrelacin R es PARCIAL si algunas (no todas) las o instanciaciones de E participan en instancias de R. En la dependencia de existencia A,B, La participacin de la entidad SUBORDINADA es o TOTAL en la interrelacin. o La participacin de la entidad DOMINANTE es PARo CIAL en la interrelacin. o

Ejemplo: Interrelacin PRESTAMO-PAGO, o La participacin de la entidad PAGO es TOTAL en la intero relacin. o Todo pago interrelacionado con PRESTAMO. La participacin de la entidad PRESTAMO es PARCIAL en o la interrelacin. o Prstamos NO interrelacionados con pago e (Prstamos que no se han empezado a pagar) e

33

DIAGRAMA E-R: Correspondencias a uno son representadas mediante una echa dirigida a la entidad a uno.

34

CLAVES
Permiten distinguir una instancia dentro de una entidad. Entidades e interrelaciones con atributos CLAVES

Claves en entidades
SUPERCLAVE: Conjunto de uno o ms atributos que permiten a identicar de forma nica una instancia dentro de una entidad. u Caracter stica de UNICIDAD, pero NO de MINIMALIDAD Ejemplo: Entidad EMPLEADO: DNI o Nombre-Empleado,DNI son SUPERCLAVES. Nombre-Empleado NO es SUPERCLAVE. CLAVE CANDIDATA: Superclave con caracter stica de minimalidad. Exemple: Entidad EMPLEAT con claus candidates: Cdigo-Empleado, nico para cada empleado. o u DNI. Nombre-Empleado,Fecha-Nacimiento,Direccin-Empleado, pues o es improbable dos personas con los mismos valores. CLAVE PRIMARIA: Clave candidata escogida por el diseador. n Propiedad que se asigna a la entidad, no a las instancias. 35

Claves en interrelaciones Denicin: Sea R una interrelacin, con o sin atributos o o descriptivos, entre las entidades E1 , E2 , . . . , En , y CP (Ei ) la clave primaria de la entidad Ei , suponiendo nombres de claves nicos entre entidades, u se dene una SUPERCLAVE DE LA INTERRELA CION R - SC(R) de la siguiente forma: SC(R) = CP (E1) CP (E2 ) . . . CP (En )

Atributos de la clave primaria dentro de una interrelacin o depende de la correspondencia de cardinalidad de la interrelacin. o

36

Ejemplo: Interrelacin CLIENTE-BANQUERO, entre o las entidades CLIENTE y EMPLEADO, describiendo la asociacin de un cliente con su banquero. o
Correspondencia n-n, con atributo Tipo, describiendo el tipo de relacin cliente-banquero. o SC(CLIENTE-BANQUERO) = CP (CLIENTE) CP (EMPLEADO)

Correspondencia n-1, sin atributos en interrelacin. o SC(CLIENTE-BANQUERO) = CP (CLIENTE) CP (EMPLEADO) CP (CLIENTE-BANQUERO) = CP (CLIENTE)

Correspondencia 1-1, sin atributos en interrelacin. o SC(CLIENTE-BANQUERO) = CP (CLIENTE) CP (EMPLEADO) CP (CLIENTE-BANQUERO) CP (CLIENTE-BANQUERO) = = CP (EMPLEADO) o CP (CLIENTE)

DIAGRAMA E-R: Claves primarias son representadas como atributos subrayando el nombre del atributo.

37

ENTIDADES FUERTES Y DEBILES


Toda dependencia de existencia dene una entidad fuerte y una dbil. e Entidad fuerte:
Entidad que tiene una clave primaria. Entidad dominante en una dependencia de existencia.

Entidad dbil: e
Entidad que no tiene sucientes atributos para formar una clave primaria. Ha de formar parte de una interrelacin 1-n sin atributos. o Todo atributo se puede poner en la entidad dbil. e Entidad subordinada en una dependencia de existencia.

Ejemplo: Entidad PAGO(Nmero-Pago,Fecha-Pago,Importe-Pago) u Entidad dbil, sin clave primaria, pues Nmero-Pago nico para un e u u prstamo pero no nico para todos los prstamos. e u e Ms de una instanciacin de entidad con los mismos valores. a o

38

DISCRIMINANTE DE UNA ENTIDAD DEBIL: Atributo o atributos que permiten distinguir las instancias de entidad dbil que dependen de una instancia de entidad e fuerte.
Ejemplo: Entidad PAGO con discriminante Nmero-Pago. u Atributo Nmero-Pago es nico en un prstamo (entidad furte). u u e

Denicin: Dada A una entidad dbil asociada a la eno e titat fuerte B, y DIS(A) com el discriminante de la entidad A, se dene CP (A) como la CLAVE PRIMARIA DE LA ENTIDAD DEBIL A de la siguiente forma: CP (A) = DIS(A) CP (B)
Ejemplo: Entidad dbil PAGO(Nmero-Pago,Fecha-Pago, Importe-Pago), con e u STAMO(Nmero-Prstamo, Importe), entidad fuerte PRE u e CP (PAGO) = Nmero-Pago Nmero-Prstamo u u e

Entidad dominante es el propietario de la entidad dbil. e

INTERRELACION DE IDENTIFICACION: Interrelacin que asocia una entidad fuerte y una dbil. o e
39

DIAGRAMA E-R: Entidades dbiles e interrelaciones e de identicacin son representadas mediante l o neas dobles. Los discriminantes de entidades dbiles se subrayan con e l nea punteada.

40

DIAGRAMA ENTIDAD-RELACION
Representacin de la estructura lgica y semntica de o o a una BD. Diagrama claro y simple, bastante utilizado en diseo n de BD. Components:
Rectngules para representar entidades. a Elipses para representar atributos. Rombos para representar interrelaciones. L neas continuas que unen Atributos con entidades. Entidades con interrelaciones. Nombres de atributo subrayados para representar claves primarias. Elipses dobles que representan atributos multivalorados. Elipses discontinuas que representan atributos derivados. L neas dobles para indicar la participacin total de una entio dad en una interrelacin. o Etiquetas de l nea para representar papeles de las interrelaciones. 41

42

Ejemplo:

43

Interrelaciones:

Atributos asociados a interrelaciones:

44

Papeles entre interrelaciones:

Interrelacin ternaria: o

45

Model E-R extendido


Tambin denominado model orientado a objeto. e Modelo con extensiones adicionales que cubren limitaciones mancances del Modelo E-R. Extensions: Especializacin - Generalizacin o o Herencia de atributos Lazos de diseo n Agregacin o

46

ESPECIALIZACION
Designacin de subgrupos de entidades (entidades de o bajo nivel) dentro de una entidad (entidad de alto nivel). Una entidad tiene:
Atributos COMUNES a todos los subgrupos. Atributos PROPIOS para cada subgrupo.

Ejemplo: Entidad CUENTA(Nmero-Cuenta,Saldo) representando u las cuentas de un banco. Se pueden denir dos subgrupos: e CUENTA-AHORRO(Tipo-Inters) CUENTA-CORRIENTE(Descubierto)

Una entidad puede especializarse en ms de una caraca ter stica, deniendo diferentes tipos de subgrupos.
Ejemplo: Entidad CUENTA con diferentes especializaciones y subgrupos: Especializacin CUENTA-CORRIENTE, CUENTA-AHORRO. o Especializacin CUENTA-EMPRESA, CUENTA-PERSONAL, o CUENTA-BENEFICA.

47

JERARQU DE ESPECIALIZACIONES: Una insIA tancia de entidad puede pertenecer a varias especialitzaciones.
Ejemplo: Especializacin de la especializacin CUENTA-CORRIENTE o o de la entidad CUENTA: CUENTA-NORMAL(Nmero-Movimientos), dando 3 movimienu tos gratis. COMPTE-OR(Pago-Inters,Saldo-M e nimo), con inters varie able y saldo m nimo. CUENTA-SENIOR(Fecha-Nacimiento), cuenta para mayors de 65 aos, con ventajas scales. n

DIAGRAMA E-R: Especializaciones son representadas mediante un tringulo etiquetat como ES, de donde surgen l a neas hacia los subgrupos de entidades (cuadrados) relacionados por atributos (elipses).

48

GENERALIZACION
Proceso inverso al de la especializacin. Se aplican o ambos procesos (especializacin y generalizacin) para o o construir el esquema E-R extendido. Agrupar entidades con atributos comunes en una entidad superior (superclase) de nivel ms alt. a Entidades agrupadas: subclases de nivel ms bajo a Proceso aplicado dentro e una estrategia de diseo bottomn up, deniendo entidades simples y agrupandolas. Agrupamiento de entidades elimina la redundancia. DIAGRAMA E-R: No es distinguen los procesos de especializacin y generalizacin, representndose de la o o a misma forma.

49

Propiedades de las especializaciones: (a) Herencia de atributos (b) Lazos de diseo n

(a) Herencia de atributos


Propiedad importante de las entidades de alto i bajo nivel, denidas mediante la especializacin y la generalo izacin. o Atributos de entidades de alto nivel son heredados por las entidades de nivel inferior.
Ejemple: Entidades de nivel bajo CUENTA-CORRIENTE y CUENTAAHORRO heredan atributos de la entidad CUENTA.

50

Entidades de nivel bajo tambin heredan la participacin e o en interrelaciones de las cuales forma parte la entidad de nivel ms alto. a
Ejemplo: Entidades CUENTA-CORRIENTE,CUENTA-AHORRO heredan la relacin IMPOSITOR, en la cual participa la entidad o CUENTA.

Herencia puede tenir una estructura jerrquica. a RET ICULO: Entidad que es al nivel ms bajo de una a interrelacin del tipo ES. Tiene ms de una entidad de o a nivel alto.
51

(b) Lazos de diseo n


Denidas por el diseador de la Base de Datos. n Determinar qu instanciaciones de entidad pueden ser e miembros de una entidad de nivel ms bajo. a Propiedades de los lazos: 1. Denicin o 2. Carcter a 3. Completitud

52

1. Denicin o Forma en la cual se dene una instanciacin de entidad o de alto nivel a una entidad de nivel ms bajo. a Dos formas: Denido por condicin: Pertenencia de una inso tanciacin a una entidad de nivel ms bajo segn o a u una condicin expl o cita sobre un atributo.
Ejemplo: Entidad COMPTE con atributo Tipus-Compte. Instanciaciones con Tipus-Compte=Corrent, incluidas en el subgrupo COMPTE-CORRENT. Instanciaciones con Tipus-Compte=Estalvi, incluidas en el subgrupo COMPTE-ESTALVI. Generalizacin denida por el atributo Tipus-Compte o

o Denido por el usuario: Asignacin de una instanciacin a un subgrupo es hecha por el usuario. o Asignacin no sometida a ninguna condicin exo o pl cita. Asignacin de cada instanciacin una a una por o o separado.

53

2. Carcter a Pertenencia de una instanciacin a entidades de nivel o bajo. Dos tipos: Entidad disjunta: Instanciacin pertenece a una o nica entidad de nivel bajo. u
Ejemplo: Una instanciacin de CUENTA en subgrupo CUENTAo AHORRO no puede estar en subgrupo CUENTA-CORRIENTE.

o Entidad solapada: Instanciacin puede pertenecer a ms de una entidad de nivel bajo. a


Ejemplo: Entidad EMPLEAT, donde un director puede participar en ms de un proyecto, denido cada proyecto como a subgrupo.

54

3. Completitud Especica si las instanciaciones de una entidad de nivel alto estn o no inclu a das en las entidades de nivel ms a bajo. Dos tipos: TOTAL: TODA instanciacin de entidad de alto o nivel ha de pertenecer a una entidad de nivel ms a bajo. PARCIAL: Existen instanciaciones de entidad de alto nivel que no pertenecen a una entidad de nivel ms bajo. a
Ejemplo: Generalizacin COMPTE-CORRENT,COMPTE-ESTALo VI de la entidad COMPTE tiene lazo de completitud total. Toda cuenta ha de ser de uno de los dos tipos, corriente o de ahorro (estalvi) y por tanto ha de estar en uno de los dos subgrupos.

55

Entidades de nivel alto obtebidas por GENERALIZACION (de ms simples a ms complejas) acostumbran a tener a a lazos de completitud TOTALES (se incluyen todos los elementos en la entidad de nivel bajo). Entidades de nivel alto obtenidas por ESPECIALIZACION (de ms complejas a ms simples) acostumbran a tener a a lazos de completitud PARCIALES (con instanciaciones no clasicables).
Ejemplo: Generalizacin de la entidad CUENTA a partir de las o entidades CUENTA-CORRIENTE y CUENTA-AHORRO dene un tipo de lazo: Denido por condicin. o De carcter disjunto. a De completitud total.

56

Sobre els lazos, hay que denir ciertas condiciones de insercin y borrado: o Si el lazo de completitud es TOTAL, cuando se aade una instancia en la entidad de nivel ms alto n a hay que insertar esta instancia en una de las entidades de nivel ms bajo. a Si el lazo es DEFINIDO POR CONDICION, cuando se aade una instancia en la entidad de nivel alto se n ha de comprobar la condicin, para poder insertar o la instancia en una entidad de nivel ms bajo. a Si se borra una instancia de la entidad de nivel alto, hay que borrarla de las entidades de nivel ms bajo a (borrando UNA si el lazo es DISJUNTO, o DIVERSAS si el lazo es SOLAPADO).

57

AGREGACION
Abstraccin en la que un conjunto de interrelaciones y o entidades se tratan como una nica entidad de nivel ms u a alto respecto el resto de entidades del esquema. Consecuencia de una limitacin en el modelo E-R, que o no permite expresar interrelaciones entre interrelaciones.
Ejemplo: BD con informacin de clientes y prstamos. Dos intero e STEC: relaciones entre entidades CLIENT i PRE PRESTATARI: Interrelacin con correspondencia n n. o o RESPONSABLE-PRESTEC: Interrelacin con correspondencia 1 n. Cada cliente-prstamo tiene un nico empleado responsable e u del prstamo con atributos (Nombre-Empleado, DNI-E, Nme u Tel). Se quiere combinar ambas interrelaciones. Sin agregacin, pueden o haber dos soluciones: 1. COMBINAR ambas interrelaciones: Responsable-Prstamo e assignado para cada cliente-prstamo com atributos a la ine terrelacin. o Datos del empleado Responsable-Prstamo repetidos por e cada pareja Client-Prstamo, tantos como clientes tiene el e prstamo e REDUNDANCIA

58

2. SEPARAR ambas interrelaciones:

Cada pareja cliente-prstamo est en las dos interrelaciones e a ` (REDUNDANCIA). Hay que garantizar que toda instanciacin a la interrelacin o o responsable-pr`stamo es tambin a prestatario. e e e e responsable-pr`stamo se puede asociar a todo cliente y prstamo independientemente de las instanciaciones asociadas a la interrelacin prestatario. o n e Este diseo permite que un prstamo no tenga responsable asignado an. u 59

AGREGACION: Agrupar entidades CLIENTE, PRESTAMO e interrelacin PRESTATARIO en una entidad PRESo TATARIO, que es tratada com cualquier otra entidad en el esquema. Interrelacin RESPONSABLE-PRESTAMO entre entio dades PRESTATARIO y EMPLEADO.

responsable-prstamo se relaciona nicamente con los prstamos e u e existentes a la interrelacin prestatario, no con cualquier cliente o o prstamo presente en las entidades. e n e Este diseo permite que un prstamo no tenga responsable asignado an. u

60

Criterios de diseo de un esquema E-R n


Deniciones de entidad e interrelacin son pooc preo cisas, pudiendolas describir de diferentes formas para un mismo problema de diseo. n Criterios de diseo de un esquema E-R: n Uso de entidades o atributos Us de entidades o interrelaciones Interrelaciones binarias o n-arias

61

USO DE ENTIDADES O ATRIBUTOS


PROBLEMA: Dado un evento (objeto o accin) a o modelar en la BD, como representarlo en el modelo E-R, como entidad o como atributo?. No hay una metodolog ptima. a o
Ejemplo: Objeto EMPLEADOS, con propiedades nombre y nmero u de telfon. e Dos modelos de representacin: o 1. Entidad EMPLEADO con atributos Nombre, DNI, Nmerou Telfono. e SUPOSICION IMPL ICITA: Cada empleat tiene un nico nmero u u de telfono. e u 2. Entidades EMPLEADO(Nombre,DNI) y NUMERO-TELEFONO(N FONO, mero, Ubicacin), con interrelacin EMPLEADO-TELE o o asociando un empleado con todos los telfonos que tiene. e

Cada empleado puede tener ms de un telfono. a e Un telfono puede estar compartido por ms de un eme a pleado. No se considera que un nmero de telfono tenga difeu e rentes ubicaciones (supletorios). 62

USO DE ENTIDADES O INTERRELACIONES


PROBLEMA: Dado un evento (objeto o accin) a o modelar en la BD, com representarlo en el model ER, como entidad o como interrelacin?. o No hay una metodolog ptima. a o SUGERENCIA: Denir como interrelacin una accin o o (tipo de evento) entre entidades y evaluar las propiedades de esta denicin. o
Ejemplo: Evento prstamo bancario. e Dos modelos de representacin: o u e 1. Entidad PRESTAMO(Nmero-Prstamo,Importe) SUPOSICION IMPL ICITA: Un slo valor por nmero de prstamos o u e e Importe.

63

2. Interrelacin PRESTAMO(Nmero-Prstamo,Importe,Cuenta) o u e entre entidades CLIENTE y SUCURSAL. Cada prstamo denido como una instanciacin de la intere o STAMO. relacin PRE o

Si todo prstamo se asocia a un nico cliente y a una e u nica sucursal, el modelo es satisfactorio. u Si diversos clientes comparten un prstamo, hay que denir e una instanciacin para cada cliente del prstamo, replio e cando los atributos (Nmero-Prstamo,Importe,Cuenta) u e para cada prstamo. e REDUNDANCIA Tratada en la Teor de la Normalizacin a o

64

INTERRELACIONES BINARIAS o n-ARIAS


Interrelaciones binarias ms fciles de entender. a a Se pueden denir esquemas E-R nicamente con interu relaciones binarias.

65

Toda interrelacin n-aria se puede transformar en n ino terrelaciones binarias. Proposicin: Dada una interrelacin ternaria R con las o o entidades A,B,C,

se puede sustituir en un esquema E-R por:


Entidad E con: Atributos de la interrelacin R. o Atributos que permiten distinguir las instanciaciones de R (Claves Primarias de A,B,C). Interrelacin RA entre las entidadse E,A. o Interrelacin RB entre las entidades E,B. o o Interrelacin RC entre las entidades E,C.

66

de forma que para cada instanciacin de R(ai , bi , ci ) es o crea:


Instanciacin en entidad E o Instanciacin (ei , ai ) RA o Instanciacin (ei , bi ) RB o Instanciacin (ei , ci ) RC o

No siempre es deseable denir el esquema E-R con interrelaciones binarias: El atributo de identicacin de la entidad E y las o interrelaciones binarias adicionales incrementan la complejidad del diseo y los requisitos de almacen namiento. o a a o La interrelacin n-`ria aporta ms informacin que las correspondientes binarias. TRAMPA DE CONEXION

67

Diseo de un esquema E-R n


Modelo E-R da una gran exibilitat para disear un esn quema de BD a partir de unos requisitos de usuarios especicados. Diseador de la BD ha de tomar decisiones del tipo: n
Utilizar un atributo o una interrelacin para representar un o evento (objeto o accin). o Representar un evento como una entidad o una interrelacin. o Utilizar interrelaciones n-arias o binarias. Utilizar o no entidades fuertes y dbiles para denir un evento. e Usar o no la especializacin y la generalizacin para denir o o una jerarqu de interrelaciones, modularizando la informacin a o dentro de la BD. Usar la agregacin de forma apropiada. o

MODELO CONCEPTUAL DE DATOS: Proporciona al diseador de la BD un marco conceptual donde n especicar los requisitos de datos de los usuarios de la BD y como se estructurar la BD para cumplir estos a requisitos. DISENO CONCEPTUAL
68

Ejemplos
Ejemplo 1.1: Secretar Universidad a
Relacin entre profesores y alumnos teniendo en cuenta asignatuo ras, horarios, clases. Para cada profesor se guarda Nombre-Profesor y DNI. Para cada estudiante se guarda Nombre-Estudiante, DNI y Nota de cada asignatura. Para cada asignatura se guarda Cdigo-Asignatura, Nombre-Asigo natura, Horario, Aula. Supuestos semnticos: a Un profesor imparte una nica asignatura al estudiante. u Cada asignatura tiene un nico profesor, horario y aula donde u se imparte la clase.

PROBLEMA: Se repite la informacin de la asignatura (Cdigoo o A, Nombre-A, Horario, etc.) tantas veces como estudiantes tenga la asignatura. 69

Ejemplo 1.2: Secretar Universidad a


Relacin entre profesores y alumnes teniendo en cuenta asignato uras, horarios, clases. Para cada profesor se guarda Nombre-Profesor y DNI. Para cada estudiante se guarda Nombre-Estudiante, DNI y Nota de cada asignatura. Para cada asignatura se guarda Cdigo-Asignatura, Nombre-Asignatura, o Horario, Aula. Supuestos semnticos: a a Un profesor puede impartir ms de una asignatura al estudiant. Cada asignatura tiene un nico profesor, horario y aula donde u se imparte la clase.

70

Ejemplo 1.3: Secretar Universidad a


Relacin entre profesores y alumnos teniendo en cuenta asignato uras, horarios, clases. Para cada profesor se guarda Nombre-Profesor y DNI. Para cada estudiante se guarda Nombre-Estudiante, DNI Nota de cada asignatura. Para cada asignatura se guarda Cdigo-Asignatura, Nombre-Asignatura, o Horario, Aula. Supuestos semnticos: a Un profesor puede impartir ms de una asignatura al estudia ant. Cada asignatura tiene un nico profesor, pero ms de un hou a rario y aula donde se imparte la clase.

71

Ejemplo 2: Compa transportista. na


Compa recoge envios de almacenes y los entrega a las tiendas. na De los almacenes hay que guardar Cdigo-Almacn y Ciudad donde o e se encuentra. De las tiendas hay que guardar Cdigo-Tienda y Ciudad donde se o encuentra. Supuestos semnticos: a Se han de realizar envios de gnero de los almacenes a las e tiendas. De cada envio interesa guardar Cdigo-Envio, Peso o y Volumen. Un grupo de envios con origen y destino comunes se agrupan en viajes, de los cuales hay que guardar el Cdigo-Viaje, o identicador nico del viaje y el Nmero de Envios. u u o Un camin transporta diversos viajes y entrega los diferentes envios a las tiendas correspondientes. De cada viaje, interessa saber qu camin lo ha hecho y la Fecha en la cual se ha e o hecho el viaje. Los camiones tienen diferente Cdigo, Capacidad y Peso para o transportar.

72

Ejemplo 3: BD de una liga de baloncesto.


Interesa guardar como informacin sobre el jugador el Nombre, DNI, o Direccin, Nm-Fitxa. o u Un jugador esta chado por un equipo. Del equipo interesa guardar la informacin sobre Nombre-Equipo, Direccin. o o De un partido interesa guardar Jornada, Equipo-Casa, EquipoFuera, Resultado. Se quiere llevar el control de los jugadores que participan en cada partido, los equipos que juegan, el resultado de cada partido y la puntuacin que ha hecho cada jugador en cada partido. o Supuestos semnticos: a Un jugador juega en un nico equipo toda la temporada. u Cada equipo tiene diversos jugadores y no todos juegan un partido. Dos equipos juegan dos partidos, uno en cada campo. Un equipo juega un partio en cada jornada.

73

PROBLEMA: Redundancia (Equip-C, Equip-F) en la entidad Partido.

OTRA SOLUCION:

74

Ejemplo 4: Compa de discos. na


Notown Records tiene una plantilla de msicos y han decidido u guardar la informacin en una BD. o Supuestos semnticos: a Interesa guardar como datos del msico Nombre, DNI, Diu reccin, Telfono. Msicos poco pagados comparten una dio e u reccin y cada direccin tiene un nico telfono. o o u e Para cada instrumento se ha de guardar Nombre-Instrumento, Cdigo-Instrumento, Clave Musical. o Para cada lbum se guarda Cdigo-Album, T a o tulo-Album, Fecha-Album, Nmero-CDs. u Para cada cancin se quiere guardar T o tulo y Duracin. o Cada msico toca instrumentos y un instrumento puede ser u tocado por diferentes msicos. u a o Cada lbum tiene un conjunto de canciones y cada cancin aparece nicamente en un lbum. u a Cada cancin es interpretada per uno o ms msicos y un o a u msico puede tocar varias canciones. u a u u Para cada lbum, nicamente hay un msico que hace de productor. Un msico puede producir diversos lbums. u a

75

76

Ejemplo 5: Catastro municipal.


Mantener informacin sobre las personas que viven en cada vivienda o como puede ser Nombre i DNI, de los propietarios de las viviendas y del jefe de familia de cada vivienda. De cada vivenda se quiere guardar Calle, Nmero y los Metros u Cuadrados. Supuestos semnticos: a Hay dos tipos de viviendas: u Casas: Vive una sola familia. Interesa guardar el Nmero de Plantas de la casa. Bloques de pisos: Conjunto de viviendas, donde en cada una habita una familia. Contiene un nmero variable de u pisos. De cada piso interesa guardar Escalera, Planta y Piso. Toda persona habita en una sola vivienda, considerada como vivienda habitual. Cada vivienda tiene un nico propietario. u Las viviendas estan en un nico barrio. u Los barrios estan divididos geogrcamente y hay que guardar a el Nombre y Extensin en Km. cuadrados. o u El nombre de las calles es nico dentro del municipio. Cada familia tiene un jefe de familia.

77

78

Ejemplo 6: BD Hospital
Supuestos semnticos: a Los pacientes se identican mediante Nombre, DNI, Direccin, o Edad. Mdicos se identican mediante Nombre, DNI, Especialidad, e Aos de Experiencia. n Cada compa farmacutica se identica por el Nombre, Dina e recin, Telfon. o e Para cada medicina se guarda el Nombre y la Frmula. Cada o medicina es fabricada por una Compa y el nombre es nico na u dentro de la Base de Datos. o Cada farmacia tiene un Nombre y Direccin. El nombre es nico en la Base de Datos. u e e Cada paciente tiene un mdico principal. Cada mdico tiene como m nimo un paciente y, a poder ser, ms de uno. a Toda farmacia vende medicinas a un precio por cada una. Una medicina puede ser vendida en diferentes farmacias y su precio puede variar de una farmacia a otra. e e Los mdicos recetan medicinas a los pacientes. Un mdico puede recetar una o ms medicinas a diferentes pacientes y a un paciente puede tener recetas de diferentes mdicos. Cada e receta tiene una fecha y una cantidad asociada. Si un mdico e receta la misma medicina al mismo paciente slo se guarda la o ltima receta. u Las compa farmaceuticas tienen contratos a largo plazo nas con las farmacias. Una compa puede contratar varias farna macias y una farmacia puede estar contratada por diferentes compa nas. Para cada contrato hay que guardar Fecha Inicio, Fecha Final, Texto. Las farmacias tienen un supervisor para cada contrato con una compa farmaceutica. En todo momento slo puede haber na o un supervisor por contrato, pero puede cambiar durante la vida del contrato. 79

80

Ejemplo 7: BD Universidad
Supuestos semnticos: a Los profesores se identican por Nombre, DNI, Edad, Categor a. Proyectos tienen Nmero Proyecto, Sponsor, Fecha Inicio, u Fecha Fin, Cantidad. Estudiantes se identican mediante Nombre, DNI, Edad, Estudios. Cada proyecto es dirigido por un nico profesor y pueden trau bajar uno o ms profesores. Los profesores pueden trabajar a en diferentes proyectos. En cada proyecto trabajan uno o ms estudiantes. a a Cuando un estudiante est becado en un proyecto ha de ser supervisado por un profesor. Estudiantes pueden trabajar en diferentes proyectos, supervisados cada uno por profesores diferentes o comunes en algunos proyectos. o o Departamentos se identican por Nombre, Cdigo, Direcin. Tienen un profesor que ejerce de Jefe de Departamento. o u Un profesor slo puede ser jefe de un nico departamento. Profesores trabajan en uno o ms departamentos. Para cada a departamento donde trabajan tienen asignada una dedicacin o en porcentaje. Estudiantes estan en un departamento, donde realizan los estudios. Cada estudiante tiene otro estudiante (consejero) que lo ayuda y aconseja en las asignaturas a cursar. 81

82

También podría gustarte