Vous êtes sur la page 1sur 69

Tema 2: Diseo Conceptual: El modelo E/R

Sistemas Gestores de Base de Datos

Introduccin
El Diseo de Bases de Datos es el proceso por el que se determina la organizacin de una Base de Datos, incluidas su estructura, contenido y las aplicaciones que se han de desarrollar. El diseo de una Base de Datos es un proceso complejo que abarca decisiones a muy distintos niveles. La complejidad se controla mejor si se descompone el problema en subproblemas y se resuelve cada uno de estos subproblemas independientemente, utilizando tcnicas especficas. As, el diseo de una Base de Datos se descompone en: diseo conceptual, diseo lgico y diseo fsico. En cada una de estas fases se utiliza el modelo de datos correspondiente.

Introduccin

Fases del diseo de una BD


El diseo conceptual parte de las especificaciones de requisitos de usuario y su resultado es el esquema conceptual de la Base de Datos. Un esquema conceptual es una descripcin de alto nivel de la estructura de la Base de Datos, independientemente del SGBD que se vaya a utilizar para manipularlo. Los procesos de definicin de requisitos y del diseo conceptual exigen identificar las exigencias de informacin de los usuarios y representarlos en un modelo bien definido. Disearemos el esquema conceptual mediante el modelo Entidad-Relacin. El diseo lgico es el proceso de construir un esquema de la informacin que utiliza la empresa, basndose en un modelo conceptual de base de datos especfico, independiente del SGBD concreto que se vaya a utilizar (salvo en el modelo) y de cualquier otra consideracin fsica. En esta etapa, se transforma el esquema conceptual en un esquema lgico que utilizar las estructuras de datos del modelo de base de datos en el que se basa el SGBD que se vaya a utilizar, como puede ser el modelo relacional, el modelo de red, el modelo jerrquico o el modelo orientado a objetos. Conforme se va desarrollando el esquema lgico, ste se va probando y validando con los requisitos de usuario. La normalizacin es una tcnica que se utiliza para comprobar la validez de los esquemas lgicos basados en el modelo relacional, ya que asegura que las relaciones (tablas) obtenidas no tienen datos redundantes. Esta tcnica se presenta en el siguiente tema.

Fases del diseo de una BD


El diseo fsico es el proceso de producir la descripcin de la implementacin de la base de datos en memoria secundaria: estructuras de almacenamiento y mtodos de acceso que garanticen un acceso eficiente a los datos. Para llevar a cabo esta etapa, se debe haber decidido cul es el SGBD que se va a utilizar, ya que el esquema fsico se adapta a l. Entre el diseo fsico y el diseo lgico hay una realimentacin, ya que algunas de las decisiones que se tomen durante el diseo fsico para mejorar las prestaciones, pueden afectar a la estructura del esquema lgico. En general, el propsito del diseo fsico es describir cmo se va a implementar fsicamente el esquema lgico obtenido en la fase anterior. Concretamente, en el modelo relacional, esto consiste en:
Obtener un conjunto de relaciones (tablas) y las restricciones que se deben cumplir sobre ellas. Determinar las estructuras de almacenamiento y los mtodos de acceso que se van a utilizar para conseguir unas prestaciones ptimas. Disear el modelo de seguridad del sistema.

Como diseamos la BD
1.

A partir de la realidad, estudiarla (investigando, entre-vistando los usuarios, ...) haciendo el ANLISIS de requerimientos (Qu se quiere?). El resultado ser un conjunto de requerimientos redactados de forma concisa. A partir del Anlisis de requerimientos, disear el Es-quema CONCEPTUAL de la BD con un modelo de alto nivel (ME/R). A partir del Esquema conceptual, implementar la BD en un SGBD comercial (Relacional), obteniendo el esquema lgico.

2.

3.

Como diseamos la BD

Mundo Real

Diseo Conceptual (ME/R) Diseo Lgico (Modelo Relacional) Base De Datos

Anlisis de Requerimientos

El modelo Entidad/Relacion
El modelo Entidad-Relacin es un modelo conceptual de datos orientado a entidades. Se basa en una tcnica de representacin grfica que incorpora informacin relativa a los datos y las relaciones existentes entre ellos, para darnos una visin de mundo real, eliminando los detalles irrelevantes. CARACTERSTICAS DEL MODELO
Refleja tan solo la existencia de los datos, no lo que se hace con ellos. Se incluyen todos los datos relevantes del sistema en estudio. No est orientado a aplicaciones especficas. Es independiente de los SGBD. No tiene en cuenta restricciones de espacio, almacenamiento, ni tiempo de ejecucin. Est abierto a la evolucin del sistema. Es el modelo conceptual ms utilizado.

