0% encontró este documento útil (0 votos)
289 vistas5 páginas

Examen Final SQL Server: Matrícula Universitaria

El documento presenta un caso de estudio para el diseño de una base de datos para el sistema de matrícula de una universidad. Describe la estructura académica de la universidad, los datos de estudiantes, docentes y el proceso de matrícula. Además, incluye requerimientos de información y lógica de negocio para el registro de matrículas y notas. El objetivo es que el estudiante realice el diseño conceptual, lógico y físico de la base de datos, e implemente scripts SQL para crearla, administrarla y satisf
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
289 vistas5 páginas

Examen Final SQL Server: Matrícula Universitaria

El documento presenta un caso de estudio para el diseño de una base de datos para el sistema de matrícula de una universidad. Describe la estructura académica de la universidad, los datos de estudiantes, docentes y el proceso de matrícula. Además, incluye requerimientos de información y lógica de negocio para el registro de matrículas y notas. El objetivo es que el estudiante realice el diseño conceptual, lógico y físico de la base de datos, e implemente scripts SQL para crearla, administrarla y satisf
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA Código SS-M01-EF

Centro de Responsabilidad Social y Extensión Universitaria Versión 1.0


Fecha 26/07/2022
SQL SERVER - MÓDULO BÁSICO Módulo I Página 1 de 5

Examen Final
Indicaciones
1. Modelado de BD. Lea con atención el siguiente caso de estudio y elabore:
• Diseño Conceptual: Use el Modelo E/R Extendido.
• Diseño Lógico: Use el Modelo Relacional.
• Diseño Físico: Considere SQL Server como motor de BD y modele usando la
herramienta ApricotDB.
2. Implementación de BD. Con base en el diseño físico, genere el código SQL que cree la BD.
Use ApricotDB para el proceso de ingeniería directa.
3. DDL. Sobre la Base de Datos creada, escriba sentencias SQL para realizar las siguientes
actualizaciones a la estructura de BD:
a. Cree al menos dos tablas que extiendan el modelo de datos del caso de estudio.
Especifique lo que representarían y cómo mejorarían el modelado actual. Añada los
constraints que crea necesarios.
b. Elimine los constraints y tablas adicionales creadas.
c. Añada 1 columna a al menos 4 de las tablas existentes de la BD.
d. Cambie el tipo de dato de las columnas creadas.
e. Elimine las columnas creadas.
4. DML. Sobre la Base de Datos creada, escriba sentencias SQL para realizar las siguientes
actualizaciones de datos:
a. Inserte al menos 3 registros en cada tabla de la BD.
b. Actualice los campos de 1 registro por cada tabla de la BD.
c. Elimine 1 registro de al menos dos tablas de la BD.
d. Consulte información de las tablas según las necesidades de información solicitadas
en cada caso de estudio. En caso de que su modelo de datos requiera modificarse para
soportar la consulta genere los scripts DDL necesarios.
5. Transacciones. Según las operaciones de lógica de negocio, implemente operaciones DML
(actualización, inserción o eliminación) que se deba tratar como una transacción. Genere el
código Transact SQL para convertirla en transacción. Tome como referencia el caso de la
transacción de transferencia financiera vista en clase.
6. Procedimientos Almacenados.
a. Genere un procedimiento almacenado de mantenimiento para cada tabla maestra.
b. Genere procedimientos almacenados para las transacciones implementadas en el punto
anterior.
7. Vistas. Cree vistas de BD para los reportes solicitados para el caso de estudio.
8. Índices. Construya índices asociadas a las búsquedas más frecuentes del caso de estudio.
9. Backup y Restauración de BD. Genere el backup de la BD trabajada. Luego, restaure su
backup con otro nombre.

Entregables (Incluir todo en un comprimido RAR de nombre SS-M01-


EF_[PrimerApellido]_[PrimerNombre].rar, por ejemplo: SS-M01-EF_Perez_Juan.rar).
- Documento Word que contenga:
o Modelo conceptual, físico y relacional del caso de estudio.
o Capturas de pantalla de la BD implementada y del Backup restaurado.
- Archivos .sql con las sentencias y fragmentos Transact SQL solicitados.
- Backup generado con la BD trabajada.

Universidad Nacional Mayor de San Marcos


www.unmsm.edu.pe
FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA Código SS-M01-EF
Centro de Responsabilidad Social y Extensión Universitaria Versión 1.0
SQL SERVER - MÓDULO BÁSICO Fecha 26/07/2022
Examen Final Módulo I Página 2 de 5

Caso de Estudio: Sistema de Matrícula Universitaria


