TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO...

82
TEMA 3 DISE ˜ NO. MODELO ENTIDAD-RELACI ´ ON 1. Dise˜no de una Base de Datos ................. 2 2. Modelo Entidad-Relaci´on ..................... 9 (a) Entidad, atributo, interrelaciones .......... 10 (b) Lazos de correspondencia, claves, entidades fuer- tes y d´ ebiles ............................. 25 (c) Diagrama E-R ........................... 41 3. Modelo E-R extendido ....................... 46 (a)Especializaci´on-Generalizaci´on ........... 47 (b)Agregaci´on .............................. 58 4. Criterios de dise˜no de un esquema E-R ....... 61 5. Dise˜no de un esquema E-R .................. 68 6. Ejemplos ................................... 69 1

Transcript of TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO...

Page 1: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

TEMA 3

DISENO.

MODELO ENTIDAD-RELACION

1. Diseno de una Base de Datos . . . . . . . . . . . . . . . . . 2

2. Modelo Entidad-Relacion . . . . . . . . . . . . . . . . . . . . . 9

(a) Entidad, atributo, interrelaciones . . . . . . . . . . 10

(b) Lazos de correspondencia, claves, entidades fuer-tes y debiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

(c) Diagrama E-R . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

3. Modelo E-R extendido . . . . . . . . . . . . . . . . . . . . . . . 46

(a) Especializacion - Generalizacion . . . . . . . . . . . 47

(b) Agregacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

4. Criterios de diseno de un esquema E-R . . . . . . . 61

5. Diseno de un esquema E-R . . . . . . . . . . . . . . . . . . 68

6. Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

1

Page 2: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Diseno de una Base de Datos

Sistema de Base de Datos: Pretende satisfacer lasnecesidades de informacion de diferentes usuarios, sobreun conjunto de datos comunes a todos ellos.

Ejemplo: Base de Datos de gestion de un banco. Sepretende satisfacer las siguientes necesidades de infor-macion:

• Presidente:

– Cuantas cuentas corrientes hay?

– Cuantas cuentas de ahorro?

– Cuantos clientes tiene el banco?

– Cuanto dinero se guarda en las cuentas, corrientes o deahorro?

• Jefe del Dept. de contabilidad:

– Cada cliente ha de recibir el saldo de su cuenta.

– Cada cliente ha de recibir los movimientos que genera sucuenta.

• Jefe del Dept. de prestamos:

– Informe de los pagos mensuales realizados para cada pres-tamo.

Para poder satisfacer estas necesidades hay que realizarun diseno de la Base de Datos.

2

Page 3: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

FASES DE DISENO DE UNA BASE DE DATOS

3

Page 4: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

FASES:

1. Captacion y analisis de requerimientos

Caracterizar de forma completa las necesidades que desean losusuarios de la BD, tanto en los datos como en las operacionesa realizar con los datos.

Entrevistas con los futuros usuarios de la BD para captar lasnecesidades.

Resultado:

• REQUISITOS DE DATOS: Necesidades de datos. Es-pecificacion de la informacion que se quiere guardar.

• REQUISITOS FUNCIONALES: Necesidades de manipu-lacion de datos. Especificacion de las operaciones a re-alizar con los datos.

2. Diseno conceptual de la BD

Una vez escogido el modelo abstracto que se quiere utilizar, eldisenador aplica los conceptos de este modelo para traducir losrequisitos de datos del usuario al modelo abstracto, formandoel esquema conceptual de la BD.

Validar el esquema conceptual sobre las transacciones especifi-cadas en los requisitos funcionales (consultas, actualizaciones,borrados, inserciones).

4

Page 5: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Implementacion del modelo conceptual sobre un sis-tema de base de datos concreto se realiza en dos fases:DISENO LOGICO y DISENO FISICO.

3. Diseno logico

Conversion del esquema conceptual de la BD al modelo dedatos que implementa el sistema de BD (usualmente el mo-delo de BD relacional).

↓ESQUEMA RELACIONAL DE BD

Definicion del conjunto de relaciones base que constituyen elnivel conceptual de la arquitectura ANSI/SPARC.

4. Diseno fısico

Definir las caracterısticas fısicas de la BD a partir del esquemade la BD.

Definicion del conjunto de ficheros que constituyen el esquema

interno de la arquitectura ANSI/SPARC.

5

Page 6: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

NIVELES DE MODELADO EN UNA BD

NIVEL EJEMPLO CONSTRUCCIONES

Esquema modelo E-R, objetos, interrelaciones,conceptual de BD modelo orientado a entidades

objetos

↓ ↓ modela ↓Esquema de BD relaciones y atributos persona, nombre, direccion,

de la BD DNI, empleado por,

↓ ↓ modela ↓Pepe viu al

Estado actual BD BD 13 Rue del Percebe

ESQUEMA DE BD:

• Estructura logica y semantica para registrar un conjunto dehechos de una realidad concreta.

• Esquema obtenido a partir del modelo conceptual de BD es-cogido.

6

Page 7: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

MODELO ABSTRACTO DE DATOS: Descripcionque posibilita la creacion de esquemas conceptuales deBD utilizados por aplicaciones concretas.

• Tambien denominado modelo conceptual de datos o mo-delo semantico de datos.

• Capturar la semantica o significado del entorno que se pre-tende modelar en la BD.

↓MODELADO SEMANTICO DE DATOS

• Desarrollado para incrementar la efectividad y la precision deldiseno de la BD.

↓Modelo de facil conversion a otros modelos (jerarquico,relacional, en red, orientado a objeto).

TIPOS DE MODELOS ABSTRACTOS:

• Modelo Binario-Semantico (Abrial, 1974)

• Modelo Entitat-Relacion (Chen, 1976)

• Modelo Semantico de Datos - SMD (Hammer-McLeod, 1981)

• Modelo de Datos Funcional (Shipman, 1981)

• Modelo Orientado a Objetos - Model E-R extendido

7

Page 8: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

MODELO ORIENTADO A OBJETOS:

• Modelo E-R extendido.

• Modelo abstracto de datos mas utilizado actual-mente.

• Basado en el modelo E-R de Chen, incorporandoconceptos de programacion orientada a objetos enlos modelos semanticos de datos:

– Especializacion - Generalizacion

– Agregacion

• Estudia el comportamiento de los datos, no de lasestructuras.