El modelo Entidad/Relacion
El Modelo Entidad-Relacin (o Modelo E-R o Modelo EntidadInterrelacin) fue propuesto por Peter Chen en 1976 para la representacin conceptual de los problemas del mundo real. Este modelo de datos representa los datos utilizando grafos y smbolos grficos, adems de tablas para la representacin de los datos y sus relaciones.

Elementos del modelo E/R


Los elementos bsicos del modelo E-R original son: ENTIDAD (entity) ATRIBUTO (attribute) DOMINIO (domain) RELACION (relationship)

Entidades
Entidad: Cualquier objeto (real o abstracto) que existe en la realidad y acerca del cual queremos almacenar informacin en la B.D. Por ejemplo, coches en un concesionario, pisos en una inmobiliaria, etc Algo con realidad objetiva que existe o puede ser pensado (Hall, 1976). Las entidades poseen un predicado asociado que hace que los ejemplares lo cumplen. Las entidades se representan grficamente mediante rectngulos con su nombre en el interior. Ejemplo: La entidad PROFESOR, cuyo predicado asociado es persona que ensea una materia, tiene un ejemplar 'Juana' que pertenece a ese tipo de entidad, ya que cumple dicho predicado (o al menos lo intenta ;)

Entidades
Ejemplo: MATERIA es una entidad. 'Fundamentos de Programacin', 'Ingls' y 'Fsica' son ocurrencias de la entidad MATERIA.

Ejemplo: POBLACION es una entidad. 'Jerez', 'Barcelona', 'Jimena', 'Mrida' son ocurrencias de la entidad POBLACION.

Tipos de entidades
Existen 2 clases de entidades: Regulares (fuertes). Son las entidades normales que tienen existencia por s mismas sin depender de otras. Su representacin grfica es la que ya hemos visto. Dbiles. Su existencia depende de otras. Por ejemplo si se desea almacenar la informacin de los cnyuges de los empleados, la entidad utilizada para ello ser una entidad dbil, ya que esta depende de la entidad Empleado, puesto que si desaparece un empleado de nuestra BD, tb tendr que desaparecer su cnyuge.

Atributos
Cada una de las propiedades o caractersticas que tiene una entidad, o incluso una relacin como veremos despus. Los atributos se representan mediante un circulito unido mediante una lnea a la entidad a la que corresponde con el nombre del atributo alado de dicho circulo.
Nmero Nombre

DEPARTAMENTO DEPARTAMENTO
Existen varias clasificaciones:

Director

Segn si pueden almacenar un valor o varios distinguimos entre monovaluado o multivaluado. Por ejemplo, el nombre del departamento es monovaluado, solo tiene un nombre. Supongamos que hubiera un atributo telfono, y que el departamento tuviese 2 nmeros distintos, entonces telfono sera multivaluado. O por ejemplo, el atributo nacionalidad de una entidad PELICULA coproducida por varios pases

Atributos
Tambin se clasifican en simples o compuestos, segn estn formados por varios componentes. Ejemplo de atributo compuesto:

Atributos
De los atributos que identifican de manera nica a la entidad se elige uno que se denominar identificador principal o primario y el resto sern alternativos. La forma de representarlos es pintando el circulo entero por dentro para el identificador primario y la mitad para los alternativos. A veces, tb aparecen los atributos primarios subrayados.

Atributos con valor nulo


El nulo (null value) es usado 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 numtelfono [de un EMPLEADO] La entidad no tiene ningn valor aplicable para el atributo: piso [del atributo direccin de la entidad EMPLEADO], no hay porque es una casa

Atributos derivados
Son atributos cuyo valor se obtiene aplicando una frmula (normalmente a partir del valor de otros atributos). Son atributos que a la postre no se almacenarn en la base de datos. Su valor se obtendr en el momento en que sea necesario aplicando la frmula asociada a ellos. En el diccionario de datos debe especificarse esta frmula o mtodo para calcular su valor. Se representan en un diagrama ER mediante un valo con lnea discontinua.

Son informacin redundante... edad [de EMPLEADO], clculo a partir de fechanacim atributo derivado del valor de otro atributo

Notaciones para atributos


Chen, al presentar el ME/R en 1976, propuso una representacin en forma de grafo. Desde entonces, diferentes autores han propuesto diversas notaciones grficas para estos mismos diagramas. Nosotros utilizaremos la notacin moderna simplificada, basada en la propuesta en el libro de De Miguel, Piattini y Marcos (1999). Otra notacin muy utilizada es la de Elmasri&Navathe.

Dominio
Es el conjunto de posibles valores que puede tomar un atributo. P.e.: El dominio del atributo DNI seria los nmero enteros de 8 cifras.

