Contenido
PalancaEjercicios corregidos Asociación de Entidades Modelo
Los siguientes ejercicios corregidos se refieren al modelo de Entidad de Asociación, su construcción, modelado y comprensión basados en casos de uso.
Ejercicio 1
A continuación se muestra el diagrama E/A que representa las visitas a un centro médico. Responda las siguientes preguntas (estrictamente según lo indicado en el diagrama).
1. ¿Puede un paciente tener múltiples consultas?
2. ¿Puede un médico atender a varios pacientes en una misma consulta?
3. ¿Se pueden recetar varios medicamentos en una misma consulta?
4. ¿Pueden dos médicos distintos recetar el mismo medicamento?
- Sí => (1,n) para ayudar
- No => consulta a asistencia (1,1)
- Sí => consulta a prescrito (0,n), Y a n medicamentos se prescriben en una consulta
Sí => Nada lo prohíbe en el diagrama. Un médico da consultas, se prescriben medicamentos pero no hay vínculo entre el medicamento y el médico que los prescribe. No hay información sobre este punto sin restricciones escritas además del diagrama.
Ejercicio 2
A continuación se muestra el diagrama E/A que representa un torneo de tenis. Responda las siguientes preguntas (basándose estrictamente en lo que se muestra en el diagrama)
- ¿Podemos jugar partidos de dobles?
- ¿Puede un jugador ganar un partido sin haberlo jugado?
- ¿Pueden haber dos partidos en el mismo campo al mismo tiempo?
- ¿Cómo evitar 2 partidos a la vez en el mismo campo?
- No, solo partidos individuales => partido para participar (2,2) solo 2 jugadores
- Sí, nada lo prohíbe en el esquema, ningún vínculo entre participar y ganar.
Es necesario agregar una restricción de integridad que no se puede expresar en el modelo.
- Sí, según el esquema => el horario es una propiedad de Match únicamente
- El calendario pasa a ser propiedad de (partido, campo), por lo tanto, propiedad de la asociación.
Ejercicio 3
Un grupo de compañías aéreas que operan en territorio europeo desea organizar un sistema de información común. Cada compañía organiza vuelos entre las ciudades a las que sirve.
Una empresa se define por su nombre y un vuelo se identifica por un número de vuelo (AF234 por ejemplo)
- Escribe el diagrama E/A correspondiente.
- Completa el diagrama teniendo en cuenta la siguiente información:
Los vuelos se fletan en aviones de su propiedad o arrendados a otras empresas del grupo.
Una aeronave se identifica por un número de aeronave y es de un tipo definido (Airbus A340) por ejemplo 3. Integre en su diagrama la siguiente necesidad (de seguimiento de su personal) expresada por las aerolíneas
¿Quién voló en qué vuelo y cuál era su función (capitán, piloto de vuelo, mecánico, tripulación de cabina)?
Para los pilotos, es necesario integrar la noción de rango y calificación de los pilotos para tal o cual tipo de aeronave.
Ejercicio 4
Construya el diagrama relacional de los casos anteriores:
- Centro Médico
- Torneo de tenis
- Compañía aérea
Centro Médico
Medicamento ( codificado , redacción )
Doctor ( Número de registro , Apellido )
Paciente ( SS No. , Apellido )
Consulta ( No. , Fecha ,#N°SS , #Matrícula )
Prescrito (#No., #Código , NbSockets )
Torneo de tenis
Jugador (N°J , Apellido )
Partido (N°M, Horario, #N°T, #N°J1, #N°J2, #N°G)
Suelo ( No , Superficie )
Compañía aérea
compañía ( nombreC , nacionalidad, dirección)
vuelos ( numVuelo , día , hora , cname , #departureVname , #arrivalVname , #devicenum )
aviones ( numDispositivo , añoFab, modelo #)
ciudades ( nombreV , país )
tipo de aeronave ( modelo , númeroPasajero)
personal ( númeroSS , nombre, función)
alquiler (#númeroC , #numDevice , fecha de inicio , fecha de finalización )
tiene (#númeroC , #num_dispositivo , fecha de compra)
usos (#númC, #númSS , Fecha de contratación )
tiene_para_función (#númVol, #numSS , funciónOnFlight )
está_calificado (#númeroSS, modelo # , calificación )
Ejercicio 5
Queremos crear un sistema de información hospitalaria. El objetivo es poder responder a las siguientes preguntas:
- ¿Qué médico trabaja en qué departamento?
- ¿Qué médico sigue a qué paciente? y recíprocamente ?
- ¿A qué departamento ingresó el paciente?
- Permitir el seguimiento de las recetas dadas a un paciente (qué y por quién, etc.)
En este hospital existen varios departamentos, cada uno identificado por su nombre;
Cada médico está adscrito a un departamento;
Un paciente ingresa en un departamento y nunca lo cambia;
Un paciente puede ser seguido por varios médicos (potencialmente de diferentes departamentos).
La información que queremos tener en el SI es:
- servicio : especialidad, número_camas, ubicación (edificio-piso)
- metrodoctor : nombre, núm_teléfono, núm_inscripción_orden, especialidad
- paciente : nombre, num_SS, patología, fecha_entrada, fecha_salida
- prescripción : paciente, médico, medicación, dosis, fecha
Añadirás toda la información que te parezca necesaria para construir el diagrama E/A y escribirás el diagrama E/A del hospital IS y luego el diagrama relacional.
Hospital ( nombreH:varchar , teléfonoH:varchar)
Servicios (nombres:varchar , especialidad: varchar, nbre_beds: int, #nomH: varchar, #num_floor: int)
doctores (núm_pedido: int, núm_teléfono: varchar, especialidad_médica: varchar, #nomH: varchar, #nomS: varchar)
Pacientes ( número_SS , P_nombre )
hospitalizado ( #núm_SS, #nomS , fecha_entrada, fecha_salida)
Aseado ( #núm_orden, # núm_SS , patología)
Piso ( número_piso, #nombre_edificio )
Edificio ( Nombre del edificio , numero de pisos)
Consulta (numero_Consulta, fecha_Consulta, #num_pedido, #num_ss)
Prescrito (numero_Consulta, número_droga, dosis_Prescrita)
Medicamento (número_droga, libelle_Medicamento)
Ejercicio 6
El responsable del máster GG quiere desarrollar una aplicación web para gestionar la información de los alumnos matriculados en la opción y antiguos alumnos de la opción.
La información que se conservará son los datos de contacto (apellido, nombre, dirección, correo electrónico, contraseña, baja o suspensión), progreso en el curso (curso realizado y calificaciones, así como cursos a realizar), información sobre la tesis (título , director(es), lectores, fecha de obtención, nota). Para los antiguos alumnos también nos gustaría conservar los datos de contacto y los trabajos actuales y anteriores.
Las modificaciones de datos se rigen por las siguientes reglas:
– El responsable de la opción puede modificar todos los datos;
– Los estudiantes pueden actualizar sus datos de contacto, el curso a seguir y las calificaciones obtenidas en los cursos tomados (el sistema no está conectado al sistema de la Escuela y las calificaciones están ahí solo para información del responsable de la opción de curso) como así como información sobre sus puestos de trabajo.
El sistema debe recordar la fecha de la última modificación del curso realizada por un alumno para que el gestor pueda consultar las modificaciones.
Sólo el administrador de opciones y el estudiante interesado pueden ver la información relativa al curso.
Nos gustaría poder, para las personas autorizadas, enviar un correo electrónico a estudiantes actuales y/o antiguos estudiantes.
También deseamos publicar, para el público en general, el directorio de exalumnos de la opción DataScience así como la lista de estudiantes actualmente en el curso.
Agregarás toda la información que te parezca necesaria para construir el diagrama E/A y luego el diagrama relacional.
Ojo con no querer escribir todo en el modelo E/A, los derechos de lectura, escritura y modificación se configurarán según los perfiles de usuario.
El envío de correos electrónicos no forma parte de las estructuras de datos sino de las acciones a realizar. Sólo tienes que asegurarte de que los datos estarán ahí para que esto suceda.