• Busca formas de manipular los datos, no de lasestructuras.

8

Page 9: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Modelo Entidad-Relacion

• Entity-Relationship Model

• Tambien denominado Model Entidad-Vınculo.

• Basado en una percepcion del mundo real.

• Consta de

– Entidades: Conjunto de eventos (objetos o acciones)basicos.

– Relaciones: Conjunto de interrelaciones entre las enti-dades.

• A partir de estos dos conceptos, el Modelo E-Rdefine otros que son utilizados para construir el mo-delo abstracto de la BD:

– Atributo

– Lazos de correspondencia

– Claves

– Entidades fuertes y debiles

• Estos elementos se representan graficamente me-diante un Diagrama E-R.

9

Page 10: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

ENTIDAD

Acontecimiento (objeto o accion) del mundo real quees distinguible del resto.

• Entidad concreta (objeto): Persona, libro, etc.

• Entidad abstracta (accion): Prestamo, vacaciones, etc.

Entidad tiene asignado un conjunto de propiedades (atrib-utos), con valores para identificar la entidad de formaunica.

Ejemplo: Entidad PERSONA con atributos Nombre, DNI,Direccion, etc.

CONJUNTO DE ENTIDADES: Coleccion de enti-dades del mismo tipo que comparten propiedades.

Ejemplo:

• Conjunto de personas ⇒ Conjunto de entidadesclientes de un banco CLIENT.

• Conjunto de entidades PRESTEC-BANCARI repre-senta el conjunto de todos los prestamos concedidospor un banco.

EXTENSION de un conjunto de entidades: Las enti-dades individuales que constituyen un conjunto.

Ejemplo: Todos los clientes de un banco son una extensiondel conjunto de entidades CLIENT.

10

Page 11: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Conjunto de entidades no necesariamente disjunto.

Ejemplo:• EMPLEAT: Conjunto de entidades de todos los em-

pleados de un banco.• CLIENT: Conjunto de entidades de todos los clientes

de un banco.

Una entidad persona (Pepe Pinto) puede estar como ex-tension de EMPLEAT, de CLIENT o de ambos conjuntosde entidades a la vez.

BASE DE DATOS: Coleccion de conjuntos de enti-dades, cada una de las cuales contiene un numero deentidades del mismo tipo.

Para simplificar la nomenclatura, a partir de ahora se cambiaran lasdefiniciones:

CONJUNTO DE ENTIDADES =⇒ ENTIDADENTIDAD =⇒ INSTANCIACION DE ENTIDAD

BASE DE DATOS: Coleccion de entidades, cada unade las cuales contiene un numero de instanciaciones deentidad del mismo tipo.

11

Page 12: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

DIAGRAMA E-R: Entidades son representadas me-diante cuadrados.

12

Page 13: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

ATRIBUTO

Descripcion de propiedades que tiene cada instanciacionde entidad.

Cada entidad tiene un unico valor por atributo.

Ejemplo:• Atributos de la entidad CLIENT: Nom, DNI, Carrer,

Ciutat.• Atributos de la entidad PRESTEC: Numero-Prestec,

Import.

Cada atributo tiene asociado un dominio.

Cada instanciacion en una entidad es descrito por unconjunto de parejas (atributo,valor), una por cada atri-buto de la entidad:

Ejemplo:{ (Nom,Lopez), (DNI,67789901), (Carrer,Major), (Ciutat,Peguerinos) }

13

Page 14: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

TIPOS DE ATRIBUTOS:

SIMPLES - COMPUESTOS:

Atributo simple: No se puede subdividir en mas atri-butos.

Atributo compuesto: Atributo que se puede subdividiren atributos mas simples.

Permite agrupar atributos relacionados semanticamente.↓

JERARQUIA DE ATRIBUTOS

Ejemplo: Entidad CLIENT (Nom-Client, Adreca-Client), on

• Nom-Client(Nom, Cognom1, Cognom2)

• Adreca-Client(Carrer, Ciutat, Provıncia, Codi-Postal)

• Carrer(Numero-Carrer, Nom-Carrer, Pis)

14

Page 15: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

MONOVALORADOS - MULTIVALORADOS:

Atributo monovalorado: Atributo que tiene un solovalor por cada instanciacion de entidad.

Ejemplo: Atributos DNI, Nom.

Atributo multivalorado: Atributo que tiene mas de unvalor por cada instanciacion de entidad.

• Pueden definirse lımites inferior y superior para elnumero valores del atributo.

Ejemplo: Atributo Nom-Subordinat en la entidad EMPLEAT

Un empleado puede tener varios subordinados.

15

Page 16: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

VALOR NULO (NULL):

Valor que toma un atributo de una instanciacion de en-tidad cuando esta no tiene valor para el atributo.

Significados del valor nulo:

• VALOR NO APLICABLE: No tiene sentido dar unvalor de atributo a la instanciacion.

• VALOR PERDIDO: Valor existe pero no se tiene.

• VALOR NO CONOCIDO: No se sabe si existe o novalor para la instanciacion.

Ejemplo: DNI=NULL:

• Persona tiene DNI pero no se sabe que Numero es.

Ejemplo: Numero-Pis=NULL:

• Direccion sin atributo piso (una casa).

• Existe el piso, pero no se sabe cual es.

• No se sabe si la direccion corresponde a un bloque de pisos oa una casa.

16

Page 17: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

DERIVADO:

Atributo con valor que se puede obtener de los valoresde otros atributos o entidades.

Ejemplo: Entidad CLIENT con atributo Prestecs, que representael numero de prestamos que tiene el cliente en el banco.

Atributo Prestecs derivable contando el numero de instanciacionesprestamo asociadas a cliente.

Ejemplo: Entidad EMPLEAT con atributos Data-Inici, Antigui-tat, que representan la fecha de incorporacion a la empresa y laantiguedad del trabajador en la empresa.

Atributo Antiguedad derivable de la Data-Inici

Antiguedad = Data-Actual - Data-Inici

17

Page 18: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

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

• CLIENTE(Nombre-cliente,DNI,Calle-Cliente,Ciudad-Cliente)

• PRESTAMO(Numero-Prestamo,Importe)

• COMPTE(Numero-Cuenta,Saldo)

• SUCURSAL(Nombre-Sucursal,Ciudad,Activos)