Ms de un atributo pueden compartir el mismo dominio. P.e.: Si incluimos el atributo fecha de incorporacin a la compaa en la entidad EMPLEADO, tiene el mismo dominio que fecha_n Los dominios se especificarn en el diccionario de datos. Es obligatoria la especificacin del nombre del dominio, el tipo y la descripcin.

Atributo

Dominio NOMBRES TELEFONOS MEDIDAS ...

Descripcin Dominio cadenas de hasta 30 caracteres alfabticos cadenas de hasta 9 caracteres numricos nmeros reales entre 0 y 25 (metros) ...

nombre telefono altura


...

Relaciones (Interrelaciones)
Asociacin, vnculo o correspondencia entre instancias de entidades relacionadas de alguna manera en el mundo real
el director Alejandro Amenbar ha rodado la pelcula Mar adentro el empleado 87654321 trabaja en el local de videoclub principal la pelcula El imperio contraataca es una continuacin de la pelcula La guerra de las galaxias

DIRECTOR

HA_RODADO
Instancia del tipo de relacin

PELICULA

Vacas J. Mdem C. Saura F. Trueba S. Segura A. Amenbar Tesis Belle Epoque Torrente Tierra Abre los ojos Los otros Tipo de Entidad: conjunto de instancias

Tipo de Relacin: conjunto de instancias

Relaciones (Interrelaciones)
Las relaciones se representan grficamente mediante rombos y su nombre aparece en el interior. Normalmente son verbos o formas verbales.

DIRECTOR

HA_RODADO

PELICULA

Grado de una relacin


El nmero de entidades que participan en la interrelacin se denomina grado.

Grado de una relacin

Grado de una relacin. Ejemplos.

Nombres de Rol (papel)


Todo tipo de entidad que participa en un tipo de relacin juega un papel especfico en la relacin DIRECTOR HA_RODADO PELICULA

realizador

film

Los nombres de rol se deben usar, sobre todo, en los tipos de relacin reflexivos, para evitar ambigedad

original VERSION_DE versin PELICULA

Tipos de correspondencias
El tipo de correspondencia es el nmero mximo de ocurrencias de cada entidad que pueden ocurrir en la interrelacin que se est tratando. Existen tres tipos de correspondencias: Uno a uno (1:1) Uno a muchos (1:N) Muchos a muchos (N:M) Supongamos 2 entidades A y B unidas mediante la relacin R. El tipo de correspondencia se coloca sobre la relacin R.

Tipos de correspondencia
Uno a uno (1:1) A cada ocurrencia de la entidad A le corresponde como mximo una ocurrencia de la entidad B, y viceversa.

Tipos de correspondencia
Uno a muchos (1:N) A cada ocurrencia de la entidad A le pueden corresponder varias ocurrencias de la entidad B. Pero a cada ocurrencia de la entidad B le corresponde como mximo una ocurrencia de la entidad A.

Tipos de correspondencia
Muchos a muchos (N:M) A cada ocurrencia de la entidad A le pueden corresponder varias ocurrencias de la entidad B. Y a cada ocurrencia de la entidad B le pueden corresponder varias ocurrencias de la entidad A.

Participacin de las entidades en las relaciones. Cardinalidad.


Cada entidad podr participar en la relacin con un mnimo y un mximo de ocurrencias. La CARDINALIDAD especifica el nmero mnimo y mximo de ocurrencias de una entidad que pueden intervenir en la relacin por cada ocurrencia de la otra entidad. Para obtener el tipo de correspondencia y consecuentemente las cardinalidades de la relacin se miran los mximos de las participaciones. Especial atencin requieren las cardinalidades mnimas:
Participacin mnima 0: significa que puede haber ocurrencias de una entidad que no estn asociadas a ninguna ocurrencia de la otra entidad. Participacin mnima 1: significa que toda ocurrencia de una entidad debe estar asociada a una ocurrencia de la otra entidad.

Participacin de las entidades en las relaciones. Cardinalidad.

Dependencia en existencia
Una interrelacin tambin puede ser regular o dbil segn asocie entidades regulares o entidades regulares con una dbil. Si una interrelacin es dbil, puede serlo en existencia o en identificacin. Dependencia en existencia Cuando las ocurrencias de la entidad dbil tienen que desaparecer si desaparecen las ocurrencias de la entidad fuerte de la cual dependen.
EX

EMPLEADO EMPLEADO

Tiene

CNYUGE

Dependencia en identificacin
Si adems de le dep. de existencia consideramos que para identificar una ocurrencia de la entidad Dbil nos hace falta la clave de la entidad regular de la que depende, esta dependencia (todava ms restrictiva) la llamaremos DEPENDENCIA DE IDENTIFICACIN.

