3. Modelo Entidad Relación Competencias específicas a adquirir • Aplicar correctamente los conceptos y notaciones de modelos conceptuales que ofrezcan la suficiente semántica y que sean independientes de la plataforma, como el modelo entidad-relación extendido o UML Tema 3. Modelo Entidad Relación 1 3. Modelo Entidad Relación Contenidos • 3.1. Introducción e historia del Modelo Entidad-Relación • 3.2. Modelo Entidad-Relación: – Entidades, Atributos, Dominios, Concepto de relación – Restricciones sobre relaciones, Relaciones n-arias, Tipos de entidades débiles • 3.3. Modelo d l Entidad-Relación d d l ó Extendido dd – Relaciones exclusivas, Agregación de tipos de entidad – Especialización/generalización Tema 3. Modelo Entidad Relación 2 1 3. Modelo Entidad Relación Bibliografía más relevante • [EN 2007] capítulos 3 y 4; • [CB 2005] capítulos 11 y 12, • [SKS 2002] capítulo 2 • [EN 2002] capítulos 3 y 4; Î Notación por defecto que vamos a usar • [MPM 1999] capítulo 2 3 Tema 3. Modelo Entidad Relación 3.1. Introducción e historia del modelo Entidad-Relación • Modelo de datos conceptual de alto nivel • Propuesto por Peter P P. Chen en 1976 – Extensiones/aportaciones de muchos otros autores » No existe un único MER, sino una FAMILIA DE MODELOS • Describe el “mundo real” como un conjunto de ENTIDADES y de RELACIONES entre ellas • Gran difusión – Muy extendido en los métodos de diseño de bases de datos – Soportado por herramientas software de diseño (CASE) 4 Tema 3. Modelo Entidad Relación 2 3.1. Introducción e historia del modelo Entidad-Relación En el proceso de diseño... Requisitos de datos DISEÑO CONCEPTUAL Esquema Conceptual MER 5 Tema 3. Modelo Entidad Relación 3.1. Introducción e historia del modelo EntidadRelación Esquema conceptual • Descripción concisa de los requisitos de información de los usuarios – Descripciones detalladas de • TIPOS DE DATOS • RELACIONES ENTRE DATOS • RESTRICCIONES que los DATOS deben cumplir • Sin detalles de implementación – Más fácil de entender – Comunicación con el usuario no técnico 6 Tema 3. Modelo Entidad Relación 3 3.2. Conceptos básicos del modelo • • • • Entidad ( entity tit ) Atributo ( attribute ) Dominio ( values set ) Relación ( relationship ) 7 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo ENTIDAD • Cosa u objeto del mundo real con existencia propia y distinguible del resto • Objeto con existencia... – física o real (una persona, un libro, un empleado) – abst abstracta acta o co conceptual ceptua (u (una a as asignatura, g a u a, un u viaje) aje) • “Persona, lugar, cosa, concepto o suceso, real o abstracto, de interés para la empresa” (ANSI, 1977) 8 Tema 3. Modelo Entidad Relación 4 3.2. Conceptos básicos del modelo ATRIBUTO • Propiedad p o característica de una entidad • Una entidad particular es descrita por los valores de sus atributos: titulo = El alquimista impaciente genero = Thriller p1 nacionalidad = España añoestreno = 2002 ... dni = 87654321 nss = 1122334455 nombre = Cristina Aliaga Gil nacionalidad = España ... e1 Tema 3. Modelo Entidad Relación 9 3.2. Conceptos básicos del modelo TIPO DE ENTIDAD (entity set) • Define un conjunto de entidades que poseen los mismos atributos PELICULA: titulo, genero, nacionalidad, añoestreno,numcopias EMPLEADO: dni, nss, nombre, fechanacim, direccion, telefono, altura, nacionalidad, edad Notación EMPLEADO PELICULA CLIENTE LOCAL VIDEOCLUB DIRECTOR ACTOR 10 Tema 3. Modelo Entidad Relación 5 3.2. Conceptos básicos del modelo Instancia de un tipo de entidad • También... – – – – p3 Ocurrencia Realización Ejemplar Entidad concreta o individual PELICULA p2 titulo = Amores perros genero = Drama nacionalidad = Méjico añoestreno = 1999 ... titulo = El señor de los anillos genero = Fantasía nacionalidad = EEUU añoestreno = 2001 ... p4 titulo = Amelie genero = Comedia nacionalidad = Francia añoestreno = 2001 ... 11 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Intensión y Extensión • Un tipo de entidad describe el esquema o intensión para un conjunto de entidades que poseen la misma estructura EMPLEADO: dni, nss, nombre, dirección, telefono, altura, fechanacim, nacionalidad, edad • Las instancias del tipo de entidad se agrupan en un conjunto de entidades o extensión e1 • (87654321, (87654321 1122334455, 1122334455 “Cristina Cristina Aliaga Gil Gil”, “Libertad Libertad, 2. 2 Yecla Yecla. Murcia. 30510”, 968100200, 1’60, 28/07/1979, España, 23) e2 • (12345678, 6677889900, “Antonio Gil Sánchez”, “Paz, 5. Murcia. Murcia.30012”, 968111222, 1’76, 14/04/1944, España, 58) e3 • (11223344, 1234567890, “Julia Sauce”, “Justicia, 20. Yecla. Murcia. 30510”, 968000222, 1’59, 23/05/1947, España, 55) ... 12 Tema 3. Modelo Entidad Relación 6 3.2. Conceptos básicos del modelo Tipos de atributos • • • • Simples o Compuestos Almacenados o Derivados Monovalorados o Multivalorados Opcionales 13 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Atributos Simples o Compuestos • Atributos compuestos – Pueden dividirse en otros con significado propio fechanacim direccion dia mes año calle ciudad provincia codpostal – Valor compuesto = concatenación de valores de componentes • Atributos simples – No divisibles. Atómicos genero 14 Tema 3. Modelo Entidad Relación 7 3.2. Conceptos básicos del modelo Atributos Almacenados o Derivados • Atributos derivados – Valor calculado a partir de otra información ya existente (atributos, entidades relacionadas) – Son información redundante... edad [de EMPLEADO], cálculo a partir de fechanacim » atributo derivado del valor de otro atributo numcopias [de una PELICULA], cuenta del número de entidades COPIA relacionadas con cada película concreta » atributo derivado de entidades relacionadas • Atributos almacenados fechanacim [de cada EMPLEADO] nacionalidad [de una PELICULA] 15 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Atributos Monovalorados o Multivalorados • Atributos monovalorados (monovaluados) – sólo un valor para cada entidad fechanacim [de un EMPLEADO particular] añoestreno [de cada PELICULA concreta] • Atributos multivalorados (multivaluados) – más de un valor para la misma entidad nacionalidad [ PELICULA coproducida por varios países ] telefono [ EMPLEADO con varios teléfonos de contacto] – pueden tener límites superior e inferior del número de valores por entidad nacionalidad (1-2) telefono (0-3) 16 Tema 3. Modelo Entidad Relación 8 3.2. Conceptos básicos del modelo Atributos Opcionales (nulos) • El nulo (null value) es usado cuando... cuando – Se desconoce el valor de un atributo para cierta entidad • El valor existe pero falta altura [de un EMPLEADO] • No se sabe si el valor existe o no telefono [de un EMPLEADO] – La entidad no tiene ningún valor aplicable para el atributo: fechaalquiler [PELICULA sólo en vídeo-venta (no alquiler)] 17 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Notación para atributos [EN2002] [MPM1999] ciudad provincia calleciudadprovincia codpostal codpostal fechanacim fechana dirección dirección telefono (0,3) cim (0,3) nombre telefono EMPLEADO (0,1) nomb altura altura EMPLEADO (1,2) re (1,2) D nss nss nacionalidad nacionalidad dni edad dni edad calle 18 Tema 3. Modelo Entidad Relación 9 3.2. Conceptos básicos del modelo Atributos Clave • Atributo con valor distinto para cada instancia de un tipo de entidad dni en EMPLEADO • Una clave identifica de forma única cada entidad concreta Ö atributo identificador • Notación EMPLEADO dni [EN2002] EMPLEADO dni [MPM1999] 19 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Atributos Clave (ii) • Una clave puede estar formada por varios atributos Ö clave compuesta – Combinación de valores distinta para cada instancia (nombre, fechanacim) en el tipo de entidad EMPLEADO – Una clave compuesta debe ser mínima • Un tipo de entidad puede tener más á de d una clave l Ö claves l candidatas did t Claves o Identificadores Candidatos de EMPLEADO: – dni – nss – (nombre, fechanacim) 20 Tema 3. Modelo Entidad Relación 10 3.2. Conceptos básicos del modelo Atributos Clave (iii) • Atributo identificador principal (IP) – Clave Principal – Elegido (por el diseñador) de entre los identificadores candidatos (IC), para ser el medio principal de identificación de las instancias del tipo de entidad – dni en EMPLEADO • Atributos identificadores alternativos (IA) – Claves Alternativas – El resto de IC’s – nss y (nombre, fechanacim) en EMPLEADO 21 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Notación para atributos clave [EN2002] [MPM1999] ciudad provincia provincia calleciudad codpostal codpostal fechanacim dirección dirección fechanacim telefono (0,3) (0,3) nombre EMPLEADO telefono (0,1) altura altura n-f EMPLEADO (1,2) (1,2) D n-f nacionalidad nombre nss IP nss nacionalidad dni edad dni edad calle En el MER es obligatorio que todo tipo de entidad tenga un identificador 22 Tema 3. Modelo Entidad Relación 11 3.2. Conceptos básicos del modelo DOMINIO (values set) • Conjunto de valores • Cada atributo simple está asociado a un dominio, que especifica sus valores válidos Atributo Dominio nombre NOMBRES Descripción Dominio cadenas de hasta 30 caracteres alfabéticos telefono TELEFONOS cadenas de hasta 9 caracteres numéricos altura MEDIDAS números reales entre 0 y 2’5 2 5 (metros) ... ... ... No suele representarse, aunque una forma nombre de hacerlo sería: EMPLEADO telefono Tema 3. Modelo Entidad Relación [MPM1999] altura NOMBRES TELEFONOS MEDIDAS 23 3.2. Conceptos básicos del modelo RELACIÓN (relationship) • También “interrelación” interrelación • Asociación, vínculo o correspondencia entre instancias de entidades relacionadas de alguna manera en el “mundo real” – el director “Alejandro Amenábar” ha rodado la película “Mar adentro” – el empleado 87654321 trabaja en el local de videoclub “principal” – la película “El imperio contraataca” es una continuación de la película “La guerra de las galaxias” 24 Tema 3. Modelo Entidad Relación 12 DIRECTOR HA_RODADO PELICULA Instancia del tipo de relación Tipo de Entidad: conjunto de instancias Vacas J. Médem Tesis C. Saura Belle Epoque F. Trueba Torrente S. Segura g Tierra A. Amenábar n Abre los ojos Tipo de Relación: conjunto de instancias Tema 3. Modelo Entidad Relación n Los otros 25 3.2. Conceptos básicos del modelo TIPO DE RELACIÓN (relationship set) • Estructura genérica o abstracción del conjunto de relaciones existentes entre dos o más tipos de entidad un DIRECTOR ha rodado PELICULA’s • Notación DIRECTOR HA_RODADO PELICULA 26 Tema 3. Modelo Entidad Relación 13 2.2. Conceptos básicos del modelo Grado de un tipo de relación • Número de tipos de entidad que participan en el tipo de relación – Binaria: grado 2 (el más frecuente) – Ternaria: grado 3 – Reflexiva (o recursiva): grado 1 ACTUA_EN ACTOR PELICULA CLIENTE CONTINUACION DE PELICULA ALQUILA PELICULA LOCAL_VIDEOCLUB 27 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Nombres de Rol (papel) • Todo tipo de entidad que participa en un tipo de relación juega un papel específico en la relación DIRECTOR realizador HA_RODADO film PELICULA • Los nombres de rol se deben usar, sobre todo, en los tipos de relación reflexivos, para evitar ambigüedad original VERSION_DE versión PELICULA 28 Tema 3. Modelo Entidad Relación 14 3.2. Conceptos básicos del modelo Restricciones estructurales sobre tipos de relación • Limitan las p posibles combinaciones de entidades que pueden participar en las relaciones • Extraídas de la situación real que se modela “Una película debe haber sido dirigida por uno y sólo un director” “Un Un director ha dirigido al menos una película y puede haber dirigido muchas” • Clases de restricciones estructurales: – Razón de cardinalidad (o tipo de correspondencia) – Razón de participación 29 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Razón de Cardinalidad • Número máximo de instancias de tipo de relación l ió en las l que puede d participar una misma instancia de tipo de entidad – la cardinalidad de HA_RODADO es “1 a N” – HA_RODADO es de tipo “1 a N” DIRECTOR • Notación – etiqueta en la línea que une entidad y relación – Ojo: da la sensación de que se representa “al revés” 1 HA_RODADO N PELICULA 30 Tema 3. Modelo Entidad Relación 15 3.2. Conceptos básicos del modelo Razón de Cardinalidad • Razones de cardinalidad más comunes: – 1:1 (“uno a uno”) – 1:N (“uno a muchos”) – M:N (“muchos a muchos”) trabajador EMPLEADO encargado d 1 1 TRABAJA_EN ACTOR M personaje ACTUA_EN SUPERVISA sucursal 1 lugar trabajo N film N PELICULA LOCAL_VIDEOCLUB 31 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Razón de Cardinalidad Notación [MPM1999] • Número máximo de instancias de un tipo d entidad de tid d que pueden d estar t relacionadas l i d con una instancia del otro tipo de entidad • Notación – Etiqueta (1:1, 1:N, M:N…) junto al tipo de relación, o – Flecha en sentido “... a N” trabajador ACTOR EMPLEADO encargado 1:1 TRABAJA_EN 1:N SUPERVISA M:N ACTUA_EN sucursal lugar trabajo LOCAL_VIDEOCLUB PELICULA 32 Tema 3. Modelo Entidad Relación 16 3.2. Conceptos básicos del modelo Razón de Participación • Especifica si toda la extensión de un tipo de entidad participa en un tipo de relación, o sólo parte de la extensión • Indica si hay dependencia en existencia de un tipo de entidad respecto de un tipo de relación • Clases de participación: – Participación total (dependencia en existencia) – Participación parcial 33 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Razón de Participación (ii) • Notación – Líneas dobles o simples DIRECTOR trabajador 1 1 EMPLEADO encargado TRABAJA_EN 1 lugar trabajo 1 SUPERVISA sucursal HA__ RODADO N PELICULA ACTOR personaje M ACTUA_EN film N PELICULA N LOCAL_VIDEOCLUB 34 Tema 3. Modelo Entidad Relación 17 Ejercicio 1 Diseñar con el modelo EER una BD de la siguiente situación: • • • • • • • • Consideremos el caso de un campeonato juvenil (menores de 25 años) de fútbol. Existen distintos aspectos a considerar para este caso. Hay equipos de a lo menos 11 jugadores. Cada jugador puede participar en un equipo solamente. En cada partido juegan dos equipos. En cada partido participan 3 colegiados: un árbitro, un árbitro de banda derecha y un árbitro de banda izquierda. Cada jugador tiene asignadas posiciones en las que puede jugar en un partido. C d jugador Cada j d de d un equipo i participa ti i en un partido tid en una posición, i ió que debe ser alguna para las cuales está preparado. No necesariamente todas las posiciones deben ser ocupadas en un partido (puede haber más de once posiciones). 35 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Cardinalidad de tipo de entidad • Otra forma de expresar p las razones de cardinalidad y participación PERSONA PERSONA EDIFICIO USA POSEE EDIFICIO PERSONA USA p1 e1 p1 e2 p2 e1 e2 p2 e3 p3 EDIFICIO POSEE e4 e3 p3 e4 36 Tema 3. Modelo Entidad Relación 18 3.2. Conceptos básicos del modelo Cardinalidad de tipo de entidad • Números mínimo y máximo de instancias del tipo de relación en las que puede intervenir una instancia del tipo de entidad • Notación – (min, max) en la línea que une entidad y relación (1 ) (1,n) PERSONA (0,n) USA POSEE (0 ) (0,m) EDIFICIO (1,1) 37 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Cardinalidad de tipo de entidad (iii) EMPLEADO 1 TRABAJA_EN 1 SUPERVISA N 1 LOCAL_VIDEOCLUB EMPLEADO (1,1) TRABAJA_EN (1,1) (0,n) SUPERVISA (1,1) LOCAL_VIDEOCLUB ACTOR M ACTUA_EN N PELICULA ACTOR (1,n) ACTUA_EN (0,m) PELICULA 38 Tema 3. Modelo Entidad Relación 19 3.2. Conceptos básicos del modelo Cardinalidad de tipo de entidad Notación MPM1999 • Números mínimo y máximo de instancias de un tipo de entidad que pueden estar relacionadas con una instancia del otro tipo de entidad • Notación – (min, max) en la línea que une entidad y relación PERSONA (0,m) (1,1) USA (1,n) POSEE EDIFICIO (0,n) 39 Tema 3. Modelo Entidad Relación 2.2. Conceptos básicos del modelo Cardinalidad de tipo de entidad (v) • Comparación de notaciones [[EN2002]] PERSONA PERSONA (0,n) POSEE (1,1) EDIFICIO p1 POSEE ( PERSONA(0,n) : EDIFICIO(1,1) ) EDIFICIO POSEE e1 e2 p2 e3 [MPM1999] PERSONA (1,1) POSEE (0,n) EDIFICIO p3 e4 POSEE( PERSONA(1,1) : EDIFICIO(0,n) ) En toda notación, la cardinalidad de una entidad es la etiqueta de la línea que la une a la relación 40 Tema 3. Modelo Entidad Relación 20 3.2. Conceptos básicos del modelo Atributos de tipos de relación • Conceptualmente p pertenecen p a la relación – Un atributo de una M:N es propio de la relación – Un atributo de una 1:1 o 1:N “se puede llevar” a uno de los tipos de entidad participantes EMPLEADO 1 h horas TRABAJA EN TRABAJA_EN horas 1 SUPERVISA f h i i i fechainicio N 1 LOCAL_VIDEOCLUB fechainicio horas 41 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Tipo de Entidad Débil • No tiene atributos clave propios • Una instancia se identifica por su relación con una instancia de otro tipo de entidad – Tipo de relación identificador • Relaciona un tipo de entidad débil y un tipo de entidad regular (fuerte, dominante, padre, propietaria) – Clave parcial (o discriminante) • Atributos de la entidad débil, que identifican de forma única cada instancia, siempre que esté relacionada con una instancia del tipo de entidad regular – Clave = (clave_entidad_regular, clave_parcial) • Notación Tema 3. Modelo Entidad Relación COPIA 42 21 3.2. Conceptos básicos del modelo Tipo de entidad débil (ii) Tipo de Entidad Regular PELICULA Tipo de Relación Identificador TIENE PACIENTE nss 1 ACUDE N 1 N COPIA diahora VISITA_MEDICA título numcopia N Clave parcial Cl i lo Discriminante ASISTIDA POR 1 MEDICO especialidad ncolegiado Dependencia en existencia nombre 43 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Tipo de entidad débil (iii) • No toda participación total (o dependencia en existencia) implica un tipo de entidad débil EMPLEADO dni 1 POSEE N PERMISO CONDUCCION numlicencia tipo PERMISO_CONDUCCIÓN no es débil: depende en existencia de EMPLEADO, pero tiene clave primaria propia 44 Tema 3. Modelo Entidad Relación 22 3.2. Conceptos básicos del modelo Tipo de entidad débil (iv) Notación [MPM1999] 1 Definición distinta de tipo de entidad débil • La existencia de una instancia del tipo de entidad débil depende de la existencia de una instancia del tipo de entidad regular – Tipo de relación débil (o dependencia) • Relaciona un tipo de entidad débil y otro regular – Clases de dependencia: • En existencia • En identificación 45 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Tipo de entidad débil (v) [MPM1999] • Dependencia p en existencia (1 entre entidades) – Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad débil que dependen de ella – Etiqueta “E” en el tipo de relación débil • Dependencia en identificación – Además de la dependencia en existencia... – Una instancia del tipo de entidad débil no se puede identificar por sí misma – Su clave es (clave_entidad_regular, clave_parcial) – Etiqueta “ID” en el tipo de relación débil 46 Tema 3. Modelo Entidad Relación 23 3.2. Conceptos básicos del modelo Tipo de entidad débil (vi) dni EMPLEADO Tipo de Relación Débil E 1:N POSEE [MPM1999] titulo PELICULA 1:N ID TIENE numlicencia numcopia PERMISO CONDUCCION ti tipo COPIA PERMISO_CONDUCCION es débil, pues depende en existencia de EMPLEADO, pero no depende en identificación idcopia COPIA es débil, pues depende en existencia de PELICULA, y también depende en identificación 47 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Tipo de entidad débil (vii) Comparación de conceptos y notación [EN2002] CLIENTE [MPM1999] dni CLIENTE (1,1) 1 E POSEE N PRESTAMO POSEE numprestamo 1:N (0,n) PRESTAMO dni numprestamo Dependencia en existencia 48 Tema 3. Modelo Entidad Relación 24 3.2. Conceptos básicos del modelo Tipo de entidad débil (viii) Comparación de conceptos y notación (ii) [EN2002] [MPM1999] numprestamo PRESTAMO numprestamo PRESTAMO 1 (1,1) TIENE 1:1 N PAGO numpago ID TIENE (0,n) PAGO numpago idpago Entidad Débil de otra entidad débil 49 Dependencia en identificación Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Tipo de entidad débil (ix) Comparación de conceptos y notación (iii) [EN2002] ACTOR [MPM1999] nombre ACTOR M (0,m) ACTUA_EN ACTUA_EN N PELICULA nombre título (1,n) PELICULA M:N título Participación total 50 Tema 3. Modelo Entidad Relación 25 3.2. Conceptos básicos del modelo Tipos de relación con grado superior a dos [EN2002] CLIENTE CLIENTE (0,n) (1,1) (0,1) ALQUILA fecha [MPM1999] CINTA VIDEO (0,m) f h fecha LOCAL VIDEOCLUB (1,n) ALQUILA (1 1) (1,1) CINTA VIDEO LOCAL VIDEOCLUB Cardinalidad de los tipos de entidad 51 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Tipos de relación con grado superior a dos (ii) Equivalencia q ternaria – varias binarias [EN2002] fecha (0,n) CLIENTE (0,n) ALQUILA fecha (0,m) LOCAL VIDEOCLUB (0,1) CLIENTE (1,m) CINTA VIDEO (0,1) CINTA VIDEO ALQUILA_EN (1,n) LOCAL VIDEOCLUB ALQUILA (1,1) (1,n) CONTIENE 52 Tema 3. Modelo Entidad Relación 26 3.2. Conceptos básicos del modelo Tipos de relación con grado superior a dos (iii) [EN2002] idprov PROVEEDOR cantidad codpr (1,n) PUEDE SUMINISTRAR (1,m) (1,m) (0,m) SUMINISTRA fecha (1,n) PROVEEDOR PRODUCTO PRODUCTO PROVEE (1,p) (1 n) (1,n) TIENDA (0 ) (0,n) TIENDA VENDE (1,m) nombre Pérdida de semántica... 53 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Tipos de relación con grado superior a dos (iv) • Solución típica: coexistencia ternaria/binarias [EN2002] idprov (1,n) PROVEEDOR (1,m) PROVEE (1,n) TIENDA (1,n) (0,m) SUMINISTRA (1,p) cantidad fecha (1,m) PUEDE SUMINISTRAR (1,m) codpr PRODUCTO (0,n) VENDE nombre 54 Tema 3. Modelo Entidad Relación 27 3.2. Conceptos básicos del modelo Tipos de relación con grado superior a dos (v) • Otra solución: relación ternaria como entidad débil (Entidad Asociativa) [EN2002] (1,1) REALIZA (1,n) fecha cantidad (1,1) SUMINISTRO CONTIENE (1,1) PROVEEDOR (0,n) PRODUCTO RECIBE idprov codpr (1,n) nombre TIENDA 55 Tema 3. Modelo Entidad Relación 3.2. Conceptos básicos del modelo Tipos de relación con grado superior a dos (vi) • Relaciones ternarias “falsas” idemp dni EMPRESA (0,n) num fecha REALIZA (1,1) ENTREVISTA (0,m) [EN2002] CANDIDATO (0,1) GENERA (1,1) OFERTA EMPLEO idoferta Tipo de entidad débil de más de un tipo de entidad 56 Tema 3. Modelo Entidad Relación 28 Ejercicio 2:Diseñar con el modelo EER una BD de un pequeño aeropuerto. • • • • • • Control de cada avión registrado en el aeropuerto (Nº Registro, matrícula, antigüedad, fecha registro,...). Cada avión es de un tipo determinado, recogiéndose de cada tipo su modelo, capacidad y peso. Control de los hangares (Código hangar, capacidad y localización) donde se estacionan aviones. Cada avión tiene designado un hangar. Control de los propietarios (individuales o corporativos) de aviones (nombre, dirección, teléfono). Relación N:M. Se registrará la fecha de compra de cada avión. Control de pilotos (Número de licencia). Están cualificados para pilotar determinados tipos de aviones. Control de empleados de mantenimiento (salario y turno). – Cualificados para trabajar en determinados tipos de aviones. – Mantienen aviones específicos – Para cada servicio de mantenimiento se registrará: fecha, código de trabajo y horas trabajadas. • Se registrará el NSS, nombre, dirección,... de todas las personas (mecánicos, pilotos, propietarios individuales) de la BD. 57 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo Modelo Entidad-Relación Extendido, MERE Enhanced Entity-Relationship model, EER Aportaciones A t i de d diversos di autores t all modelo d l Entidad-Relación «básico». Permiten representar... Relaciones exclusivas entre sí Jerarquías de Especialización/Generalización Agregación ó de d entidades d d 58 Tema 3. Modelo Entidad Relación 29 3.3. Extensiones del modelo Relaciones Exclusivas Dos (o más) tipos de relación son exclusivos, respecto de un tipo de entidad que participa en ambos, si cada instancia del tipo de entidad sólo puede participar en uno de los tipos de relación VEHÍCULO CONSUME GASTA GASOIL GASOLINA CONSUME y GASTA son exclusivas respecto del tipo de entidad VEHICULO 59 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo Especialización/Generalización (E/G) Caso especial de relación entre un tipo de entidad y varios otros tipos de entidad La jerarquía o relación que se establece entre uno y otros corresponde a la noción de “es_un” o de “es_un_tipo_de” Estas jerarquías pueden formarse por especialización o bien por generalización 60 Tema 3. Modelo Entidad Relación 30 3.3. Extensiones del modelo E/G: Subtipo de un tipo de entidad Agrupación de instancias dentro de un tipo de entidad, que debe representarse explícitamente debido a su importancia para ell diseño di ñ o aplicación li ió Subtipos del tipo de entidad VEHÍCULO: Subtipos del tipo de entidad EMPLEADO: CAMIÓN TURISMO AUTOBÚS CICLOMOTOR SECRETARIO GERENTE COMERCIAL El tipo de entidad que se especializa en otros se llama supertipo ( VEHICULO, EMPLEADO ) 61 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo E/G: Relación Supertipo/Subtipo Es la relación que se establece entre un supertipo y cada uno de sus subtipos (noción es_un o es_un_tipo_de) EMPLEADO [EN2002] Notación: EMPLEADO SECRETARIO SECRETARIO GERENTE GERENTE EMPLEADO COMERCIAL [MPM1999] COMERCIAL [SKS1998] ES SECRETARIO GERENTE COMERCIAL 62 Tema 3. Modelo Entidad Relación 31 3.3. Extensiones del modelo E/G: Relación Supertipo/Subtipo (ii) La extensión de un subtipo p es un subconjunto j de la extensión del supertipo p p Una instancia de subtipo también es instancia del supertipo y es la misma instancia, pero con un papel específico distinto Una instancia no puede existir sólo por ser miembro de un subtipo: también debe ser miembro del supertipo Una instancia del supertipo puede no ser miembro de ningún subtipo VEHÍCULO CAMIÓN TURISMO EMPLEADO_HOSPITAL CICLOMOTOR MÉDICO CELADOR ENFERMERO LIMPIADOR 63 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo E/G: Herencia de tipo • Un subtipo puede tener atributos propios (específicos) y participar en relaciones por separado • Un subtipo p hereda todos los atributos del supertipo, p p , y toda relación en la que participa el supertipo – Un subtipo, con sus atributos y relaciones específicos, más los atributos y relaciones que hereda del supertipo, es un tipo de entidad por derecho propio numBastidor precio VEHÍCULO (1 n) (1,n) FABRICA N:1 [MPM1999] (1,1) CAMIÓN numEjes TURISMO tonelaje numPuer MOTOCICLETA numPlazas FABRICANTE (1 1) (1,1) ID LLEVA cilindrada 1:1 (0,1) SIDECAR 64 Tema 3. Modelo Entidad Relación 32 3.3. Extensiones del modelo E/G: Especialización Proceso de definición de un conjunto de subtipos de un tipo de entidad (» supertipo) Subtipos suelen estar definidos según característica distintiva de las entidades del supertipo Discriminante de la especialización [MPM1999] EMPLEADO actividad SECRETARIO GERENTE COMERCIAL 65 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo E/G: Especialización (ii) Varias especializaciones de un tipo de entidad, con base en diferentes discriminantes [MPM1999] VEHÍCULO motorS/N VEHÍCULO_A_MOTOR tipo VEHÍCULO_SIN_MOTOR CAMIÓN TURISMO PELÍCULA género DRAMA TERROR COMEDIA MOTOCICLETA color BLANCO_Y_NEGRO [EN2002] COLOR 66 Tema 3. Modelo Entidad Relación 33 3.3. Extensiones del modelo E/G: Especialización (iii) Conviene incluir relaciones subtipo/supertipo si hay... Atributos que sólo tienen sentido para algunas instancias de un tipo y no para todas (atributos específicos) especialidadMédica «no es aplicable» a CELADOR Tipos de relación en los que sólo participan algunas entidades de un tipo y no todas (relaciones específicas) Relación SUPERVISA entre CELADOR y SECCIÓN_HOSPITAL 1:1 [MPM1999] CELADOR SUPERVISA (1,1) (1,1) SECCIÓN_HOSPITAL 67 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo E/G: Generalización • Proceso inverso de la especialización • Suprimir diferencias entre varios tipos de entidad: identificar atributos y relaciones comunes,, y formar un supertipo p p q que los incluya numBastidor precio numBastidor fechaFab CAMIÓN precio numEjes tonelaje G numBastidor fechaFab precio TURISMO VEHÍCULO CAMIÓN numEjes tonelaje fechaFab TURISMO numPuer numPuer 68 Tema 3. Modelo Entidad Relación 34 3.3. Extensiones del modelo E/G: Generalización vs. Especialización × Generalización Énfasis en las similitudes Cada instancia del supertipo es también una instancia de alguno de los subtipos Ø Especialización Énfasis en las diferencias Alguna instancia del supertipo puede no ser instancia de ningún subtipo 69 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo Restricciones sobre la E/G Definición ¿Qué instancias del supertipo pertenecen a cada subtipo? Disyunción/Solapamiento ¿A cuántos subtipos puede pertenecer (a la vez) una instancia del supertipo? Completitud/Parcialidad ¿Debe toda instancia del supertipo pertenecer a algún subtipo? 70 Tema 3. Modelo Entidad Relación 35 3.3. Extensiones del modelo Restricciones sobre la E/G: Definición Subtipos definidos por predicado o condición Condición de pertenencia a cada subtipo con base en el valor de algún atributo del supertipo Restricción que especifica que... Las instancias del subtipo deben satisfacer la condición Todas las instancias del supertipo que cumplen la condición, deben pertenecer al subtipo PERSONA matriculado=true estadoLaboral=en_activo EMPLEADO ESTUDIANTE 71 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo Restricciones sobre la E/G: Definición (ii) • Subtipos definidos por atributo – Todas las subclases definen la condición de pertenencia en términos del mismo atributo – ... es el discriminante de la especialización EMPLEADO_HOSPITAL PERSONA estadoLaboral en_activo _ en_paro _p claseTrabajo médico PARADO EMPLEADO MÉDICO [EN2002] celador enfermero CELADOR limpiador ENFERMERO LIMPIADOR [MPM1999] 72 Tema 3. Modelo Entidad Relación 36 3.3. Extensiones del modelo Restricciones sobre la E/G: Definición (iii) Subtipos definidos por el usuario No existe (o no interesa definir) ninguna condición de pertenencia a los subtipos El usuario, al insertar una instancia, elige a qué subtipo pertenece [MPM1999] PROFESOR TITULAR AYUDANTE ASOCIADO 73 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo Restricciones sobre la E/G: Disyunción/Solapamiento Subtipos disjuntos si una instancia del supertipo puede ser miembro de, como máximo, uno de los subtipos VEHÍCULO VEHÍCULO d TURISMO CAMIÓN [EN2002] TURISMO CAMIÓN [MPM1999] 74 Tema 3. Modelo Entidad Relación 37 3.3. Extensiones del modelo Restricciones sobre la E/G: Disyunción/Solapamiento (ii) Subtipos solapados si una instancia del supertipo puede ser, a la vez, miembro de más de un subtipo Es la opción «por defecto» PERSONA PERSONA o EMPLEADO ESTUDIANTE [EN2002] EMPLEADO ESTUDIANTE [MPM1999] 75 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo Restricciones sobre la E/G: Completitud/Parcialidad Especialización total (completa) indica que toda instancia del supertipo también debe ser instancia de algún subtipo ANIMAL ANIMAL d MACHO HEMBRA HERMAFRODITA [EN2002] MACHO HEMBRA HERMAFRODITA [MPM1999] 76 Tema 3. Modelo Entidad Relación 38 3.3. Extensiones del modelo Restricciones sobre la E/G: Completitud/Parcialidad (ii) E Especialización i li ió parcial i l indica i di que es posible ibl que alguna l instancia del supertipo no pertenezca a ninguno de los subtipos Es la opción «por defecto» La unión de las extensiones de los subtipos no es la extensión del supertipo en su totalidad ALIMENTO ALIMENTO [EN2002] [MPM1999] d LACTEO FRUTA VERDURA LACTEO FRUTA VERDURA 77 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo E/G: Tipos de Especialización Las restricciones de disyunción y completitud son independientes entre sí Dan lugar a 4 tipos de especialización: Disjunta y Total Disjunta y Parcial Solapada S l d y Total T t l Solapada y Parcial Lo veremos con un ejemplo de una base de datos de una Universidad 78 Tema 3. Modelo Entidad Relación 39 3.3. Extensiones del modelo E/G: Especialización Disjunta y Total EMPLEADO ESTUDIANTE claseTrabajo DOCENTE tipo ADMON_Y_SERV BECARIO BECARIO NO_BECARIO Especialización Disjunta y Parcial DOCENTE cuerpoDocente AYUDANTE TITULAR [MPM1999] CATEDRÁTICO 79 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo E/G: Especialización Solapada y Total PERSONA ocupación EMPLEADO [MPM1999] ESTUDIANTE Especialización Solapada y Parcial EMPLEADO dedicación DOCENTE INVESTIGADOR 80 Tema 3. Modelo Entidad Relación 40 3.3. Extensiones del modelo E/G: Reglas de inserción y eliminación Deben aplicarse a la Especialización y la Generalización, Generalización debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en todos los subtipos definidos por predicado o por atributo, para los cuales satisface el predicado de definición Insertar una instancia en un supertipo de una especialización total implica insertarla en, al menos, un subtipo Y si la especialización es disjunta, entonces la instancia se insertará en un único subtipo 81 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo E/G: Reglas de inserción y eliminación (ii) Eliminar una instancia de un supertipo implica eliminarla de todos los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo si la especialización es ... disjunta y total, o bien solapada y total, y la instancia ya sólo pertenece al subtipo (se eliminó del resto) En el resto de casos, la instancia sólo se elimina del subtipo No del supertipo (L lo haría el usuario, si fuese necesario) 82 Tema 3. Modelo Entidad Relación 41 3.3. Extensiones del modelo E/G: Jerarquías y Retículas Hasta ahora hemos estudiado jerarquías de especialización en las que se cumple la restricción: Todo subtipo participa en sólo una relación supertipo/subtipo Un subtipo tiene un único supertipo: es el concepto de árbol E una retícula En tí l de d especialización... i li ió Un subtipo puede participar en varias relaciones supertipo/subtipo Un subtipo puede tener más de un supertipoÎ Herencia múltiple 83 Tema 3. Modelo Entidad Relación E/G: Ejemplo de Retículas nombre [MPM1999] PERSONA dni dirección sexo fechaIni DESEMPLEADO jornada salario EMPLEADO ocupación ESTUDIANTE tipoEstudiante dedicación (1, n) centro DOCENTE ADMÓN_Y_SERV puesto cuerpoDocente jornada carrera BECARIO NO_BECARIO beca CATEDRÁTICO TITULAR NO_NUMERARIO tipoCátedra tipoPlaza duraciónContrato 84 Tema 3. Modelo Entidad Relación 42 3.3. Extensiones del modelo E/G: Jerarquías y Retículas: Herencia múltiple En las jerarquías de especialización Cada subtipo hereda atributos y relaciones... de su (único) supertipo directo y de sus supertipos predecesores, hasta la raíz TITULAR hereda de DOCENTE, EMPLEADO y PERSONA En las retículas de especialización Un subtipo hereda atributos y relaciones... de sus supertipos (múltiples) directos Ö herencia múltiple y de todos sus supertipos predecesores, hasta la raíz » BECARIO hereda directamente de EMPLEADO y ESTUDIANTE, e indirectamente hereda de PERSONA Los subtipos compartidos dan lugar a retículas 85 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo E/G: Jerarquías y Retículas: Herencia múltiple (ii) En herencia múltiple pueden surgir conflictos al heredar atributos distintos denominados igual BECARIO hereda “jornada” de dos predecesores ¡¡ !! ¿Cómo resolver esta situación? Renombrar algunos de los atributos en conflicto BECARIO hereda ambos atributos: – “jornada” corresponde a “jornada” de EMPLEADO y – “jornadaEstudio” corresponde a “jornada” de ESTUDIANTE Definir un orden de prioridad en la herencia BECARIO hereda “jornada” de ESTUDIANTE y no de EMPLEADO 86 Tema 3. Modelo Entidad Relación 43 3.3. Extensiones del modelo E/G: Jerarquías y Retículas: Inhibición de la herencia Algunos modelos de datos permiten indicar que ciertos atributos del supertipo no deben ser heredados por los subtipos POLÍGONO [MPM1999] numVértices ancho PENTÁGONO TRIÁNGULO RECTÁNGULO alto CUADRADO lado “ancho” y “alto” no deberían ser heredados por el subtipo 87 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo E/G: Jerarquías y Retículas: Redefinición de atributos heredados Si un supertipo y un subtipo tienen un atributo con el mismo nombre se entiende que el atributo del subtipo redefine el nombre, del supertipo Se utiliza el mismo nombre y significado semántico pero se modifica cómo se calcula o cómo se representa el valor del atributo Tiene sentido sobre todo para atributos derivados área RECTÁNGULO ancho alto [MPM1999] área CUADRADO lado 88 Tema 3. Modelo Entidad Relación 44 3.3. Extensiones del modelo E/G: Jerarquías y Retículas: Tratamiento de la herencia • Consideraremos que en el MERE ... – Los subtipos heredan todos los atributos de los supertipos – Pero se permite la redefinición de atributos en los subtipos, y la inhibición de la herencia de atributos área RECTÁNGULO ancho alto CUADRADO [MPM1999] área l d lado • ... y si se da herencia múltiple y existe conflicto de nombres, el usuario elegirá entre – Renombrar algunos atributos en conflicto, o – Inhibir la herencia de algunos atributos 89 Tema 3. Modelo Entidad Relación Ejercicio 3 Analizar los ejercicios 1 y 2. Modelar las jerarquías de especialización/generalización existentes en los mismos. Generar los nuevos esquemas E/R 90 Tema 3. Modelo Entidad Relación 45 3.3. Extensiones del modelo Agregación de tipos de entidad Restricción inherente del MER: No puede expresar relaciones entre varias relaciones, ni entre un tipo de relación y un tipo de entidad La agregación... Permite combinar varios tipos de entidad, relacionados mediante un tipo de relación, para formar un tipo de entidad agregada de nivel superior Útil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad 91 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo Agregación de tipos de entidad (ii): Ejemplo 1 Esquema en el MERE que almacena información sobre las entrevistas que una ETT organiza entre solicitantes de empleo y diferentes empresas nombre EMPRESA dirección [EN2002] (1,n) M ENTREVISTA_A fecha nomContacto (1,m) N nif SOLICITANTE telefContacto nombre telef Algunas entrevistas dan lugar a ofertas de empleos y otras no ¿cómo modelamos esto? 92 Tema 3. Modelo Entidad Relación 46 3.3. Extensiones del modelo Agregación de tipos de entidad (iii): Ejemplo 1 S l ió 1 Solución 1: Relación R l ió ternaria t i EMPRESA ENTREVISTA_A SOLICITANTE OFERTA_EMPLEO [EN2002] ¡ERROR! » Toda entrevista da lugar a un empleo ¡ESO ES FALSO! 93 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo Agregación de tipos de entidad (iv): Ejemplo 1 Solución 2: EMPRESA [EN2002] ENTREVISTA_A SOLICITANTE RESULTA_EN OFERTA EMPLEO OFERTA_EMPLEO ¡ERROR! NO es posible establecer una relación entre varias relaciones, ni entre relaciones y entidades 94 Tema 3. Modelo Entidad Relación 47 3.3. Extensiones del modelo Agregación de tipos de entidad (v): Ejemplo 1 Solución 3: ENTREVISTA_A EMPRESA SOLICITANTE ENTREVISTA Entidad COMPUESTA o AGREGADA RESULTA_EN [EN2002] OFERTA_EMPLEO OK! OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN 95 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo Agregación de tipos de entidad (vi): Ejemplo 1 Solución 4: Relación ternaria « falsa» nombre nif EMPRESA (0,n) (0,m) REALIZA (1,1) fecha ENTREVISTA nomContacto SOLICITANTE (0,1) telefContacto GENERA (1,1) OFERTA EMPLEO idOferta Tipo de entidad débil de otros dos ¿Qué significa que ENTREVISTA tenga fecha como clave parcial? 96 Tema 3. Modelo Entidad Relación 48 3.3. Extensiones del modelo Agregación de tipos de entidad (vii): Ejemplo 1 Solución 5: nombre nif EMPRESA (0,n) SOLICITANTE fecha (1,1) REALIZA (1,1) ENTREVISTA (0,1) GENERA (1,1) (0,m) SUFRE OFERTA EMPLEO idOferta Tipo de entidad débil de otros dos 97 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo Agregación de tipos de entidad (viii): Ejemplo 2 • Esquema en el MERE que almacena información acerca de profesores y las asignaturas que éstos imparten, así como los di ersos medios qquee utilizan diversos tili an para impartir cada asignatura asignat ra (pizarra, transparencias, etc.) PROFESOR M EXPLICA N ASIGNATURA M UTILIZA N MEDIO ¡ERROR! no es posible establecer una relación entre una relación y una entidad 98 Tema 3. Modelo Entidad Relación 49 3.3. Extensiones del modelo Agregación de tipos de entidad (ix): Ejemplo 2 Solución: PROFESOR M N ASIGNATURA EXPLICA EXPLICACIÓN M Entidad COMPUESTA o AGREGADA UTILIZA N MEDIO 99 Tema 3. Modelo Entidad Relación 3.3. Extensiones del modelo MER : AGREGACIÓN • AGREGACIÓN COMPUESTO / COMPONENTE: – Un todo se obtiene por la unión de diversas partes, que pueden ser objetos distintos y que desempeñan papeles distintos en la agregación agregación. COCHE (1,1) CHASIS (1,1) MOTOR [MPM99] (4,4) RUEDA • AGREGACIÓN COLECCIÓN / MIEMBRO : – Un todo se obtiene por la unión de diversas partes del mismo tipo y que desempeñan el mismo papel en la agregación. – Se puede establecer orden entre las partes BOSQUE ARBOL FLOTA {NumBarco} BARCO 100 Tema 3. Modelo Entidad Relación 50 Ejercicio 4 • Revisar los esquemas E/R obtenidos en el ejercicio 3 y estudiar la necesidad o conveniencia de de emplear entidades agregadas Tema 3. Modelo Entidad Relación 101 Ejercicio 5: Hacer el MERE para la siguiente descripción Una organización de inmigración desea poseer un sistema de información para gestionar la información que genera su actividad cotidiana en relación a sus usuarios. Para cada usuario se recoge la información mediante dos fichas, una ficha de contacto y otra de seguimiento. Cada usuario tiene una serie de datos personales: nombre, apellidos, fecha de nacimiento, sexo, nacionalidad, fecha de alta, domicilio, email, teléfono, estado civil, número de hijos, número de la seguridad social, minusvalía (tipo y porcentaje), identificación (dni, nie o pasaporte), si tiene permiso de trabajo, si tiene permiso de residencia, si está empadronado, y el tipo de carnett d de conducir. d i Asimismo, cada usuario tiene un nivel de estudios (sin estudios, estudios primarios, estudios secundarios y titulación universitaria) y ha realizado una formación complementaria en base a cursos. Estos cursos tienen una duración, un año de realización y una entidad de realización. También se desea almacenar información sobre su situación temporal, distinguiendo entre si está desempleado o empleado. En caso de estar desempleado, se necesita saber cuánto tiempo lleva inscrito en la oficina de empleo, si ha trabajado anteriormente y, en este caso, una descripción del trabajo, su situación actual (parado sin empleo anterior, parado con empleo anterior, perceptor de algún tipo de prestación). En caso de ser trabajador en activo, se desea conocer el cargo que desempeña, el nombre del centro de trabajo y el tipo de contrato, si es por cuenta propia p p p o ajena j (en ( este caso,, si es indefinido o temporal). p ) Cada usuario tendrá un número de expediente, una persona de contacto en la organización y estará asociado a un gabinete de orientación. Con respecto al seguimiento de los usuarios, se desea tener información acerca de los contactos, la formación y el empleo de los usuarios. Con respecto a los contactos, se registra la fecha de cada uno, el motivo, las observaciones y el tipo de contacto (personal, telefónico, email). Respecto de la formación, interesa el curso de formación, sus fechas de inicio y fin y sus observaciones. Finalmente, se desea guardar la información referida a la empresa, el puesto, el mediador y las fechas de inicio y fin de cada empleo Tema 3. Modelo Entidad Relación 102 51