DIAGRAMA E-R: Atributos son representados me-diante elipses.

18

Page 19: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

INTERRELACIONES

Asociacion entre diferentes instanciaciones de entidad.

Ejemplo: Interrelacion que asocia el cliente ’Lopez’ con el prestamo

’P-15’, significa que Lopez es cliente con el prestamo P-15.

CONJUNTO DE INTERRELACIONES: Coleccionde interrelaciones del mismo tipo, es decir, entre lasmismas entidades y con mismo significado.

Definicion: Sean las entidades E1, E2, . . . , En, se defineun conjunto de interrelaciones R como el subconjunto

{(e1, e2 . . . en)|e1 ∈ E1, e2 ∈ E2, . . . , en ∈ En}

on (e1, e2, . . . , en) es una interrelacion.

19

Page 20: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplo: Entidades CLIENT i PRESTEC. Conjunto deinterrelaciones PRESTATARI asocia clientes y prestamos.

Ejemplo: Entidades PRESTEC y SUCURSAL. Con-junto de interrelaciones SUCURSAL-PRESTEC asociasucursales y prestamos.

PARTICIPACION: Asociacion entre entidades o entreinstanciaciones de entidades.

Entidades E1, . . . , En PARTICIPAN en el conjunto de in-terrelaciones R.

Ejemplo: Instanciacion de entidad CLIENT ’Lopez’ y la instancia-

cion de entidad PRESTEC ’P-15’ participan en la interrelacion

PRESTATARI.

↓Interrelacion significa en el mundo real que el cliente Lopez tiene

un prestamo con el banco, numerado como P-15.

20

Page 21: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

PAPEL: Funcion o significado que describe una instan-ciacion de entidad en una interrelacion. Significado dela interrelacion.

• Describe una propiedad del mundo real.

• No se especifica cuando la interrelacion es entre dosentidades diferentes.

• Si la interrelacion es entre la misma entidad (in-terrelacion unaria o recursiva), la entidad participaen la interrelacion mas de una vez con diferentessignificados (papeles).

Ejemplo: Entidad EMPLEADO, con una interrelacion unaria sobreentidad: ’TRABAJA-PARA’ con dos papeles:

• DIRECTOR, con pares ordenados (Jefe-1,Empleado-1)

• SUBORDINAT, con pares ordenados (Empleado-1,Jefe-1)

21

Page 22: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

INTERRELACIONES CON ATRIBUTOS: Interre-lacion con atributos descriptivos asociados.

Ejemplo: Interrelacion IMPOSITOR entre entidades CLIENTE y

CUENTA se le asocia el atributo Fecha-Acceso para especificar la

fecha mas reciente en la cual el cliente ha accedido a su cuenta.

22

Page 23: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

GRADO DE UNA INTERRELACION: Numero deentidades implicadas en una interrelacion.

Tipos:

• Unaria: Interrelacion con la misma entidad (grado1).

• Binaria: Interrelacion entre dos entidades (grado2). Interrelacion mas usual.

• Ternaria: Interrelacion entre tres entidades (grado3).

– Interrelacion poco frecuente.

– Mas restrictiva que corresponendientes binarias (trampade conexion).

Ejemplo: Interrelacion CPS.

Instancia (’Lopez’,’P-15’,’Figueres’) significa que el clienteLopez tiene el prestamo P-15 en la sucursal de Figueres.

• n-ARIAS: Interrelacion entre n entidades. Pocofrecuente.

23

Page 24: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Para simplificar la nomenclatura, a partir de ahora secambiaran las definiciones:

CONJUNTO =⇒ INTERRELACIONDE INTERRELACIONES

INTERRELACION =⇒ INSTANCIACIONDE INTERRELACION

DIAGRAMA E-R: Interrelaciones son representadasmediante rombos.

24

Page 25: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

LAZOS DE CORRESPONDENCIA

Lazos en los cuales el contenido de la BD se ha deadaptar.

De dos tipos:

• Correspondencia de cardinalidades

• Dependencias de existencia.

25

Page 26: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Correspondencia de cardinalidades

Tambien denominada razon de cardinalidades.

Expresa el numero de instanciaciones de entidades a lascuales la otra entidad puede estar asociada mediante lainterrelacion.

Caracterıstica muy util que se aplica a las interrelacionesbinarias.

26

Page 27: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Para una interrelacion binaria R entre las entidades A yB, la correspondencia de cardinalidades puede ser:

• UNO a UNO (1-1)

– Una instancia de A se asocia como mucho a una instanciade B.

– Una instancia de B se asocia como mucho a una instanciade A.

• UNO a VARIOS (1-n)

– Una instancia de A se asocia a cualquier numero de ins-tancias de B.

– Una instancia de B se asocia como mucho a una instanciade A.

27

Page 28: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

• VARIOS a UNO (n-1)

– Una instancia de A se asocia como mucho a una instanciade B.

– Una instancia de B se asocia a cualquier numero de ins-tancias de A.

• VARIOS a VARIOS (n-n)

– Una instancia de A se asocia a cualquier numero de ins-tancias de B.

– Una instancia de B se asocia a cualquier numero de ins-tancias de A.

28

Page 29: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Correspondencia de cardinalidad en una interrelacion de-pende del mundo que se pretende modelar, definido enel conjunto de restricciones especıficas.

Ejemplo: Interrelacion PRESTATARIO entre entidades CLIENTEy PRESTAMO.

• Correspondencia 1-n:

– Un cliente puede tener diversos prestamos.

– Un prestamo solo puede ser de un cliente.

• Correspondencia n-n:

– Un cliente puede tener diversos prestamos.

– Un prestamo puede ser de diversos clientes.

29

Page 30: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Segun la correspondencia, los atributos de la interrelacionpueden situarse en diferentes lugares.

• Correspondencia 1-1: Atributos de la interrelacionpueden estar situados en la interrelacion o en cual-quiera de las dos entidades.

• Correspondencia 1-n, n-1: Atributos de la inter-relacion pueden estar situados en la interrelacion oen la entidad que tenga las n instanciaciones.

Ejemplo: Interrelacion IMPOSITOR(Fecha-Acceso) con cor-respondencia 1-n entre las entidades CLIENTE(Nombre-Cliente)y CUENTA(Numero-Cuenta).

Atributo de la interrelacion Fecha-Acceso puede estar asoci-ado a la entidad COMPTE.