Atributos de una relacin


Las relaciones tambin pueden tener atributos, igual que la entidades. P.e.: el

n de horas que un empleado trabaja en un proyecto es un atributo de la relacin trabaja (no puede ser ni de Empleado ni de Proyecto).

Generalizacin (herencia)
La Generalizacin se considera como un caso especial de interrelacin entre uno o varios tipos de entidad (subtipos) y un tipo de entidad ms general (supertipo), cuyas caractersticas son comunes a todos los subtipos. La interrelacin que se establece entre un supertipo y sus subtipos corresponde a la nocin de es_un o, mas exactamente a es_un_tipo_de. Esta interrelacin tiene la caracterstica de que toda ocurrencia de un subtipo es una ocurrencia del supertipo, aunque no sucede lo contrario, con lo que las cardinalidades sern siempre (1,1) en el supertipo y (0,1) o (1,1) en los subtipos. Para representar una interrelacin de generalizacin se emplea un tringulo invertido, con la base paralela al rectngulo que representa el supertipo y conectado a los subtipos.

Generalizacin (herencia)

Una generalizacin se identifica si encontramos una serie de atributos comunes a un conjunto de entidades, y unos atributos especficos que identificarn unas caractersticas. Los atributos comunes describirn el supertipo y los particulares los subtipos. Una de las caractersticas ms importantes de las jerarquas es la herencia, por la que los atributos de un supertipo son heredados por sus subtipos. Si el supertipo participa en una relacin los subtipos tambin participarn.

E/G: Herencia de tipo


Un subtipo puede tener atributos propios (especficos) y participar en relaciones por separado Un subtipo hereda todos los atributos del supertipo, y toda relacin en la que participa el supertipo Un subtipo, con sus atributos y relaciones especficos, ms los atributos y relaciones que hereda del supertipo, es un tipo de entidad por derecho propio
numBastidor precio
VEHCULO FABRICA FABRICANTE

(1,n)

(1,1)

N:1 (1,1) ID
LLEVA

[MPM1999]
CAMIN TURISMO MOTOCICLETA

(0,1)
SIDECAR

numEjes tonelaje numPuer

numPlazas

cilindrada 1:1

Ejemplo
Los empleados se clasifican docentes y no docentes en funcin de la clase de trabajo que realizan, todos ellos tienen un DNI, una direccin y un nombre, pero los docentes adems tienen una tutora asociada mientras que a los no docentes se les asigna un rea de actividad. El discriminante es el atributo Clase_trabajo. El discriminante es una caracterstica distintiva de las entidades del supertipo.

Generalizacin
Se pueden distinguir cuatro clases de generalizacin atendiendo a si los subtipos se solapan o son disjuntos y a si la unin de los subtipos recubre o no al supertipo. Jerarqua Total: Toda ocurrencia del supertipo debe obligatoriamente pertenecer a algn subtipo. Jerarqua Parcial: Una ocurrencia del supertipo no tiene por que pertenecer a algn subtipo. Jerarqua Solapada: Una ocurrencia del supertipo puede pertenecer a varios subtipos. Jerarqua Exclusiva: Una ocurrencia del supertipo no puede pertenecer a varios subtipos. Si una generalizacin es total se representa mediante una circunferencia en el arco que une el supertipo con el tringulo. Si una generalizacin es disjunta o exclusiva se representa con un arco de circunferencia que corta los arcos que unen el tringulo con los subtipos. Por tanto los posibles cuatro tipos de generalizaciones sern: solapada-total, solapada-parcial, disjunta-total y disjunta-parcial.

Ejemplos de los 4 tipos


Total-exclusiva Tanto un docente como un no docente son empleados. Un mismo empleado no puede ser a la vez docente y no docente (disjuntos). Todo empleado tiene que ser obligatoriamente un docente o un no docente (total).

Ejemplos de los 4 tipos


Parcial-exclusiva Tanto un artculo como un libro son documentos. Un mismo documento no puede ser a la vez un artculo y un libro (disjuntos). Un documento puede no ser ni un artculo ni un libro (parcialidad) por tanto no tendr los atributos especficos de los artculos y los libros (por ejemplo un documento puede ser una carta).

Ejemplos de los 4 tipos


Total-solapada Tanto un empleado como un estudiante son personas. Una misma persona puede ser estudiante y empleado a la vez (solapada). Toda persona registrada en la BD tiene que ser obligatoriamente un estudiante y/o un empleado (total).

Ejemplos de los 4 tipos


Parcial-solapada Tanto un docente como un investigador son empleados. Un mismo empleado puede ser, y en general lo es, docente a la vez que investigador (solapada). Un empleado puede no ser ni un docente ni un investigador (parcial).