La Universidad “San Mateo” desea construir un sistema
que soporte sus procesos de matrícula, para ello ha
listado los requerimientos de la información que desea
guardar en la base de datos de dicho sistema.

Sobre la Estructura Académica


• La universidad tiene facultades donde imparte enseñanza.
• Las facultades tienen una serie de escuelas profesionales. Dichas escuelas
profesionales tienen dos niveles: pregrado y posgrado.
• Cada escuela profesional ofrece un conjunto de programas de estudios.
• Los programas de estudios tienen un conjunto de planes de estudio. Interesa saber
cuáles planes de estudio están vigentes y cuáles se tienen como historial.
• Cada Plan de estudios posee una lista de cursos.
• Los cursos tienen un código alfanumérico, nombre, descripción, ciclo, créditos, tipo
(O – Obligatorio, E - Electivo).

Sobre los alumnos y docentes


• Se desea registrar los siguientes datos de los alumnos: nombres, primer apellido,
segundo apellido (no obligatorio), estado (regular, egresado, observado).
• Se desea registrar los siguientes datos de los docentes: nombres, primer apellido,
segundo apellido (no obligatorio), tipo de docente (Principal, Asociado, Auxiliar).

Sobre el Proceso de Matrícula


• Cada semestre se crea un periodo académico.
• En cada periodo se abren cursos, los cuales están asociados a un docente.
• El alumno se matrícula en un curso para un determinado periodo académico.
• Se debe tener en cuenta el número de veces que un alumno ha llevado un curso y
la condición en la que se encuentra en ese curso (cursando por primera vez,
aprobado, desaprobado, repitente)

Necesidades de información:
a. Consultar el 50% de todos los alumnos que posee la Universidad ordenados por el
primer apellido y cuyo correo institucional no contenga la letra a.
b. Dado un Id de Plan de Estudios, consultar los cursos del 3°, 4° y 5° ciclo que
tengan un número de créditos entre 3 y 5.
c. Consultar la máxima nota obtenido por un alumno en los cursos que ha llevado.
d. Consultar el número de secciones de cursos en las cuales ha dictado un docente.
e. Consultar el número de cursos por plan, programa, escuela profesional y facultad.
f. Consultar el promedio de matriculados por cada Plan de Estudios y Curso.
g. Consultar la suma de créditos de los cursos por cada Plan de Estudios.
h. Consultar la suma de matriculados por plan, curso, periodo y sección. Se requieren
tener los subtotales por (Plan) (Plan, Curso) (Plan, Curso, Periodo).

Universidad Nacional Mayor de San Marcos


www.unmsm.edu.pe
FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA Código SS-M01-EF
Centro de Responsabilidad Social y Extensión Universitaria Versión 1.0
SQL SERVER - MÓDULO BÁSICO Fecha 26/07/2022
Examen Final Módulo I Página 3 de 5

Lógica de Negocio:
a. Registro de Matrícula
- Registrar el detalle de matrícula teniendo en cuenta los identificadores del
Periodo, Curso y Alumno.
Indicación Técnica:
INSERT INTO MatriculaDetalle (...) VALUES (@MatriculaID,
@PeriodoID, @CursoID, ...)
- Registrar las repitencias del alumno:
o Si el número de veces que ha desaprobado el curso igual a 0, se crea un
nuevo registro y su número de repitencias es cero y su condición
respecto a ese curso es ‘P’.
o En otro caso, se actualiza el registro creado anteriormente en su
primera matrícula al curso sumándole 1 al número de repitencias y su
condición respecto a ese curso es ‘R’.
Indicación Técnica:
IF @NumeroVecesDesaprobadoCurso = 0
@NumeroRepitencias = 0
@Condicion = ‘P’ -- Primera vez que lleva el curso
INSERT INTO AlumnoCursoRepitencias (...)VALUES
(@CursoID, @AlumnoID, @NumeroRepitencias,
@Condicion)
ELSE
UPDATE AlumnoCursoCondicion SET NumeroRepitencias = ...
Asuma como parámetro fijo el número de veces que ha desaprobado el curso
(@NumeroVecesDesaprobadoCurso).

b. Registro de Notas por Curso