Eleccion de situar los atributos en la entidad o la interrelaciondefine el modelo a representar.

↓Situar el atributo en la interrelacion indica que el atributocorresponde a una accion ligada a las dos entidades, noa una sola entidad.

30

Page 31: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

• Correspondencia n-n: Atributos de la interrelacionsituados en la interrelacion.

Ejemplo: Interrelacion IMPOSITOR con correspondencian− n entre las entidades CLIENTE(Nombre-Cliente) yCUENTA(Numero-Cuenta)

Atributo de la interrelacion Data-Acces puede situarse:

– En CLIENTE: Una unica fecha de acceso por cliente(la ultima), sin considerar en que cuenta se ha hecho elacceso.

– En CUENTA: Unica fecha de acceso por cuenta, inde-pendientemente del cliente que haya accedido (el ultimo).

– En INTERRELACION: Una fecha de acceso por clientey cuenta.

31

Page 32: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Dependencia de existencia

Definicion: Dadas dos entidades A,B, se dice que laentidad A tiene dependencia de existencia de B

⇐⇒

• Una instanciacion de A depende de la existencia dela instanciacion de B.

• Si una instanciacion de B se borra, se han de borrarlas instanciaciones dependientes de ella en A.

• B: Entidad dominante.

• A: Entidad subordinada.

Ejemplo: Entidades PRESTAMO i PAGO (pagos del prestamo).

• PRESTAMO(Numero-Prestamo,Importe)

• PAGO(Numero-Pago,Fecha-Pago,Importe-Pago)

• Interrelacion PRESTAMO-PAGO con correspondencia 1-n

– Cada prestamo tiene diversos pagos.

– Cada pago tiene asociado un prestamo.

• Si se borra un prestamo, hay que borrar los pagos asociadosal prestamo.

• Si se borra un pago del prestamo NO hay que borrar elprestamo.

32

Page 33: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Definicion: La participacion de una entidad E en unainterrelacion R es TOTAL si toda instancia de E par-ticipa al menos en una instancia de R.

Definicion: La participacion de una entidad E en unainterrelacion R es PARCIAL si algunas (no todas) lasinstanciaciones de E participan en instancias de R.

En la dependencia de existencia A,B,

• La participacion de la entidad SUBORDINADA esTOTAL en la interrelacion.

• La participacion de la entidad DOMINANTE es PAR-CIAL en la interrelacion.

Ejemplo: Interrelacion PRESTAMO-PAGO,

• La participacion de la entidad PAGO es TOTAL en la inter-relacion.

↓Todo pago interrelacionado con PRESTAMO.

• La participacion de la entidad PRESTAMO es PARCIAL enla interrelacion.

↓Prestamos NO interrelacionados con pago

(Prestamos que no se han empezado a pagar)

33

Page 34: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

DIAGRAMA E-R: Correspondencias a uno son repre-sentadas mediante una flecha dirigida a la entidad auno.

34

Page 35: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

CLAVES

Permiten distinguir una instancia dentro de una entidad.

Entidades e interrelaciones con atributos ⇒ CLAVES

Claves en entidades

SUPERCLAVE: Conjunto de uno o mas atributos que permitenidentificar de forma unica una instancia dentro de una entidad.

• 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 minima-lidad.

Exemple: Entidad EMPLEAT con claus candidates:

• Codigo-Empleado, unico para cada empleado.

• DNI.

• Nombre-Empleado,Fecha-Nacimiento,Direccion-Empleado, pueses improbable dos personas con los mismos valores.

CLAVE PRIMARIA: Clave candidata escogida por el disenador.

• Propiedad que se asigna a la entidad, no a las instancias.

35

Page 36: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Claves en interrelaciones

Definicion: Sea R una interrelacion, con o sin atributosdescriptivos, entre las entidades E1, E2, . . . , En, y CP (Ei)la clave primaria de la entidad Ei, suponiendo nombresde claves unicos entre entidades,

se define 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 interrelaciondepende de la correspondencia de cardinalidad de la in-terrelacion.

36

Page 37: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplo: Interrelacion CLIENTE-BANQUERO, entrelas entidades CLIENTE y EMPLEADO, describiendo laasociacion de un cliente con su banquero.

• Correspondencia n-n, con atributo Tipo, describiendo el tipode relacion cliente-banquero.

SC(CLIENTE-BANQUERO) = CP (CLIENTE) ∪ CP (EMPLEADO)

• Correspondencia n-1, sin atributos en interrelacion.

SC(CLIENTE-BANQUERO) = CP (CLIENTE) ∪ CP (EMPLEADO)

CP (CLIENTE-BANQUERO) = CP (CLIENTE)

• Correspondencia 1-1, sin atributos en interrelacion.

SC(CLIENTE-BANQUERO) = CP (CLIENTE) ∪ CP (EMPLEADO)

CP (CLIENTE-BANQUERO) = CP (EMPLEADO) o

CP (CLIENTE-BANQUERO) = CP (CLIENTE)

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

37

Page 38: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

ENTIDADES FUERTES Y DEBILES

Toda dependencia de existencia define una entidad fuertey una debil.

Entidad fuerte:

• Entidad que tiene una clave primaria.

• Entidad dominante en una dependencia de existencia.

Entidad debil:

• Entidad que no tiene suficientes atributos para formar unaclave primaria.

• Ha de formar parte de una interrelacion 1-n sin atributos.↓

Todo atributo se puede poner en la entidad debil.

• Entidad subordinada en una dependencia de existencia.

Ejemplo:

Entidad PAGO(Numero-Pago,Fecha-Pago,Importe-Pago)

Entidad debil, sin clave primaria, pues Numero-Pago unico para unprestamo pero no unico para todos los prestamos.

Mas de una instanciacion de entidad con los mismos valores.

38

Page 39: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

DISCRIMINANTE DE UNA ENTIDAD DEBIL: Atrib-uto o atributos que permiten distinguir las instancias deentidad debil que dependen de una instancia de entidadfuerte.

Ejemplo: Entidad PAGO con discriminante Numero-Pago.

Atributo Numero-Pago es unico en un prestamo (entidad furte).

Definicion: Dada A una entidad debil asociada a la en-titat fuerte B, y DIS(A) com el discriminante de la en-tidad A, se define CP (A) como la CLAVE PRIMARIADE LA ENTIDAD DEBIL A de la siguiente forma:

CP (A) = DIS(A) ∪ CP (B)

Ejemplo:

Entidad debil PAGO(Numero-Pago,Fecha-Pago, Importe-Pago), conentidad fuerte PRESTAMO(Numero-Prestamo, Importe),

CP (PAGO) = Numero-Pago ∪Numero-Prestamo

Entidad dominante es el propietario de la entidad debil.

INTERRELACION DE IDENTIFICACION: Inter-relacion que asocia una entidad fuerte y una debil.

39

Page 40: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

DIAGRAMA E-R: Entidades debiles e interrelacionesde identificacion son representadas mediante lıneas dobles.

Los discriminantes de entidades debiles se subrayan conlınea punteada.

40

Page 41: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

DIAGRAMA ENTIDAD-RELACION

Representacion de la estructura logica y semantica deuna BD.

Diagrama claro y simple, bastante utilizado en disenode BD.

Components:

• Rectangules para representar entidades.

• 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 clavesprimarias.

• Elipses dobles que representan atributos multivalorados.

• Elipses discontinuas que representan atributos derivados.

• Lıneas dobles para indicar la participacion total de una enti-dad en una interrelacion.

• Etiquetas de lınea para representar papeles de las interrela-ciones.

41

Page 42: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

42

Page 43: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplo:

43

Page 44: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Interrelaciones:

Atributos asociados a interrelaciones:

44

Page 45: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Papeles entre interrelaciones:

Interrelacion ternaria:

45

Page 46: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Model E-R extendido

Tambien denominado model orientado a objeto.

Modelo con extensiones adicionales que cubren limita-ciones mancances del Modelo E-R. Extensions:

• Especializacion - Generalizacion

– Herencia de atributos

– Lazos de diseno

• Agregacion

46

Page 47: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

ESPECIALIZACION

Designacion de subgrupos de entidades (entidades debajo nivel) dentro de una entidad (entidad de altonivel).

Una entidad tiene:

• Atributos COMUNES a todos los subgrupos.

• Atributos PROPIOS para cada subgrupo.

Ejemplo: Entidad CUENTA(Numero-Cuenta,Saldo) representandolas cuentas de un banco. Se pueden definir dos subgrupos:

• CUENTA-AHORRO(Tipo-Interes)

• CUENTA-CORRIENTE(Descubierto)

Una entidad puede especializarse en mas de una carac-terıstica, definiendo diferentes tipos de subgrupos.

Ejemplo: Entidad CUENTA con diferentes especializaciones y sub-grupos:

• Especializacion CUENTA-CORRIENTE, CUENTA-AHORRO.

• Especializacion CUENTA-EMPRESA, CUENTA-PERSONAL,CUENTA-BENEFICA.

47

Page 48: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

JERARQUIA DE ESPECIALIZACIONES: Una ins-tancia de entidad puede pertenecer a varias especialit-zaciones.

Ejemplo: Especializacion de la especializacion CUENTA-CORRIENTEde la entidad CUENTA:

• CUENTA-NORMAL(Numero-Movimientos), dando 3 movimien-tos gratis.

• COMPTE-OR(Pago-Interes,Saldo-Mınimo), con interes vari-able y saldo mınimo.

• CUENTA-SENIOR(Fecha-Nacimiento), cuenta para mayorsde 65 anos, con ventajas fiscales.

DIAGRAMA E-R: Especializaciones son representadas medi-ante un triangulo etiquetat como ’ES’, de donde surgen lıneas hacialos subgrupos de entidades (cuadrados) relacionados por atributos(elipses).

48

Page 49: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

GENERALIZACION

Proceso inverso al de la especializacion. Se aplicanambos procesos (especializacion y generalizacion) paraconstruir el esquema E-R extendido.

Agrupar entidades con atributos comunes en una enti-dad superior (superclase) de nivel mas alt.

↓Entidades agrupadas: subclases de nivel mas bajo

Proceso aplicado dentro e una estrategia de diseno bottom-up, definiendo entidades simples y agrupandolas.

Agrupamiento de entidades elimina la redundancia.

DIAGRAMA E-R: No es distinguen los procesos deespecializacion y generalizacion, representandose de lamisma forma.

49

Page 50: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Propiedades de las especializaciones:

(a) Herencia de atributos

(b) Lazos de diseno

(a) Herencia de atributos

Propiedad importante de las entidades de alto i bajonivel, definidas mediante la especializacion y la general-izacion.

Atributos de entidades de alto nivel son heredados porlas entidades de nivel inferior.

Ejemple: Entidades de nivel bajo CUENTA-CORRIENTE y CUENTA-

AHORRO heredan atributos de la entidad CUENTA.

50

Page 51: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Entidades de nivel bajo tambien heredan la participacionen interrelaciones de las cuales forma parte la entidadde nivel mas alto.

Ejemplo: Entidades CUENTA-CORRIENTE,CUENTA-AHORRO

heredan la relacion IMPOSITOR, en la cual participa la entidad

CUENTA.

Herencia puede tenir una estructura jerarquica.

RETICULO: Entidad que es al nivel mas bajo de una

interrelacion del tipo ES. Tiene mas de una entidad de

nivel alto.

51

Page 52: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

(b) Lazos de diseno

Definidas por el disenador de la Base de Datos.

Determinar que instanciaciones de entidad pueden sermiembros de una entidad de nivel mas bajo.

Propiedades de los lazos:

1. Definicion

2. Caracter

3. Completitud

52

Page 53: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

1. Definicion

Forma en la cual se define una instanciacion de entidadde alto nivel a una entidad de nivel mas bajo.

Dos formas:

• Definido por condicion: Pertenencia de una ins-tanciacion a una entidad de nivel mas bajo segununa condicion explıcita sobre un atributo.

Ejemplo: Entidad COMPTE con atributo Tipus-Compte.

– Instanciaciones con Tipus-Compte=’Corrent’, incluidasen el subgrupo COMPTE-CORRENT.

– Instanciaciones con Tipus-Compte=’Estalvi’, incluidas enel subgrupo COMPTE-ESTALVI.

↓Generalizacion definida por el atributo Tipus-Compte

• Definido por el usuario: Asignacion de una ins-tanciacion a un subgrupo es hecha por el usuario.

– Asignacion no sometida a ninguna condicion ex-plıcita.