Ejercicio (no se entrega)


1.

Representa las siguientes jerarquas e indica el tipo de generalizacin:


a)

Un concesionario de coches vende coches nuevos y usados. Los atributos especficos de los nuevos son las unidades y el descuento; de los usados son los kilmetros y el ao de fabricacin. Consideramos el conjunto de personas de una ciudad, distinguimos a los trabajadores, estudiantes y parados. De los trabajadores nos interesa el nmero de la Seguridad Social, la empresa de trabajo y el salario. De los estudiantes, el nmero de matrcula y el centro educativo, y de los parados la fecha del paro. En un campo de ftbol los puestos de los futbolistas pueden ser: portero, defensa, medio y delantero.

b)

c)

Agregacin
Una limitacin del Modelo E/R es que no es posible expresar interrelaciones entre interrelaciones. Ejemplo: Los profesores explican asignaturas. Para explicar cada asignatura cada profesor utiliza unos medio especficos. Por tanto los medios estn asociados conjuntamente al profesor y la asignatura concreta de que se trate. El diagrama indica como se representara, lo cual no est permitido.

La solucin a este problema es usar agregacin, abstraccin a travs de la cual las interrelaciones se tratan como entidades de nivel superior.

Agregacin
Ejemplo: Agregamos el tipo de interrelacin explica y los tipos de entidades PROFESOR y ASIGNATURA como un tipo de entidad de ms alto nivel. El grupo resultante se emplea como un tipo de entidad de nivel superior.

Otro ejemplo de agregacin

Otro ejemplo de agregacin

Construir un modelo E-R


Podemos dividir el proceso de construir un modelo E-R en varias tareas ms simples. El proceso completo es iterativo, es decir, una vez terminado debemos volver al comienzo, repasar el modelo obtenido y, probablemente, modificarlo. Una vez satisfechos con el resultado (tanto nosotros, los programadores, como el cliente), ser el momento de pasar a la siguiente fase: el modelo lgico. Uno de los primeros problemas con que nos encontraremos ser decidir qu son entidades y qu atributos. La regla principal es que una entidad slo debe contener informacin sobre un nico objeto real. Pero en ciertos casos esto nos puede obligar a crear entidades con un nico atributo. Por ejemplo, si creamos una entidad para representar una persona, uno de los atributos puede ser el lugar de nacimiento. El lugar de nacimiento: poblacin, provincia o pas, puede ser considerado como una entidad. Bueno, yo creo que un pas tiene muchas y buenas razones para ser considerado una entidad. Sin embargo en nuestro caso concreto, tal vez, esta informacin sea slo eso: un lugar de nacimiento. Debemos pues almacenar esa informacin como un atributo de persona o debemos, por el contrario, crear una entidad independiente?.

Construir un modelo E-R

Una regla que puede ayudarnos en esta decisin es que si una entidad slo tiene un atributo, que sirve para identificarlo, entonces esa entidad puede ser considerara como un atributo.

Proceso para la creacin del diagrama


Para crear un diagrama conceptual hay que meditar mucho. No hay un procedimiento claro y universal, aunque s se pueden dar algunas directrices generales:
Hablar con el cliente e intentar dejar claros los parmetros y objetivos del problema o proceso a modelar. Por supuesto, tomar buena nota de todo. Estudiar el planteamiento del problema para:
Identificar los conjuntos de entidades tiles para modelar el problema, Identificar los conjuntos de interrelaciones y determinar su grado y tipo (1:1, 1:n o m:n).

Trazar un primer diagrama E-R. Identificar atributos y dominios para los conjuntos de entidades e interrelaciones. Seleccionar las claves principales para los conjuntos de entidades. Verificar que el modelo resultante cumple el planteamiento del problema. Si no es as, se vuelve a repasar el proceso desde principio. Seguir con los siguientes pasos: traducir el diagrama a un modelo lgico, etc.

Enunciado caso de ejemplo


Nos enfrentamos al siguiente problema que debemos modelar. Se trata de una base de datos que debe almacenar la informacin sobre varias estaciones meteorolgicas, en una zona determinada. De cada una de ellas recibiremos y almacenaremos una muestra de datos cada da: temperatura mxima y mnima, precipitaciones en litros/m2, velocidad del viento mxima y mnima, y humedad mxima y mnima. El sistema debe ser capaz de seleccionar, aadir o eliminar estaciones. Para cada una almacenaremos su situacin geogrfica (latitud y longitud), identificador y altitud.

