1.- Aquí jugamos todos... La República de Horta nos ha pedido que organicemos en una Base de Datos la información de todas sus federaciones (deportes). De cada federación tendremos el nombre de la misma, la fecha de la creación y el nombre del responsable. Como es de suponer, cada Federación estará formada por equipos que jugarán en una o varias competiciones (véase el ejemplo del Salletronix C.D., que tiene equipo de fútbol y baloncesto). De los equipos sabremos su: nombre, ciudad que representan y el nombre de su presidente. Cada competición, de la que sabremos su nombre y la televisión que lo retransmite, se jugará durante diferentes temporadas, donde en cada una de ellas puede cambiar los equipos que participan (motivos económicos, desmotivación de los aficionados, sanciones...). De cada temporada sabremos: la fecha inicio y la final. Un equipo en una competición y temporada determinadas tendrá, al final de año, una posición en la clasificación general. 2.- Lo importante es participar... La Federación encargada de la Liga de Balón Prisionero de Sant Hipòlit de Voltregà quiere almacenar datos de la competición. Por un lado tendremos los equipos y los jugadores. De cada equipo queremos saber: su nombre, su año de fundación, su presupuesto, su dirección, su presidente, su entrenador y los jugadores que lo forman. De cada jugador: su nombre, apellido, número de la SS, su dorsal, su ubicación en el terreno de juego y su ficha (lo que cobra). Como es de suponer, los equipos no jugarán consigo mismos, por lo que habrá partidos. De cada partido queremos saber: la fecha, los equipos que lo jugaron, el árbitro y el resultado. De los árbitros deberemos conocer: su nombre, apellido, número de la SS, el año en que empezó a arbitrar, número de colegiado y su profesión cuando no es árbitro. 3.- Hospital, impaciente hospital con pacientes... El Hospital Nuestra Señora de Airún nos ha pedido el Análisis Entidad-Relación para su posterior conversión a Modelo Relacional y de aquí pasar a una implementación de BBDD. La Base de Datos se renueva cada año, es decir, la información que contiene es anual. Dicho hospital está formado por médicos y pacientes. De ambos, tendremos almacenados: su nombre, sus dos apellidos, su fecha de nacimiento, su DNI y su Número de la Seguridad Social. Concretamente de los médicos tendremos: su número de colegiado y la especialidad o especialidades que practica. Del paciente, sabremos: la fecha de ingreso y salida, la habitación en la que está ahora o ha estado en otro ingreso anterior y si tiene mutua o no. Asimismo, un paciente es atendido por uno o varios médicos. Para cada médico que es atendido, queremos saber la fecha de la primera consulta y de la última. Además, a un paciente se le puede indicar la realización de una prueba médica. Dicha prueba médica será pedida por un único médico y será realizada por un laboratorio. De un laboratorio sabremos su nombre, la dirección y teléfono. De una prueba, el nombre de la misma, su coste y el tiempo medio para realizarla. Las instalaciones del hospital están formadas por varios Pabellones que se dedican a una única especialidad, como por ejemplo: Traumatología, UCI, Patologías Cardiovasculares... pero puede haber varios Pabellones de la misma especialidad (UCI 1 y UCI 2). De cada pabellón sabremos el número de pisos y el número de gente que trabaja en él. Cada Pabellón, a su vez, tiene un conjunto de habitaciones. De cada una de las habitaciones nos gustaría conocer: su número (para cada pabellón empieza en 1, es decir, la numeración de las habitaciones no es general y único para todo el hospital) Hay una habitación 1 en Traumatología, otra habitación 1 en UCI...), el paciente que reside en ella, la fecha de ingreso y de salida del mismo y si la habitación tiene televisión o no. 4.- SUPERhéroes con SUPERformance Entidad-Relación El profesor Charles Xavier nos ha pedido que hagamos una Base de Datos con tal de organizar y tener el control de todos los Superhéroes que forman parte de La Patrulla X o que acuden a él y le ayudan a luchar contra el Mal. Asimismo, quiere información sobre los SuperVillanos. Concretamente nos ha pedido que guardemos la siguiente información: • De cada SuperHéroe o SuperVillano se quiere guardar: un id (único), su nombre real, su nombre de Héroe o Villano, su altura y su peso. Además, quisiéramos saber ya sean SuperHéroes o SuperVillanos, qué poder o poderes tienen. Los poderes están establecidos con identificador y son los siguientes: Fuerza, miles de armas, gran inteligencia, volar, poder sobre la naturaleza y agilidad sorprendente (un SuperHéroe o SuperVillano puede tener más de un poder). • De un SuperHéroe se quiere saber en concreto: el nombre de la ciudad que tiene asignada para proteger (sólo una) y el año en que empezó a salvar vidas. Asimismo, queremos saber si un SuperHéroe normalmente forma parte de un equipo o trabaja solo. Si pasa lo primero queremos saber con qué otro SuperHéroe forma equipo (Ej: Batman y Robin van juntos, y lo mismo ocurre con los miembros de los 4 fantásticos o la Patrulla X... pero sin embargo, Superman trabaja solo). • De un SuperVillano queremos saber en concreto: el grado de maldad (es un valor entre el 1 y el 10) y el número de secuaces que tiene (los secuaces no son SuperVillanos, sino mercenarios o ladrones de poca monta, sólo queremos saber el número que un SuperVillano tiene a su cargo). • A Charles Xavier le gustaría también conocer qué Superhéroe ha atrapado a qué SuperVillano en alguna ocasión y saber la fecha y nombre de la ciudad en que se produjo tal hazaña. Un SuperHéroe puede atrapar a un SuperVillano en una ciudad que no tiene porqué ser la que protege, debido por ejemplo, porque en un momento determinado ayudó a otro SuperHéroe de otra ciudad que le pidió sus servicios (Es una colaboración para combatir el Mal. Ej: Spiderman ayuda a Catwoman porque el SuperVillano Joker es muy poderoso, esto no quiere decir que Spiderman trabaje normalmente con Catwoman puesto que es una colaboración esporádica ni que Spiderman tenga asignada como ciudad a proteger Gotham City, puesto que todos sabemos que protege la ciudad de Nueva York.). 1. Hacer el diagrama Entidad-Relación. 2. ¿Cómo cambiaría el diagrama E-R si en vez de querer guardar sólo el nombre de la ciudad (tanto para el SuperHéroe como en las hazañas), quisiéramos guardar de una ciudad los campos: nombre (único), número de habitantes, extensión territorial y un booleano que nos diga si es una ciudad ficticia o real? Se recomienda hacer los siguientes pasos: 1. Identificar las entidades (fuertes y débiles) y sus respectivos atributos (establecer qué atributos son Clave Primaria (PK)). 2. Identificar las relaciones entre entidades así como los atributos de las mismas. 3. Una vez tenemos las entidades y las relaciones identificadas, establecer la conectividad (también llamada cardinalidad) de las instancias de las entidades dentro de las respectivas relaciones (si es 1:1, 1:N (N:1), N:M y/o si hay opcionabilidad).