– Asignacion de cada instanciacion una a una porseparado.

53

Page 54: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

2. Caracter

Pertenencia de una instanciacion a entidades de nivelbajo.

Dos tipos:

• Entidad disjunta: Instanciacion pertenece a unaunica entidad de nivel bajo.

Ejemplo: Una instanciacion de CUENTA en subgrupo CUENTA-

AHORRO no puede estar en subgrupo CUENTA-CORRIENTE.

• Entidad solapada: Instanciacion puede pertenecera mas de una entidad de nivel bajo.

Ejemplo: Entidad EMPLEAT, donde un director puede par-

ticipar en mas de un proyecto, definido cada proyecto como

subgrupo.

54

Page 55: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

3. Completitud

Especifica si las instanciaciones de una entidad de nivelalto estan o no incluıdas en las entidades de nivel masbajo.

Dos tipos:

• TOTAL: TODA instanciacion de entidad de altonivel ha de pertenecer a una entidad de nivel masbajo.

• PARCIAL: Existen instanciaciones de entidad dealto nivel que no pertenecen a una entidad de nivelmas bajo.

Ejemplo: Generalizacion COMPTE-CORRENT,COMPTE-ESTAL-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 dossubgrupos.

55

Page 56: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Entidades de nivel alto obtebidas por GENERALIZACION(de mas simples a mas complejas) acostumbran a tenerlazos de completitud TOTALES (se incluyen todos loselementos en la entidad de nivel bajo).

Entidades de nivel alto obtenidas por ESPECIALIZACION(de mas complejas a mas simples) acostumbran a tenerlazos de completitud PARCIALES (con instanciacionesno clasificables).

Ejemplo: Generalizacion de la entidad CUENTA a partir de lasentidades CUENTA-CORRIENTE y CUENTA-AHORRO define untipo de lazo:

• Definido por condicion.

• De caracter disjunto.

• De completitud total.

56

Page 57: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Sobre els lazos, hay que definir ciertas condiciones deinsercion y borrado:

• Si el lazo de completitud es TOTAL, cuando seanade una instancia en la entidad de nivel mas altohay que insertar esta instancia en una de las enti-dades de nivel mas bajo.

• Si el lazo es DEFINIDO POR CONDICION, cuandose anade una instancia en la entidad de nivel alto seha de comprobar la condicion, para poder insertarla instancia en una entidad de nivel mas bajo.

• Si se borra una instancia de la entidad de nivel alto,hay que borrarla de las entidades de nivel mas bajo(borrando UNA si el lazo es DISJUNTO, o DIVER-SAS si el lazo es SOLAPADO).

57

Page 58: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

AGREGACION

Abstraccion en la que un conjunto de interrelaciones yentidades se tratan como una unica entidad de nivel masalto respecto el resto de entidades del esquema.

Consecuencia de una limitacion en el modelo E-R, queno permite expresar interrelaciones entre interrelaciones.Ejemplo: BD con informacion de clientes y prestamos. Dos inter-relaciones entre entidades CLIENT i PRESTEC:

• PRESTATARI: Interrelacion con correspondencia n− n.

• RESPONSABLE-PRESTEC: Interrelacion con corresponden-cia 1− n.

Cada cliente-prestamo tiene un unico empleado responsabledel prestamo con atributos (Nombre-Empleado, DNI-E, Num-Tel).

Se quiere combinar ambas interrelaciones. Sin agregacion, puedenhaber dos soluciones:

1. COMBINAR ambas interrelaciones: Responsable-Prestamoassignado para cada cliente-prestamo com atributos a la in-terrelacion.

↓Datos del empleado Responsable-Prestamo repetidos porcada pareja Client-Prestamo, tantos como clientes tiene el

prestamo↓

REDUNDANCIA

58

Page 59: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

2. SEPARAR ambas interrelaciones:

• Cada pareja cliente-prestamo esta en las dos interrelaciones(REDUNDANCIA).

• Hay que garantizar que toda instanciacion a la interrelacionresponsable-prestamo es tambien a prestatario.

• responsable-prestamo se puede asociar a todo cliente y prestamoindependientemente de las instanciaciones asociadas a la in-terrelacion prestatario.

• Este diseno permite que un prestamo no tenga responsableasignado aun.

59

Page 60: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

AGREGACION: Agrupar entidades CLIENTE, PRESTAMOe interrelacion PRESTATARIO en una entidad PRES-TATARIO, que es tratada com cualquier otra entidaden el esquema.

Interrelacion RESPONSABLE-PRESTAMO entre enti-

dades PRESTATARIO y EMPLEADO.

• responsable-prestamo se relaciona unicamente con los prestamosexistentes a la interrelacion prestatario, no con cualquier clienteo prestamo presente en las entidades.

• Este diseno permite que un prestamo no tenga responsableasignado aun.

60

Page 61: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Criterios de diseno de un esquema E-R

Definiciones de entidad e interrelacion son pooc pre-cisas, pudiendolas describir de diferentes formas paraun mismo problema de diseno.

Criterios de diseno de un esquema E-R:

• Uso de entidades o atributos

• Us de entidades o interrelaciones

• Interrelaciones binarias o n-arias

61

Page 62: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

USO DE ENTIDADES O ATRIBUTOS

PROBLEMA: Dado un evento (objeto o accion) amodelar en la BD, como representarlo en el modelo E-R,como entidad o como atributo?.

No hay una metodologıa optima.

Ejemplo: Objeto EMPLEADOS, con propiedades nombre y numerode telefon.

Dos modelos de representacion:

1. Entidad EMPLEADO con atributos Nombre, DNI, Numero-Telefono.

SUPOSICION IMPLICITA: Cada empleat tiene un unico numerode telefono.

2. Entidades EMPLEADO(Nombre,DNI) y NUMERO-TELEFONO(Nu-mero, Ubicacion), con interrelacion EMPLEADO-TELEFONO,asociando un empleado con todos los telefonos que tiene.

• Cada empleado puede tener mas de un telefono.

• Un telefono puede estar compartido por mas de un em-pleado.

• No se considera que un numero de telefono tenga dife-rentes ubicaciones (supletorios).

62

Page 63: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

USO DE ENTIDADES O INTERRELA-CIONES

PROBLEMA: Dado un evento (objeto o accion) amodelar en la BD, com representarlo en el model E-R, como entidad o como interrelacion?.