Solucin Ejemplo
Identificar conjuntos de entidades A primera vista, tenemos dos conjuntos de entidades: estaciones y muestras. Podramos haber usado slo un conjunto, el de las muestras, pero nos dicen que debemos ser capaces de seleccionar, aadir y borrar estaciones, de modo que parece que tendremos que usar un conjunto de entidades para ellas. Identificar conjuntos de interrelaciones Las relaciones son ms simples, ya que slo hay una: cada estacin estar interrelacionada con varias muestras. Es una relacin 1:N. Trazar primer diagrama Podemos trazar ya, por lo tanto, nuestro primer diagrama:

Solucin Ejemplo
Identificar atributos Para las muestras tendremos que elegir los que nos da el enunciado: temperatura mxima y mnima, precipitaciones, velocidades del viento mxima y mnima y humedad mxima y mnima. Adems hay que aadir la fecha de la muestra. Para las estaciones tambin nos dicen qu atributos necesitamos: identificador, latitud, longitud y altitud. Seleccionar claves principales Las estaciones disponen de varias claves candidatas. Tenemos, por una parte, el identificador, que es nico para cada estacin, y por otra su situacin geogrfica, ya que no puede haber dos estaciones en el mismo sitio. Parece lgico usar la primera como clave principal, ya que es un nico atributo. Pero en el caso de las muestras no existen claves candidatas claras. De hecho, el conjunto total de atributos puede no ser nico: dos estaciones prximas geogrficamente, podran dar los mismos datos para las mismas fechas. Tenemos una opcin para solucionar el problema: crear una clave principal artificial, un nmero entero que se incremente de forma automtica para cada muestra.

Solucin Ejemplo
Sin embargo esta no es la solucin ptima. Otra alternativa es considerar las muestras como entidades dbiles subordinadas a las entidades estacin. En ese caso, la clave primaria de la estacin se almacena como una clave fornea en cada muestra. Como entidad dbil, las muestras no necesitan una clave primaria, de hecho, esa clave se forma con la unin de la clave primaria de la estacin y la fecha de la muestra. Optamos por esta segunda opcin.

Bibliografia
[EN 2002] Elmasri, R.; Navathe, S.B. Fundamentos de Sistemas de Bases de Datos. 3 ed. AddisonWesley, (Cap. 3 y 4) [MPM 1999] De Miguel, A.; Piattini, M.; Marcos, E. Diseo de bases de datos relacionales. Ra-Ma. (Cap. 2) Sistemas gestores de Bases de Datos. Una vision prctica. Ed. Diego Marn.

Ejercicios (se entregan)


1.

Representa las siguientes Generalizaciones/Especializaciones (Jerarquas) e indica el tipo que son: a) En funcin de la edad, se subdivide la entidad persona en nio, adolescente, adulto y anciano. b) Una enfermedad se cataloga como vrica o bacteriana. c) Un mamfero, en funcin de cmo vive, se puede catalogar como acutico, volador o terrestre. d) En funcin de la ocupacin que tenga una persona, se la puede catalogar como estudiante o trabajador.

2.

Se desea realizar el diagrama de estructuras de datos en el modelo E-R correspondiente al siguiente enunciado: Una compaa de distribucin de productos para el hogar dispone de proveedores que le suministran artculos. Un artculo slo puede proveerlo un proveedor. La empresa tiene tres tipos de empleados: oficinistas, transportistas y vendedores. Estos ltimos venden los artculos. Un artculo es vendido por varios vendedores, y un vendedor puede vender varios artculos en distintas zonas de venta. De las ventas nos interesa saber la fecha de venta y las unidades vendidas.

Ejercicios
3.

Se ha diseado el esquema conceptual de una base de datos universitaria segn el diagrama E/R de la figura. Responder SI o NO a las siguientes afirmaciones y justificarlas:
No existen departamentos sin profesores. Todas las clases de una asignatura son en el mismo local. De una asignatura pueden dar clase profesores de varios departamentos diferentes.

Ejercicios
4.

Se desea realizar el diagrama de estructuras de datos en el modelo E-R correspondiente al siguiente enunciado: Hay profesores que imparten clases en 2 tipos de centros educativos: pblicos y privados. Un profesor puede impartir clase en varios centros, ya sean pblicos o privados. La asignatura ser un atributo de la relacin entre el profesor y el centro donde imparte. Los centros educativos slo pueden ser pblicos o privados. Un centro pblico no puede ser privado a la vez, ni a la inversa. Los atributos especficos para los centros pblicos son: el presupuesto y los servicios; y para los privados son: la organizacin y la cuota.

Ejercicios
5.

