Tema II: El Modelo E/R 2.1 Presentación del modelo 2.2 Estática del modelo E/R 2.3 Extendiendo la semántica de las interrelaciones 2.4 Control de redundancia 2.5 Generalización y especialización 2.6 Interrelaciones de grado superior a 2 2.7 Dimensión temporal en el modelo E/R 2.8 Atributos derivados Tema 2.1: Modelo E/R Presentación del El Modelo E/R es un modelo conceptual (mayor nivel de abstracción) Conjunto de conceptos y de reglas destinados a representar de forma global los aspectos lógicos de los diferentes tipos de datos existentes en la realidad que está siendo analizada; ha de permitir reflejar el contenido semántico de los datos existentes en el sistema, pero no sus propiedades que respondan a características de tipo físico (modo de almacenamiento, caminos de acceso,etc...) - 2
Tema 2.1: Modelo E/R TIPOS DE ABSTRACCIÓN Presentación del La abstracción busca las propiedades comunes de un conjunto de objetos reduciendo la complejidad y ayudando a entender el mundo real. TIPOSDEABSTRACCIÓN QUEOFRECEN LOS MODELOS: Clasificación/Particularización Agregación/Desagregación Generalización/Especialización Asociación/Disociación Jerarquía de Abstracciones - 3 Tema 2.1: Modelo E/R Presentación del Ejemplos: Universo del Discurso de la gestión en la Universidad (1) Clasificación/Particularización Agregación/Desagregación - 4
Tema 2.1: Modelo E/R Presentación del Ejemplos: Universo del Discurso de la gestión en la Universidad (2) Generalización/Especialización Asociación/Disociación - 5 Tema 2.1: Modelo E/R Presentación del Ejemplos: Universo del Discurso de la gestión en la Universidad (3) Jerarquía de Abstracciones - 6
Tema 2.2: Estática del Modelo E/R Modelo E/R Objetos pemitidos en la estructura: Entidades Atributos (propiedades de las entidades) Dominios (sobre los cuales se definen los atributos) Interrelaciones (asociaciones o vinculaciones entre los objetos) Representación de estos objetos por medio de GRAFOS Semántica escasa! (en el modelo básico) Necesidad de extensiones - 7 Tema 2.2: Estática del Modelo E/R CONCEPTO DE ENTIDAD Concepto fácil de comprender intuitivamente, pero díficil de definir formalmente Tsichritzis (1982) dice que es muy difícil dar una definición rigurosa de entidad Date (1983) reconoce que, formalmente, es una noción indefinida y debe seguir así. Su aplicación es subjetiva ya que una misma clase de objetos puede constituir en unos casos una entidad y en otros una propiedad o una interrelación Date (1983) dice por ello que es una noción relativa Definición de ANSI/SPARC Una persona, lugar, cosa, concepto o suceso, real o abstracto, de interés para la empresa - 8
Tema 2.2: Estática del Modelo E/R ATRIBUTO: Propiedad o característica de una entidad o de una interrelación (no tiene existencia propia). DOMINIO: Conjunto de valores homogéneos sobre el que sedefine un atributo (existe independientemente) Definición por intensión: dominio edad (0-99), identificaciones (Entero(10)), salario (1.5 M-10 M,... Definición por extensión: dominios enumerados (estado civi, sexo, etc.) - 9 Tema 2.2: Estática del Modelo E/R CARACTERÍSTICAS DE LAS ENTIDADES (heurísticas especificadas por Tardieu en la metodología MERISE) Una entidadtiene que tener existencia propia Cada ocurrencia de una entidad debe poderse distinguir de las demás -ser distinguible - Todas las ocurrencias de una entidad deben tener los mismos tipos de atributos-no los mismos valores- - 10
Tema 2.2: Estática del Modelo E/R EJEMPLOS DE ENTIDADES VS ATRIBUTOS CONCEPTO PAÍS Si hablamos de una BD geográfica Entidad PAIS Si hablamos de una BD de Personal de la Universidad Atributo País - 11 Tema 2.2: Estática del Modelo E/R ENTIDADES ATRIBUTOS VALORES LIBRO PAIS Sexo Estado Civil... Nombre de la Obra Nombre del autor... Mayoría de edad... Hombre Mujer Soltero Casado Viudo Divorciado El Quijote... Cervantes... 18 años 16 años - 12
Tema 2.2: Estática del Modelo E/R ENTIDAD ATRIBUTOS VALORES DOMINIOS Iden_p 5353531 DNI (PROFESOR) E 1 Fecha_Nac 16 Dia Fecha_Ingr 11 Mes sexo 1945 Año Telefono varón Sexo 2343830 2168335 Num_enteros Algunos atributos definidos sobre la entidad PROFESOR - 13 Tema 2.2: Estática del Modelo E/R CONVENCIÓN PARA REPRESENTAR GRAFICAMENTE ENTIDADES, ATRIBUTOS E INTERRELACIONES Edad Nacido_en REPRESENTACIÓN REPRESENTACIÓN REPRESENTACIÓN DE ENTIDAD DE ATRIBUTO DE INTERRELACIÓN - 14
Tema 2.2: Estática del Modelo E/R A 1 A 2 A n........ E 1 Representación de la entidad E 1 con un conjunto de atributos F_Nac Dni........ Sexo PROFESOR Ejemplos del tipo de entidad PROFESOR con un conjunto de atributos - 15 Tema 2.2: Estática del Modelo E/R Restricciones semánticas sobre atributos de las entidades (1) Identificadores Principales (IP) e Identificadores Alternativos (IA) DNI EMPLEADO Nombre Dirección Cod_Producto PRODUCTO Tipo Descripción - 16
Tema 2.2: Estática del Modelo E/R Restricciones semánticas sobre atributos de las entidades (2) Atributos Compuestos EMPLEADO Fecha_nac Dia Mes Año EMPLEADO Dia Mes Año Fecha_Nac - 17 Tema 2.2: Estática del Modelo E/R Restricciones semánticas sobre atributos de las entidades (3) Atributos Opcionales y Multivaluados LIBRO Isbn Titulo Idioma Año-edicion LIBRO (0,1) Isbn Titulo Idioma Año-edicion - 18
Tema 2.2: Estática del Modelo E/R Restricciones semánticas sobre atributos de las entidades (4) Atributos Opcionales y Multivaluados (posibles combinaciones) A (1,1) obligatorio y univaluado D (0,N) opcional y multivaluado E C obligatorio y multivaluado B (0,1) opcional y univaluado - 19 Tema 2.2: Estática del Modelo E/R Restricciones semánticas sobre atributos de las entidades (5) IP e IA compuestos Marca Modelo Concesionario Num_orden Cod_Vehiculo VEHICULO Matricula Número Cadena letras Marca Modelo Concesionario Num_orden VEHICULO Número Matricula Cadena letras Cod_Vehiculo - 20
Tema 2.2: Estática del Modelo E/R Interrelaciones Asociación entre entidades. Por ejemplo, Realizar es una interrelación que vincula dos entidades, ALUMNO y CURSO ALUMNO Realizar CURSO Ocurrencia de la interrelación: Juan García Realizar Diseño de BD - 21 Tema 2.2: Estática del Modelo E/R Interrelaciones E I 1 1 E 2 Representación del tipo de interrelación I 1 que asocia las entidades E 1 y E 2 PROFESOR examina ALUMNO Ejemplo de una interrelación entre dos entidades - 22
Tema 2.2: Estática del Modelo E/R Interrelaciones ( 0,n ) (0,n) confían N:M Confía confía_en Ejemplo de una interrelación sobre una misma entidad alquila persona coche Ejemplo de dos interrelaciones entre dos entidades conduce - 23 Tema 2.2: Estática del Modelo E/R Interrelaciones PROFESOR CALIFICACIÓN Imparte_clase NOTA examina ALUMNO Recibe_clase Ejemplo del tipo de interrelación PROFESOR y ALUMNO, en el cual se muestra el atributo NOTA como aplicación sobre el dominio CALIFICACIÓN. - 24
Tema 2.2: Estática del Modelo E/R Interrelaciones Tipo de Correspondencia: Número máximo de ocurrencias de cada tipo de Entidad que pueden intervenir por cada ocurrencia del otro tipo de Entidad asociado en la Interrelación. 1:1 --> como máximo una ocurrencia del tipo de Entidad por cada ocurrencia del otro. 1:N --> para uno de los tipos de Entidad hay un número indefinido de ocurrencias N:M --> número indefinido para ambos tipos de Entidad. - 25 Tema 2.2: Estática del Modelo E/R Interrelaciones confían N:M confía_en peluquer@ 1:N cliente Confía Peina van a votar vota 1:N 1:1 vota_en dirige es_director manda_en LOCALIDAD DEPARTAMENTO - 26
Tema 2.2: Estática del Modelo E/R Interrelaciones Ejemplo de interrelación ternaria: BD Biblioteca INVESTIGADOR N:M:P publica ARTÍCULO TEMA - 27 Tema 2.3: Extendiendo la semántica de las interrelaciones 1. Cardinalidades de una Interrelación Cardinalidad Máxima y Mínima: Número máximo y mínimo de ocurrencias de un tipo de Entidad que pueden estar interrelacionadas con una ocurrencia del otro y otros tipos de Entidad que participan en el tipo de interrelación. (0,1) (1,1) (0,N) - 28
confían Tema 2.3: Extendiendo la semántica de las interrelaciones 1. Cardinalidades de una Interrelación: Ejemplos ( 0,n ) ( 1,1 ) ( 0,N ) (0,n) confía_en peluquer@ N:M 1:N Confía Peina cliente ( 0,N ) van a votar ( 1,1 ) es_director vota ( 1,1 ) vota_en 1:N 1:1 dirige ( 0,1 ) manda_en LOCALIDAD DEPARTAMENTO - 29 Tema 2.3: Extendiendo la semántica de las interrelaciones 1. Cardinalidades de una Interrelación: Ejemplos PROFESOR CALIFICACIÓN (0,N) calificado NOTA (0,N) examina califica ALUMNO Ejemplo de la interrelación PROFESOR y ALUMNO, en la cual se muestra el atributo NOTA sobre el dominio CALIFICACIÓN. - 30
Tema 2.3: Extendiendo la semántica de las interrelaciones 2. Dependencia en Existencia y en Identificación Se distinguen dos tipos de interrelación: - Entidad regular - Entidad débil Es aquella que no depende de otra entidad Ejemplo: Persona en la interrelación Reside Es aquella que depende en existencia o en identificación de otro tipo de entidad Ejemplo: Familiar en la interrelación Se encarga - 31 Tema 2.3: Extendiendo la semántica de las interrelaciones 2. Dependencia en Existencia y en Identificación Matrícula VEHÍCULO (0,n) (1,1) DNI Ex Pertenece Nombre Ejemplo de Dependencia en Existencia - 32
Tema 2.3: Extendiendo la semántica de las interrelaciones 2. Dependencia en Existencia y en Identificación Num_Ejemplar Cod_ejemplar EJEMPLAR_DVD (1,n) (1,1) ID tiene DVD Código Tïtulo Idioma Ejemplo de Dependencia en Identificación - 33 Tema 2.3: Extendiendo la semántica de las interrelaciones 3. Exclusividad, Exclusión, Inclusividad e Inclusión (1/4) publica (0,1) ACTAS CONGRESO ARTÍCULO aparece (0,1) REVISTA Ejemplo de Interrelación Exclusiva - 34
Tema 2.3: Extendiendo la semántica de las interrelaciones 3. Exclusividad, Exclusión, Inclusividad e Inclusión (2/4) CURSO (0,N) (0,N) imparte {exclusión} recibee (1,1) (1,n) Ejemplo de Restricción de Exclusión - 35 Tema 2.3: Extendiendo la semántica de las interrelaciones 3. Exclusividad, Exclusión, Inclusividad e Inclusión (3/4) (0,n) (1,n) imparte CURSO (2,n) (0,n) posee (0,n) TÍTULOS ACADÉMICOS Ejemplo de Interrelación Inclusiva - 36
Tema 2.3: Extendiendo la semántica de las interrelaciones 3. Exclusividad, Exclusión, Inclusividad e Inclusión (4/4) CURSO (0,N) (0,N) imparte {inclusión} recibee (1,1) (1,n) Ejemplo de Restricción de Inclusión - 37 Tema 2.4: Control de Redundancia Un esquema tiene redundancia cuando la eliminación de un elemento del mismo no supone pérdida de semántica, es decir, los valores de dicho elemento pueden deducirse de otros valores. Pueden existir:. Atributos redundantes.. Interrelaciones redundantes. Condiciones para que una interrelación sea redundante: A) Existencia de un ciclo en las interrelaciones. B) Que la semántica de las interrelaciones que componen el ciclo sea equivalente. C) Que las cardinalidades sean tales que no impidan, en ningún caso, que se cierre el ciclo después de eliminada la interrelación redundante. - 38
Tema 2.4: Control de Redundancia ( 1,n ) INVESTIGADOR ( 1,n ) redundante N:M escribe participaa N:M ( 1,n ) N:1 ( 1,n ) ( 1,n ) ( 1,1 ) ARTÍCULO publica CONFERENCIA Ciclo donde aparece una interrelación redundante - 39 Tema 2.4: Control de Redundancia INVESTIGADOR ( 1,n ) ( 1,n ) N:M edita escribe N:M ACTAS CONGRESO ( 0,n ) N:M ( 0,n ) aparecee ( 1,n ) ( 1,n ) ARTICULO Ciclo donde no aparece una interrelación redundante - 40
Tema 2.5: Generalización y Especialización Abstracción mediante la que descomponemos un tipo de Entidad (Supertipo) y uno o más tipos de Entidad (Subtipos) (1,1) TIPO ES -UN (0,1) (0,1) EMPLEADO ESTUDIANTE - 41 Tema 2.5: Generalización y Especialización Atributos comunes en el Supertipo Atributos propios en los Subtipos Distinción entre interrelaciones en las que participan el Supertipo y los Subtipos Restricciones semánticas sobre las jerarquías: Totalidad/Parcialidad Solapamiento/Exclusividad - 42
Tema 2.5: Generalización y Especialización Ejemplo de generalización total sin solapamiento EMPLEADO (1,1) CLASE DE TRABAJO ES -UN (0,1) (0,1) RRHH NO RRHH - 43 Tema 2.5: Generalización y Especialización Ejemplo de generalización parcial sin solapamiento EMPLEADO (1,1) CLASE DE TRABAJO ES -UN (0,1) (0,1) RRHH COMERCIAL - 44
Tema 2.5: Generalización y Especialización Ejemplo de generalización total con solapamiento (1,1) TIPO ES -UN (0,1) (0,1) EMPLEADO ESTUDIANTE - 45 Tema 2.5: Generalización y Especialización Ejemplo de generalización parcial con solapamiento PROFESOR (1,1) FUNCIÓN ES -UN (0,1) (0,1) DOCENTE INVESTIGADOR - 46
Tema 2.5: Generalización y Especialización Reglas eninserción 1. Sise inserta en un supertipo se debe insertar entodos los subtipos para los que la entidad cumple la condición predefinida (atributo discriminante). 2. Sise inserta en un supertipo de una jerarquía totalse debe insertar la entidad enal menos un subtipo y si los subtipos son disjuntos sólo en uno. - 47 Tema 2.5: Generalización y Especialización Reglas enborrado 1. Sise borra una ocurrencia de entidad en un supertipo hay que eliminarla automáticamente de los subtipos a la que pertenece 2. Sise borra una ocurrencia de un subtipo hayque borrarla del supertipo si: Generalización total y subtipos disjuntos. Generalización total y subtipos solapados, si es el último subtipo del tipo correspondiente. - 48
Tema 2.5: Generalización y Especialización Podemos tener Jerarquías Múltiples LIBRO TEMA A IDIOMA B (0,1) (0,1) (0,1) (0,1) INFORMÁTICA LENGUA FRANCÉS ESPAÑOL - 49 Tema 2.5: Generalización y Especialización Ejemplo de red de generalización LIBRO TEMA A IDIOMA B (0,1) (0,1) (0,1) (0,1) INFORMÁTICA LENGUA FRANCÉS ESPAÑOL (0,1) C BASES DATOS Especialidad D (0,1) (0,1) PROCESAMIENTO DEL LENGUAJE NATURAL Dominio - 50
Tema 2.6: Interrelaciones de grado superior a dos Cuándo es necesaria una interrelación ternaria? NO INVESTIGADOR escribe publica participaa (1,1) ARTÍCULO acepta CONFERENCIA (1,1) - 51 Tema 2.6: Interrelaciones de grado superior a dos Cuándo es necesaria una interrelación ternaria? SI INVESTIGADOR investiga publica participaa TEMA abarca CONFERENCIA - 52
Tema 2.6: Interrelaciones de grado superior a dos Descomposición de un tipo de interrelación en varios PROFESOR (1,1) enseña (1,1) impatir ASIGNATURA GRUPO PROFESOR enseña asignar (1,1) ASIGNATURA asociar GRUPO - 53 Tema 2.7: Dimensión Temporal en el Modelo E/R Primera aproximación a la dimensión temporal en un esquema E/R Cod_Investigador ISBN INVESTIGADOR CONFERENCIA F_Nac. participaa (0,N) Fechas N:M Ini Fin - 54
Tema 2.7: Dimensión Temporal en el Modelo E/R Base de datos actual: no consideramos el pasado Cod_Ejemplar EJEMPLAR DVD (0,N) N:1 (0,1) presta Cod_Socio SOCIO F_pres. - 55 Tema 2.7: Dimensión Temporal en el Modelo E/R Base de datos histórica: consideramos el pasado Cod_Ejemplar F_pres. F_dev. Cod_Socio EJEMPLAR_DVD presta (0,N) SOCIO N:M f_dev f_pres + 7-56
Tema 2.7: Dimensión Temporal en el Modelo E/R Representación del Tiempo como una entidad TIEMPO F_pres. F_dev. presta Cod_ejemplar (1,1) EJEMPLAR_DVD Cod_socio SOCIO - 57 Tema 2.7: Dimensión Temporal en el Modelo E/R Utilizando Generalizaciones 1:N (0,N) es de (1,1) (0,N) Cod_socio SOCIO 1:N corresponde Cod_ejemplar (1,1) EJEMPLAR_DVD PRESTAMO Es_un Cod_Préstamo (1,1) (0,1) PRESTAMO FINALIZADO F_fin. F_dev. - 58
Tema 2.8: Atributos Derivados Cod_Ejemplar Num_Ejemplar EJEMPLAR_DVD (1,n) (1,1) ID tiene DVD Código Título D1 N_ejemplares Ejemplo de atributo derivado - 59 Bibliografía BÁSICA: M. Piattini, E. Marcos, C. Calero y B. Vela. Tecnología y Diseño de Bases de Datos. Capítulos 14 y 15. RA-MA 2006. D. Cuadra, E. Castro, A. Iglesias, P. Martínez, F.J. Calle, C. de Pablo, H. Al-Jumaily y L. Moreno. Desarrollo de Bases de Datos: casos prácticos desde el análisis a la implementación. Capítulo 1. RA-MA. 2007. RECOMENDADA: A. Silberschatz, H. Korth & S. Sudarskhan. Fundamentos de Bases de Datos. 5ª Edición. Capítulo 6. McGraw Hill. 2006. R. Elmasri and S.B. Navathe. Fundamentos de Sistemas de Bases de Datos. Capítulo 3. Addison Wesley. 2007. A. de Miguel, M. Piattini y E. Marcos. Diseño de Bases de Datos Relacionales. Capítulo 2 y 9. RA-MA. 1999. A. de Miguel, P. Martínez, E. Castro, J.M. Cavero, D. Cuadra, A. Iglesias y C. Nieto. Diseño de Bases de Datos: Problemas Resueltos. Capítulo 1. RA-MA. 1999. - 60