- Actualizar el detalle de matrícula teniendo en cuenta los identificadores de
Matricula, Periodo y Curso. Si la nota obtenida en el curso es mayor que 10.5
la condición en el curso se actualiza a ‘A’, en otro caso a ‘D’.
Indicación Técnica:
UPDATE MatriculaDetalle UPDATE AlumnoCursoCondicion
SET Nota = @Nota SET Condicion = ...
WHERE MatriculaID = @MatriculaID WHERE AlumnoID = @AlumnoID
AND PeriodoID = @PeriodoID AND CursoID = @CursoID
AND CursoID = @CursoID
- De acuerdo con el número de veces que ha desaprobado el curso, actualizar
el estado del alumno.
Indicación Técnica:
IF @NumeroVecesDesaprobadoCurso >= 2
UPDATE Alumno
SET Estado = ‘O’
WHERE AlumnoID = @AlumnoID
Asuma como parámetro fijo el número de veces que ha desaprobado el curso
(@NumeroVecesDesaprobadoCurso).

Universidad Nacional Mayor de San Marcos


www.unmsm.edu.pe
FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA Código SS-M01-EF
Centro de Responsabilidad Social y Extensión Universitaria Versión 1.0
SQL SERVER - MÓDULO BÁSICO Fecha 26/07/2022
Examen Final Módulo I Página 4 de 5

Reportes:
a. Reporte de Pre-matrícula
Dado un Id de Alumno, los cursos que aún no haya llevado de acuerdo con su plan
de estudios.
Nro.
Plan Ciclo Código Curso Créditos
Repitencias
2020 0 R2020103 MACHINE LEARNING Y BIG DATA 4.0 0
2020 1 R2020113 TECNOLOGÍAS DISRUPTIVAS 2.0 0
Indicación Técnica:
Use las tablas Alumno (Id del Plan de Estudios), PlanEstudios (año), Curso (ciclo, código
nombre, créditos), AlumnoCursoCondicion (Número de Repitencias) para la combinación
(joins). Luego filtre las filas por Id Alumno y donde la condición sea diferente de ‘A’ (aprobado)
o ‘P’ (primera vez).

b. Reporte de Matrícula
Dado un Id de Matrícula, los cursos que formen parte de dicha matrícula.
Ciclo Código Curso Créditos Sección Docente
0 R2020109 GESTIÓN PROYECTOS DE TI 4.0 1 PÉREZ, JUAN
ARQUITECTURA DE SOFTWARE Y
1 R2020112 4.0 1 BAUTISTA, JOSÉ
MICROSERVICIOS
Indicación Técnica:
Use las tablas MatriculaDetalle (Id del Periodo, Id del Curso), CursoSeccion (Sección), Curso
(ciclo, código nombre, créditos), Docente (Nombres, Primer Apellido) para la combinación
(joins). Luego filtre las filas por Id de Matrícula.

c. Historial Académico
Dado un Id de Alumno, todos los cursos que haya llevado. En caso de repitencias
puede aparecer dos veces el mismo curso.
Periodo Plan Ciclo Código Tipo Créditos Curso Sección Nota Acta
GERENCIA
2018-0 2009 10 201101 O 3.0 1 18 P-20180010
INFORMÁTICA
DERECHO
2018-1 2009 9 209006 O 2.0 1 16 P-20180061
INFORMÁTICO
PROYECTO DE
2018-1 2009 10 201105 O 3.0 3 18 P-20181531
TESIS

Búsquedas más frecuentes:


a. Cursos filtrados por Nombre
b. Cursos disponibles Por Ciclo
c. Cursos llevados por Numero de Acta (no se repite)
d. Alumno por Correo Institucional (no se repite)

Universidad Nacional Mayor de San Marcos


www.unmsm.edu.pe
FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA Código SS-M01-EF
Centro de Responsabilidad Social y Extensión Universitaria Versión 1.0
SQL SERVER - MÓDULO BÁSICO Fecha 26/07/2022
Examen Final Módulo I Página 5 de 5

Modelo de datos físico de referencia

Clasificación sugerida de tablas

Maestras Movimientos
Facultad Periodo
EscuelaProfesional CursoSeccion
ProgramaAcademico Matricula
PlanEstudios MatriculaDetalle
Curso AlumnoCursoCondicion
Docente
Alumno

martes, 26 de Julio de 2022


TALV

Universidad Nacional Mayor de San Marcos


www.unmsm.edu.pe

FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA 
Centro de Responsabilidad Social y Extensión Universitaria 
 
 
 
Código
FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA 
Centro de Responsabilidad Social y Extensión Universitaria 
 
 
 
Código
FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA 
Centro de Responsabilidad Social y Extensión Universitaria 
 
 
 
Código
FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA 
Centro de Responsabilidad Social y Extensión Universitaria 
 
 
 
Código
FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA 
Centro de Responsabilidad Social y Extensión Universitaria 
 
 
 
Código

También podría gustarte