Se desea realizar el diagrama de estructuras de datos en el modelo E-R correspondiente al siguiente enunciado: Tenemos una empresa de autocares que permite la reserva de asientos mediante Internet. Para gestionar la reserva de los asientos necesitamos una base de datos en la que almacenaremos los siguientes datos: Matrcula de cada autocar; nombre, DNI, apellidos, direccin y telfono de cada conductor; fecha y hora de salida de cada autobs; hora de paso por cada localidad; nombre de cada localidad; Nmero de asientos de cada autocar; nmero de cada asiento (el nmero completo consta del nmero de asiento y la matrcula del autocar); nombre, direccin, telfono y DNI de cada cliente. En cada viaje slo hay un conductor en el autocar. Un mismo asiento puede estar reservado en el mismo viaje por varias personas (Una persona puede comprar el asiento de Palencia a Aguilar de Campo y otra persona comprar de Aguilar a Santander).

Ejercicios
6.

Se desea realizar el diagrama de estructuras de datos en el modelo E-R correspondiente al siguiente enunciado:
El Ministerio de Defensa desea disear una Base de Datos para llevar un cierto control de los soldados que realizan el servicio militar. Los datos significativos a tener en cuenta son:
Un soldado se define por su cdigo de soldado (nico), su nombre y apellidos, y su graduacin. Existen varios cuarteles, cada uno se define por su cdigo de cuartel, nombre y ubicacin. Hay que tener en cuenta que existen diferentes Cuerpos del Ejrcito (Infantera, Artillera, Armada, ....), y cada uno se define por un cdigo de Cuerpo y denominacin. Los soldados estn agrupados en compaas, siendo significativa para cada una de stas, el nmero de compaa y la actividad principal que realiza. Se desea controlar los servicios que realizan los soldados (guardias, imaginarias, cuarteleros, ...), y se definen por el cdigo de servicio y descripcin.

Consideraciones de diseo:
Un soldado pertenece a un nico cuerpo y a una nica compaa, durante todo el servicio militar. A una compaa pueden pertenecer soldados de diferentes cuerpos, no habiendo relacin directa entre compaas y cuerpos. Los soldados de una misma compaa pueden estar destinados en diferentes cuarteles, es decir, una compaa puede estar ubicada en varios cuarteles, y en un cuartel puede haber varias compaas. Eso si, un soldado slo esta en un cuartel. Un soldado realiza varios servicios a lo largo de la mili. Un mismo servicio puede ser realizado por ms de un soldado (con independencia de la compaa), siendo significativa la fecha de realizacin.

Ejercicios
7.

Se desea realizar el diagrama de estructuras de datos en el modelo E-R correspondiente al siguiente enunciado:
Un club nutico desea tener informatizados los datos correspondientes a sus instalaciones, empleados, socios y embarcaciones que se encuentran en dicho club. El club esta organizado de la siguiente forma:
Los socios pertenecientes al club vienen definidos por su nombre, direccin, DNI, telfono y fecha de ingreso en el club. Las embarcaciones vienen definidas por: matricula, nombre, tipo y dimensiones. Los amarres tienen como datos de inters el nmero de amarre, la lectura del contador de agua y luz, y si tienen o no servicios de mantenimiento contratados. Por otro lado, hay que tener en cuenta que una embarcacin pertenece a un socio aunque un socio puede tener varias embarcaciones. Una embarcacin ocupar un amarre y un amarre est ocupado por una sola embarcacin. Es importante la fecha en la que una embarcacin en asignada a un amarre. Los socios pueden ser propietarios de amarres, siendo importante la fecha de compra del amarre. Hay que tener en cuenta que un amarre pertenece a un solo socio y que NO HAY ninguna relacin directa entre la fecha en la que se compra un amarre y en la que una embarcacin se asigna a un amarre. El club nutico est dividido en varias zonas definidas por una letra, el tipo de barcos que tiene, el numero de barcos que contiene, la profundidad y el ancho de los amarres. Una zona tendr varios amarres y un amarre pertenece a una sola zona. En cuanto a los empleados, estos vienen definidos por su cdigo, nombre, direccin, telfono y especialidad. Un empleado est asignado a varias zonas y en una zona puede haber ms de un empleado, siendo de inters el nmero de barcos de los que se encarga en cada zona. Hay que tener en cuenta que un empleado puede no encargarse de todos los barcos de una zona.

Ejercicios
8.