No hay una metodologıa optima.

SUGERENCIA: Definir como interrelacion una accion(tipo de evento) entre entidades y evaluar las propiedadesde esta definicion.

Ejemplo: Evento prestamo bancario.

Dos modelos de representacion:

1. Entidad PRESTAMO(Numero-Prestamo,Importe)

SUPOSICION IMPLICITA: Un solo valor por numero de prestamose Importe.

63

Page 64: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

2. Interrelacion PRESTAMO(Numero-Prestamo,Importe,Cuenta)entre entidades CLIENTE y SUCURSAL.

Cada prestamo definido como una instanciacion de la inter-relacion PRESTAMO.

• Si todo prestamo se asocia a un unico cliente y a unaunica sucursal, el modelo es satisfactorio.

• Si diversos clientes comparten un prestamo, hay que definiruna instanciacion para cada cliente del prestamo, repli-cando los atributos (Numero-Prestamo,Importe,Cuenta)para cada prestamo.

⇓REDUNDANCIA

↓Tratada en la Teorıa de la Normalizacion

64

Page 65: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

INTERRELACIONES BINARIAS o n-ARIAS

Interrelaciones binarias mas faciles de entender.

Se pueden definir esquemas E-R unicamente con inter-relaciones binarias.

65

Page 66: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Toda interrelacion n-aria se puede transformar en n in-terrelaciones binarias.

Proposicion: Dada una interrelacion ternaria R con lasentidades A,B,C,

se puede sustituir en un esquema E-R por:

• Entidad E con:

– Atributos de la interrelacion R.

– Atributos que permiten distinguir las instanciaciones deR (Claves Primarias de A,B,C).

• Interrelacion RA entre las entidadse E,A.

• Interrelacion RB entre las entidades E,B.

• Interrelacion RC entre las entidades E,C.

66

Page 67: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

de forma que para cada instanciacion de R(ai, bi, ci) escrea:

• Instanciacion en entidad E

• Instanciacion (ei, ai) ∈ RA

• Instanciacion (ei, bi) ∈ RB

• Instanciacion (ei, ci) ∈ RC

No siempre es deseable definir el esquema E-R con in-terrelaciones binarias:

• El atributo de identificacion de la entidad E y lasinterrelaciones binarias adicionales incrementan lacomplejidad del diseno y los requisitos de almace-namiento.

• La interrelacion n-aria aporta mas informacion quelas correspondientes binarias.

↓TRAMPA DE CONEXION

67

Page 68: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Diseno de un esquema E-R

Modelo E-R da una gran flexibilitat para disenar un es-quema de BD a partir de unos requisitos de usuariosespecificados.

Disenador de la BD ha de tomar decisiones del tipo:

• Utilizar un atributo o una interrelacion para representar unevento (objeto o accion).

• Representar un evento como una entidad o una interrelacion.

• Utilizar interrelaciones n-arias o binarias.

• Utilizar o no entidades fuertes y debiles para definir un evento.

• Usar o no la especializacion y la generalizacion para definiruna jerarquıa de interrelaciones, modularizando la informaciondentro de la BD.

• Usar la agregacion de forma apropiada.

MODELO CONCEPTUAL DE DATOS: Propor-ciona al disenador de la BD un marco conceptual dondeespecificar los requisitos de datos de los usuarios de laBD y como se estructurara la BD para cumplir estosrequisitos.

↓DISENO CONCEPTUAL

68

Page 69: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplos

Ejemplo 1.1: Secretarıa Universidad

Relacion entre profesores y alumnos teniendo en cuenta asignatu-ras, horarios, clases.

Para cada profesor se guarda Nombre-Profesor y DNI.

Para cada estudiante se guarda Nombre-Estudiante, DNI y Nota decada asignatura.

Para cada asignatura se guarda Codigo-Asignatura, Nombre-Asig-natura, Horario, Aula.

Supuestos semanticos:

• Un profesor imparte una unica asignatura al estudiante.

• Cada asignatura tiene un unico profesor, horario y aula dondese imparte la clase.

PROBLEMA: Se repite la informacion de la asignatura (Codigo-

A, Nombre-A, Horario, etc.) tantas veces como estudiantes tenga

la asignatura.

69

Page 70: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplo 1.2: Secretarıa Universidad

Relacion entre profesores y alumnes teniendo en cuenta asignat-uras, horarios, clases.

Para cada profesor se guarda Nombre-Profesor y DNI.

Para cada estudiante se guarda Nombre-Estudiante, DNI y Nota decada asignatura.

Para cada asignatura se guarda Codigo-Asignatura, Nombre-Asignatura,Horario, Aula.

Supuestos semanticos:

• Un profesor puede impartir mas de una asignatura al estudi-ant.

• Cada asignatura tiene un unico profesor, horario y aula dondese imparte la clase.

70

Page 71: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplo 1.3: Secretarıa Universidad

Relacion entre profesores y alumnos teniendo en cuenta asignat-uras, horarios, clases.

Para cada profesor se guarda Nombre-Profesor y DNI.

Para cada estudiante se guarda Nombre-Estudiante, DNI Nota decada asignatura.

Para cada asignatura se guarda Codigo-Asignatura, Nombre-Asignatura,Horario, Aula.

Supuestos semanticos:

• Un profesor puede impartir mas de una asignatura al estudi-ant.

• Cada asignatura tiene un unico profesor, pero mas de un ho-rario y aula donde se imparte la clase.

71

Page 72: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplo 2: Companıa transportista.Companıa recoge envios de almacenes y los entrega a las tiendas.

De los almacenes hay que guardar Codigo-Almacen y Ciudad dondese encuentra.

De las tiendas hay que guardar Codigo-Tienda y Ciudad donde seencuentra.

Supuestos semanticos:

• Se han de realizar envios de genero de los almacenes a lastiendas. De cada envio interesa guardar Codigo-Envio, Pesoy Volumen.

• Un grupo de envios con origen y destino comunes se agru-pan en viajes, de los cuales hay que guardar el Codigo-Viaje,identificador unico del viaje y el Numero de Envios.

• Un camion transporta diversos viajes y entrega los diferentesenvios a las tiendas correspondientes. De cada viaje, interes-sa saber que camion lo ha hecho y la Fecha en la cual se hahecho el viaje.

