El proyecto se desarrollara en grupos de 3 personas elegidos de por afinidad donde todos
los integrantes obtendrán la misma nota a menos que se presente alguna queja de que alguno de los integrantes no participo en el desarrollo del mismo.
El presente proyecto deberá presentar un documento que contenga:
- Diseño ER de la base de datos 1 pts - Además del ER por cada tabla incluir: o Dependencias Funcionales de las tablas (tablas diseñadas en 3FN) 2 pts o Llave Primaria: nombres de los campos de la llave primaria 0.5 pts o Llaves Foráneas indicando: nombre del campo de la tabla origen, nombre del campo de la tabla destino, nombre de la tabla destino 0.5 pts - Se deberá asegurar que se respete la propiedad de concatenación no aditiva (sin perdida) (esta condición será verificada por el docente por medio del aplicativo y/o querys directos a la BD) 1.5 pts - Se deberá asegurar de reducir al mínimo posible la existencia de campos nulos en la base de datos aplicando las técnicas aprendidas en clase, en caso de que estos sean necesarios se deberá explicar el motivo. 1.5 pts
Adicionalmente se deberá crear lo siguiente:
- Crear la base de datos en Oracle XE (10g o superiores) 1 pts - Creación de un aplicativo para el llenado, actualización y borrado de las tablas 3 pts - Creación de Procedimientos almacenados para: 1 pts o Se deberá crear procedimientos almacenados para todos los insert, update y delete de todas las tablas de la base de datos - Creación de Triggers en la base de datos para: 1 pts o Se deberá crear un trigger en la base de datos que inserte un registro a una tabla de auditoria cada vez que se cree o elimine de un registro o tupla de cualquiera de las tablas siguientes: Pacientes 0.25 Médicos 0.25 Dueños 0.25 Citas 0.25 Esta tabla deberá contener: nombre de la tabla donde se creó o eliminó el registro, fecha y hora en que se creó o eliminó el registro, usuario que creó o eliminó el registro, tipo de transacción que hizo (creación o eliminación) - Creación de Jobs en la base de datos para: 1 pts o Se deberá crear un job que se ejecute cada día a las 00:01, este se encargara de actualizar la tabla del sistema que contendrá la hora y fecha actual del sistema, de esta tabla se deberán obtener todas las fechas del sistema (fechas que hagan referencia a la fecha actual) La base de datos y el aplicativo serán desarrollados para una veterinaria el sistema deberá cubrir las siguientes necesidades: 6pts (0.5 cada ítem creado en la base de datos del sistema y funcional en el aplicativo) - Tener información relativa a los pacientes: nombre del paciente, especie, raza, dueño del paciente, médico de cabecera (médico que más ha tratado el paciente), foto del paciente, fecha en que se atendió por primera vez al paciente o Restricciones: un paciente solo puede tener un médico de cabecera, el campo nombre del paciente almacenara el nombre completo del mismo, cada paciente puede tener únicamente un dueño, cada paciente tendrá únicamente una foto y pertenece únicamente a una especie y una raza. - Tener información relativa a los dueños de los pacientes: nombre completo del dueño, teléfono de la residencia del dueño, un máximo de 2 números de celular donde poder contactar al dueño, número de identificación del dueño, dirección de residencia. - Información de los Médicos que atienden en la clínica: Nombre completo del médico, teléfono de la casa, un máximo de 2 números de celular donde poder contactar al médico, dirección de residencia, atiende en caso de emergencias sí o no, fecha de ingreso a la institución - Información de citas: fecha de la cita, hora de la cita, paciente que asistirá a la cita, una descripción de lo que se hará en la cita, que cirugía se hará en la cita (este solo en caso que la cita sea para una cirugía), que medico atenderá al paciente en esta cita, fecha en que se programó la cita (que día hice la cita) - Información de cirugías: duración estimada de la cirugía, descripción de la cirugía (descripción corta del procedimiento a realizar), tipo de riesgo de la cirugía (alto, medio, bajo), nombre de la cirugía, es necesaria anestesia general sí o no - Información de las especies: nombre de la especie, familia a la que pertenece la especie (Roedores, Felinos, Aves, Peces, Canes, etc.) - Información de la raza: nombre de la raza, especie a la que pertenece, longevidad estimada (cuantos años vive en promedio la raza) - Información de enfermedades más comunes a una raza: raza que padece la enfermedad, enfermedades que más padece la raza, que medicinas se usan para tratar estas enfermedades - Información de Medicinas: nombre de la medicina, dosis de la medicina (por ejemplo cuantas cucharaditas, gotas, o tabletas se debe tomar), cada cuanto se debe tomar la medicina - Información de los turnos: hora de inicio del turno, hora de fin del turno, nombre del turno (matutino, vespertino, nocturno) - Información de los turnos por medico: medico al que aplica el turno, turno del 01 del mes, turno del 02 del mes, turno del 03 del mes, …(resto de días del mes)… turno del 31 del mes, mes del año que aplica el turno - Información de usuarios: usuario, nombre completo del usuario, un teléfono de contacto del usuario, dirección de residencia