Se desea realizar el diagrama de estructuras de datos en el modelo E-R correspondiente al siguiente enunciado:
Se trata de gestionar una biblioteca, y nuestro cliente quiere tener ciertas herramientas a su disposicin para controlar libros, socios y prstamos. Adicionalmente se necesita un control de los ejemplares de cada libro, su ubicacin y su estado, con vistas a su retirada o restitucin, para esto ltimo necesita informacin sobre editoriales a las que se deben pedir los libros. Tanto los libros como los socios estarn sujetos a ciertas categoras, de modo que segn ellas cada libro podr ser o no prestado a cada socio. Por ejemplo, si las categoras de los libros van de A a F, y la de los socios de B a F, un libro de categora A nunca puede ser prestado a ningn socio. Estos libros slo se pueden consultar en la biblioteca, pero no pueden salir de ella. Un libro de categora B slo a socios de categora B, un libro de categora C se podr prestar a socios de categoras B y C, etc. Los libros de categora F siempre pueden prestarse. El sistema debe proporcionar tambin un mtodo de bsqueda para libros por parte de los socios, por tema, autor o ttulo. El socio slo recibir informacin sobre los libros de los que existen ejemplares, y sobre la categora. Adems, se debe conservar un archivo histrico de prstamos, con las fechas de prstamo y devolucin, as como una nota que el responsable de la biblioteca quiera hacer constar, por ejemplo, sobre el estado del ejemplar despus de su devolucin. Este archivo es una herramienta para la biblioteca que se puede usar para discriminar a socios "poco cuidadosos".

Ejercicios
Los prstamos, generalmente, terminan con la devolucin del libro, pero algunas veces el ejemplar se pierde o el plazo supera un periodo de tiempo establecido y se da por perdido. Estas circunstancias pueden cerrar un prstamo y provocan la baja del ejemplar (y en ocasiones la del socio :-). Nuestro archivo histrico debe contener informacin sobre si el libro fue devuelto o perdido.
9.

Se desea realizar el diagrama de estructuras de datos en el modelo E-R correspondiente al siguiente enunciado:
El departamento de formacin de una empresa desea construir una base de datos para planificar y gestionar la formacin de sus empleados. La empresa organiza cursos internos de formacin de los que se desea conocer el cdigo del curso, el nombre, una descripcin, el nmero de horas de duracin y el coste del curso. Un curso puede tener como prerrequisito haber realizado otro(s) previamente, y, a su vez, la realizacin de un curso puede ser prerrequisito de otros. Un curso que es un prerrequisito de otro puede serlo de forma obligatoria o solo recomendable. Un mismo curso tiene diferentes ediciones, es decir, se imparte en diferentes lugares, fechas y con diferentes horarios (intensivo, de maana o de tarde). En una misma fecha de inicio solo puede impartirse una edicin de un curso.

Ejercicios
Los cursos se imparten por personal de la propia empresa. De los empleados se desea almacenar su cdigo de empleado, nombre y apellidos, direccin, telfono, NIF, fecha de nacimiento, nacionalidad, sexo, firma y salario, asi como si est capacitado o no para impartir cursos. Un mismo empleado puede ser docente en una edicin de un curso y alumno en otra edicin, pero nunca puede ser ambas cosas a la vez (en una misma edicin de curso o lo imparte o lo recibe).
10.

Se desea realizar el diagrama de estructuras de datos en el modelo E-R correspondiente al siguiente enunciado:
La coordinadora nacional de ONGs desea mantener una BD de las asociaciones de este tipo que existen en nuestro pas. Para ello necesita almacenar informacin sobre cada asociacin, los socios que la componen, los proyectos que realizan y los trabajadores de las mismas. De las asociaciones se desea almacenar su CIF, denominacin, direccin y provincia, su tipo (ecologista, integracin, desarrollo, ), as como si est declarada de utilidad pblica por el Ministerio del Interior.

Ejercicios
Cada asociacin est formada por socios de los que se precisa conocer su DNI, nombre, direccin, provincia, fecha de alta en la asociacin, la cuota mensual con que colaboran y la aportacin anual que realizan (que se obtendr multiplicando la cuota mensual por los meses del ao). Los trabajadores de estas asociaciones pueden ser de dos tipos: asalariados o voluntarios. Los asalariados son trabajadores que cobran un sueldo y ocupan cierto cargo en la asociacin. Se desea almacenar la cantidad que estos pagan a la Seguridad Social y el tanto por ciento de IRPF que se les descuenta. Los voluntarios trabajan en la organizacin desinteresadamente, siendo preciso conocer su edad, profesin y las horas que dedican a la asociacin a efectos de clculos de estadsticas. Cada trabajador se identifica por su DNI, tiene un nombre y una fecha de ingreso. Un socio no puede ser trabajador de la asociacin.

Ejercicios
Las asociaciones llevan a cabo proyectos a los que estn asignados sus trabajadores. Un trabajador puede trabajar en diferentes proyectos de un mismo pas. De cada proyecto se desea almacenar su nmero de identificacin dentro de la asociacin, en que pas se lleva a cabo y en que zona de este, as como el objetivo que persigue y el nmero de beneficiarios a los que afecta. Un proyecto se compone a su vez de subproyectos (que tienen entidad de proyectos).

Vous aimerez peut-être aussi