• Los camiones tienen diferente Codigo, Capacidad y Peso paratransportar.

72

Page 73: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplo 3: BD de una liga de baloncesto.

Interesa guardar como informacion sobre el jugador el Nombre, DNI,Direccion, Num-Fitxa.

Un jugador esta fichado por un equipo. Del equipo interesa guardarla informacion sobre Nombre-Equipo, Direccion.

De un partido interesa guardar Jornada, Equipo-Casa, Equipo-Fuera, Resultado.

Se quiere llevar el control de los jugadores que participan en cadapartido, los equipos que juegan, el resultado de cada partido y lapuntuacion que ha hecho cada jugador en cada partido.

Supuestos semanticos:

• Un jugador juega en un unico equipo toda la temporada.

• Cada equipo tiene diversos jugadores y no todos juegan unpartido.

• Dos equipos juegan dos partidos, uno en cada campo.

• Un equipo juega un partio en cada jornada.

73

Page 74: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

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

tido.

OTRA SOLUCION:

74

Page 75: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplo 4: Companıa de discos.

Notown Records tiene una plantilla de musicos y han decididoguardar la informacion en una BD.

Supuestos semanticos:

• Interesa guardar como datos del musico Nombre, DNI, Di-reccion, Telefono. Musicos poco pagados comparten una di-reccion y cada direccion tiene un unico telefono.

• Para cada instrumento se ha de guardar Nombre-Instrumento,Codigo-Instrumento, Clave Musical.

• Para cada album se guarda Codigo-Album, Tıtulo-Album,Fecha-Album, Numero-CDs.

• Para cada cancion se quiere guardar Tıtulo y Duracion.

• Cada musico toca instrumentos y un instrumento puede sertocado por diferentes musicos.

• Cada album tiene un conjunto de canciones y cada cancionaparece unicamente en un album.

• Cada cancion es interpretada per uno o mas musicos y unmusico puede tocar varias canciones.

• Para cada album, unicamente hay un musico que hace deproductor. Un musico puede producir diversos albums.

75

Page 76: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

76

Page 77: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplo 5: Catastro municipal.

Mantener informacion sobre las personas que viven en cada viviendacomo puede ser Nombre i DNI, de los propietarios de las viviendasy del jefe de familia de cada vivienda.

De cada vivenda se quiere guardar Calle, Numero y los MetrosCuadrados.

Supuestos semanticos:

• Hay dos tipos de viviendas:

Casas: Vive una sola familia. Interesa guardar el Numero dePlantas de la casa.

Bloques de pisos: Conjunto de viviendas, donde en cadauna habita una familia. Contiene un numero variable depisos. De cada piso interesa guardar Escalera, Planta yPiso.

• Toda persona habita en una sola vivienda, considerada comovivienda habitual.

• Cada vivienda tiene un unico propietario.

• Las viviendas estan en un unico barrio.

• Los barrios estan divididos geograficamente y hay que guardarel Nombre y Extension en Km. cuadrados.

• El nombre de las calles es unico dentro del municipio.

• Cada familia tiene un jefe de familia.

77

Page 78: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

78

Page 79: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplo 6: BD Hospital

Supuestos semanticos:

• Los pacientes se identifican mediante Nombre, DNI, Direccion,Edad.

• Medicos se identifican mediante Nombre, DNI, Especialidad,Anos de Experiencia.

• Cada companıa farmaceutica se identifica por el Nombre, Di-recion, Telefon.

• Para cada medicina se guarda el Nombre y la Formula. Cadamedicina es fabricada por una Companıa y el nombre es unicodentro de la Base de Datos.

• Cada farmacia tiene un Nombre y Direccion. El nombre esunico en la Base de Datos.

• Cada paciente tiene un medico principal. Cada medico tienecomo mınimo un paciente y, a poder ser, mas de uno.

• Toda farmacia vende medicinas a un precio por cada una.Una medicina puede ser vendida en diferentes farmacias y suprecio puede variar de una farmacia a otra.

• Los medicos recetan medicinas a los pacientes. Un medicopuede recetar una o mas medicinas a diferentes pacientes yun paciente puede tener recetas de diferentes medicos. Cadareceta tiene una fecha y una cantidad asociada. Si un medicoreceta la misma medicina al mismo paciente solo se guarda laultima receta.

• Las companıas farmaceuticas tienen contratos a largo plazocon las farmacias. Una companıa puede contratar varias far-macias y una farmacia puede estar contratada por diferentescompanıas. Para cada contrato hay que guardar Fecha Inicio,Fecha Final, Texto.

• Las farmacias tienen un supervisor para cada contrato con unacompanıa farmaceutica. En todo momento solo puede haberun supervisor por contrato, pero puede cambiar durante lavida del contrato.

79

Page 80: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

80

Page 81: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

Ejemplo 7: BD Universidad

Supuestos semanticos:

• Los profesores se identifican por Nombre, DNI, Edad, Cate-gorıa.

• Proyectos tienen Numero Proyecto, Sponsor, Fecha Inicio,Fecha Fin, Cantidad.

• Estudiantes se identifican mediante Nombre, DNI, Edad, Es-tudios.

• Cada proyecto es dirigido por un unico profesor y pueden tra-bajar uno o mas profesores. Los profesores pueden trabajaren diferentes proyectos.

• En cada proyecto trabajan uno o mas estudiantes.

• Cuando un estudiante esta becado en un proyecto ha de sersupervisado por un profesor. Estudiantes pueden trabajar endiferentes proyectos, supervisados cada uno por profesoresdiferentes o comunes en algunos proyectos.

• Departamentos se identifican por Nombre, Codigo, Direcion.Tienen un profesor que ejerce de Jefe de Departamento.

• Un profesor solo puede ser jefe de un unico departamento.

• Profesores trabajan en uno o mas departamentos. Para cadadepartamento donde trabajan tienen asignada una dedicacionen porcentaje.

• Estudiantes estan en un departamento, donde realizan losestudios.

• Cada estudiante tiene otro estudiante (consejero) que lo ayuday aconseja en las asignaturas a cursar.

81

Page 82: TEMA 3 - Ingeniería Simpletema de base de datos concreto se realiza en dos fases: DISENO L˜ OGICO y DISE´ NO F˜ ´ISICO. 3. Dise˜no l´ogico Conversi´on del esquema conceptual

82