Saltar a contenido

Diccionario de datos

Este diccionario describe las tablas principales del modelo lógico, sus campos, tipos y propósito. Sirve como referencia para diseño, implementación y auditoría de la base de datos.

Usuario

Campo Tipo Descripción
id_usuario entero PK Identificador único.
id_persona entero FK Referencia a Persona (1FN: datos biográficos separados).
nombre texto Solo el nombre de pila.
apellido1 texto Primer apellido.
apellido2 texto Segundo apellido.
correo texto único Correo institucional o externo.
contrasena_hash texto cifrado Credencial protegida con hash (bcrypt/argon2).
id_estado_usuario entero FK Referencia a CAT_ESTADO_USUARIO (3FN: evita dependencia transitiva).
fecha_creacion fecha/hora Fecha de alta en el sistema.
ultimo_acceso fecha/hora Última autenticación exitosa.

Rol

Campo Tipo Descripción
id_rol entero PK Identificador único.
nombre texto único Nombre del rol (Aspirante, Profesor, etc.).
descripcion texto Propósito del rol.
activo booleano Permite desactivar sin eliminar.

Persona

Campo Tipo Descripción
id_persona entero PK Identificador único de la persona.
documento_identidad texto único Número del documento de identidad.
id_tipo_documento entero FK Tipo (carnet, pasaporte).
fecha_nacimiento fecha Fecha de nacimiento.
sexo texto Sexo biológico.
telefono texto Teléfono de contacto.

UsuarioRol

Campo Tipo Descripción
id_usuario entero PK,FK Referencia a Usuario.
id_rol entero PK,FK Referencia a Rol.
fecha_asignacion fecha/hora Cuándo se asignó el rol (2FN: depende de la PK compuesta).
asignado_por entero FK Usuario administrador que asignó (2FN).

Permiso

Campo Tipo Descripción
id_permiso entero PK Identificador único.
codigo texto único Código del permiso (p.ej. solicitud.aprobar).
descripcion texto Propósito del permiso.

RolPermiso

Campo Tipo Descripción
id_rol entero PK,FK Referencia a Rol.
id_permiso entero PK,FK Referencia a Permiso.

Facultad

Campo Tipo Descripción
id_facultad entero PK Identificador único.
nombre texto Nombre completo.
codigo texto único Código institucional.

CUM

Campo Tipo Descripción
id_cum entero PK Identificador único.
nombre texto Nombre del CUM.
municipio texto Municipio al que pertenece.
provincia texto Provincia.

ProgramaPosgrado

Campo Tipo Descripción
id_programa entero PK Identificador del programa.
id_facultad entero FK Facultad que ofrece el programa.
titulo texto Nombre del programa.
id_tipo_programa entero FK CAT_TIPO_PROGRAMA (3FN: catálogo, no string).
id_modalidad_estudio entero FK CAT_MODALIDAD_ESTUDIO.
id_modalidad_dedicacion entero FK CAT_MODALIDAD_DEDICACION.
id_coordinador entero FK Usuario coordinador.
id_estado_programa entero FK CAT_ESTADO_PROGRAMA.
fecha_aprobacion_inst fecha Fecha de aprobación institucional.
fecha_resolucion_mes fecha Fecha de resolución del MES cuando aplique.

Atributos derivados eliminados

horas_totales y creditos ya no se almacenan en esta tabla. Se calculan a partir de PROGRAMA_VERSION + PROGRAMA_ASIGNATURA (3FN: evita dependencia transitiva).

ProgramaVersion

Campo Tipo Descripción
id_programa_version entero PK Identificador.
id_programa entero FK Programa al que pertenece.
numero_version entero Consecutivo por programa (RN-60).
fecha_vigencia fecha Inicio de vigencia.
horas_totales entero Suma de horas de las asignaturas (calculado).

ProgramaAsignatura

Campo Tipo Descripción
id_programa_asignatura entero PK Identificador.
id_programa_version entero FK Versión a la que pertenece.
nombre texto Nombre de la asignatura/módulo.
horas entero Horas de la asignatura.
creditos entero Créditos de la asignatura (calculados como horas/30 o definido).

EdicionPrograma

Campo Tipo Descripción
id_edicion entero PK Identificador de la edición.
id_programa entero FK Programa al que pertenece.
numero_edicion entero Numeración consecutiva por programa.
fecha_inicio fecha Fecha de inicio.
fecha_fin fecha Fecha de cierre prevista.
capacidad entero Cupo máximo.
lugar texto Lugar de impartición.
estado catálogo Planificada, abierta, en ejecución, cerrada.

EdicionPrograma

Campo Tipo Descripción
id_edicion entero PK Identificador de la edición.
id_programa entero FK Programa al que pertenece.
numero_edicion entero Numeración consecutiva por programa (RN-11).
fecha_inicio fecha Fecha de inicio.
fecha_fin fecha Fecha de cierre prevista.
capacidad entero Cupo máximo.
lugar texto Lugar de impartición.
id_estado_edicion entero FK CAT_ESTADO_EDICION.

Convocatoria

Campo Tipo Descripción
id_convocatoria entero PK Identificador.
id_edicion entero FK Edición asociada.
fecha_publicacion fecha Fecha oficial de publicación.
fecha_cierre fecha Cierre de recepción de solicitudes.
id_estado_convocatoria entero FK CAT_ESTADO_CONVOCATORIA.

Atributos multivaluados normalizados

requisitos y calendario salen a CONVOCATORIA_REQUISITO (1FN) y ACTIVIDAD_ACADEMICA respectivamente.

ConvocatoriaRequisito

Campo Tipo Descripción
id_convocatoria_requisito entero PK Identificador.
id_convocatoria entero FK Convocatoria asociada.
id_tipo_documento entero FK Tipo de documento exigido.
descripcion texto Detalle o especificación.
obligatorio booleano Indica si es de carga obligatoria.

NecesidadSuperacion

Campo Tipo Descripción
id_necesidad entero PK Identificador.
descripcion texto Descripción de la necesidad.
id_origen_necesidad entero FK CAT_ORIGEN_NECESIDAD (interna/externa).
id_prioridad entero FK CAT_PRIORIDAD.
id_facultad entero FK NULL Facultad solicitante.
id_cum entero FK NULL CUM solicitante.
id_estado_necesidad entero FK CAT_ESTADO_NECESIDAD.
fecha_registro fecha Fecha de registro.

ComiteAcademico

Campo Tipo Descripción
id_comite entero PK Identificador.
id_programa entero FK Programa al que pertenece (RN-07).
fecha_constitucion fecha Fecha de creación.

ComiteMiembro

Campo Tipo Descripción
id_comite entero PK,FK ComiteAcademico.
id_usuario entero PK,FK Usuario miembro.
rol texto Rol dentro del comité (presidente, vocal, etc.).
fecha_ingreso fecha Fecha de incorporación.

Aspirante

Campo Tipo Descripción
id_aspirante entero PK Identificador.
id_usuario entero FK Cuenta de usuario asociada.
id_tipo_aspirante entero FK CAT_TIPO_ASPIRANTE (nacional/extranjero).

SolicitudMatricula

Campo Tipo Descripción
id_solicitud entero PK Identificador de la solicitud.
id_convocatoria entero FK Convocatoria asociada.
id_usuario entero FK Aspirante que realiza la solicitud.
id_aspirante entero FK Aspirante (1FN: separa datos de persona).
fecha_solicitud fecha/hora Fecha de envío.
id_estado_solicitud entero FK CAT_ESTADO_SOLICITUD.

Trazabilidad de estados

observaciones y fecha_cambio_estado se almacenan en SOLICITUD_HISTORIAL_ESTADO para mantener histórico (RN-51).

SolicitudHistorialEstado

Campo Tipo Descripción
id_historial entero PK Identificador.
id_solicitud entero FK Solicitud.
id_estado_solicitud entero FK Estado al que cambió.
fecha_cambio fecha/hora Cuándo se cambió.
id_usuario_cambio entero FK Quién cambió el estado.
motivo texto Comentario u observación.

Documento

Campo Tipo Descripción
id_documento entero PK Identificador del documento.
id_solicitud entero FK Solicitud a la que pertenece.
id_tipo_documento entero FK CAT_TIPO_DOCUMENTO.
ruta_archivo texto Ubicación del archivo (gestión documental o local).
nombre_archivo texto Nombre visible.
tamano_bytes entero Tamaño para validación.
formato texto Extensión / MIME.
id_estado_validacion entero FK CAT_ESTADO_VALIDACION.
motivo_rechazo texto Justificación si fue rechazado.
fecha_carga fecha/hora Cuándo fue subido.

DocumentoValidacion

Campo Tipo Descripción
id_documento_validacion entero PK Identificador.
id_documento entero FK Documento validado.
id_usuario_validador entero FK Quién validó.
id_estado_validacion entero FK CAT_ESTADO_VALIDACION.
fecha_validacion fecha/hora Cuándo se validó.
observacion texto Comentario de la validación.

Estudiante

Campo Tipo Descripción
id_estudiante entero PK Identificador.
id_usuario entero FK Cuenta de usuario asociada.
id_persona entero FK Datos biográficos (3FN).
codigo texto único Código institucional.
id_estado_academico entero FK CAT_ESTADO_ACADEMICO.

Matricula

Campo Tipo Descripción
id_matricula entero PK Identificador.
id_estudiante entero FK Estudiante matriculado.
id_edicion entero FK Edición del programa.
fecha_matricula fecha Fecha de registro.
id_estado_matricula entero FK CAT_ESTADO_MATRICULA.

RN-45

Existe UNIQUE (id_estudiante, id_edicion) WHERE id_estado_matricula = 'Activa' para evitar dos matrículas activas en la misma edición.

Expediente

Campo Tipo Descripción
id_expediente entero PK Identificador.
id_estudiante entero FK Estudiante titular.
id_edicion entero FK Edición a la que pertenece (RN-44).
fecha_apertura fecha Fecha de creación.
id_estado_expediente entero FK CAT_ESTADO_EXPEDIENTE.

RN-44

UNIQUE (id_estudiante, id_edicion): un expediente único por estudiante y por edición.

ActividadAcademica

Campo Tipo Descripción
id_actividad entero PK Identificador.
id_edicion entero FK Edición a la que pertenece.
nombre texto Nombre de la actividad.
tipo texto Clase, encuentro, evaluación, etc.
horas entero Duración en horas.
fecha fecha Fecha de realización.

Calificacion

Campo Tipo Descripción
id_calificacion entero PK Identificador.
id_expediente entero FK Expediente al que pertenece.
id_actividad entero FK Actividad evaluada.
id_calificacion_valor entero FK CAT_CALIFICACION_VALOR (3FN: no string).
fecha fecha Fecha de registro.
observaciones texto Comentarios del profesor.
registrado_por entero FK Profesor que registró.

Asistencia

Campo Tipo Descripción
id_asistencia entero PK Identificador.
id_expediente entero FK Expediente del estudiante.
id_actividad entero FK Actividad asociada.
fecha fecha Fecha de la actividad.
presente booleano true = asistió, false = no asistió.
registrado_por entero FK Profesor o sistema (Moodle).

Unicidad

UNIQUE (id_expediente, id_actividad): un estudiante solo tiene un registro de asistencia por actividad.

MemoriaEscrita

Campo Tipo Descripción
id_memoria entero PK Identificador.
id_estudiante entero FK Estudiante autor.
version entero Versión de la memoria.
fecha_entrega fecha/hora Cuándo se entregó.
ruta_archivo texto Ubicación del archivo.
paginas entero Cantidad de páginas (validable según RN-26, RN-27).
id_estado_memoria entero FK CAT_ESTADO_MEMORIA.

Tribunal

Campo Tipo Descripción
id_tribunal entero PK Identificador.
id_programa entero FK Programa al que pertenece.
fecha_constitucion fecha Fecha de creación.

TribunalMiembro

Campo Tipo Descripción
id_tribunal entero PK,FK Tribunal.
id_usuario entero PK,FK Usuario miembro.
rol texto Presidente, vocal, secretario.

RN-31

Trigger check_tribunal_impar() que verifica que el número de miembros sea impar.

Tutoria

Campo Tipo Descripción
id_tutoria entero PK Identificador.
id_usuario entero FK Profesor tutor.
id_estudiante entero FK Estudiante tutorado.
id_edicion entero FK Edición en la que tutoriza.
id_memoria entero FK NULL Memoria asociada.
fecha_asignacion fecha Fecha de asignación.

RN-25

Un tutor no puede tener más de 5 tutorías activas por edición (controlado por aplicación o vista materializada).

EvaluacionFinal

Campo Tipo Descripción
id_evaluacion entero PK Identificador.
id_estudiante entero FK Estudiante evaluado.
id_expediente entero FK Expediente al que pertenece.
id_tribunal entero FK Tribunal asignado.
id_tutor entero FK Usuario tutor.
id_oponente entero FK Usuario oponente.
id_memoria entero FK MemoriaEscrita defendida.
id_resultado_defensa entero FK CAT_RESULTADO_DEFENSA.
convocatoria entero 1 = primera, 2 = segunda (RN-32).
fecha_defensa fecha/hora Fecha programada.
acta_url texto Ruta del acta generada.

DocumentoEmitido

Campo Tipo Descripción
id_documento_emitido entero PK Identificador.
id_estudiante entero FK Estudiante receptor.
id_programa entero FK Programa que origina el documento.
id_tipo_documento_emitido entero FK CAT_TIPO_DOCUMENTO_EMITIDO.
emitido_por entero FK Usuario emisor (Secretaría/Dirección).
codigo_validacion texto único Código único de validación (RN-48).
fecha_emision fecha/hora Cuándo se emitió.
ruta_archivo texto Ubicación del archivo.
firma_digital texto Hash o referencia a la firma digital.

Certificado

Campo Tipo Descripción
id_documento_emitido entero PK,FK DocumentoEmitido (herencia por clave compartida).
id_expediente entero FK Expediente que ampara.
horas entero Horas del certificado.
creditos entero Créditos del certificado.

TituloAcademico

Campo Tipo Descripción
id_documento_emitido entero PK,FK DocumentoEmitido.
id_expediente entero FK Expediente que ampara.
tesis_titulo texto Título de la tesis.
mencion texto Mención obtenida.

Reporte

Campo Tipo Descripción
id_reporte entero PK Identificador.
id_usuario_generador entero FK Usuario que lo generó.
tipo texto Tipo de reporte.
filtros texto JSON Filtros aplicados.
fecha_generacion fecha/hora Cuándo se generó.
formato texto Formato de salida (PDF, Excel, XML).

Auditoria

Campo Tipo Descripción
id_auditoria entero PK Identificador.
id_usuario entero FK Usuario que ejecutó la acción.
id_accion entero FK CAT_ACCION_AUDITORIA (3FN).
entidad texto Tipo de entidad afectada.
id_entidad entero Identificador de la entidad.
fecha_hora fecha/hora Marca temporal.
ip texto Dirección IP origen.
id_resultado entero FK CAT_RESULTADO_AUDITORIA (3FN).
detalle texto JSON Datos adicionales.

Tablas catálogo (3FN)

Todas las tablas CAT_* tienen la misma estructura base: id_* PK, nombre (UNIQUE), activo (booleano). Mantener los valores en tablas separadas elimina dependencias transitivas y anomalías de actualización.

Tabla Valores iniciales
CAT_ESTADO_USUARIO Activo, bloqueado, inactivo.
CAT_TIPO_PROGRAMA Curso, entrenamiento, diplomado, maestría, especialidad.
CAT_MODALIDAD_ESTUDIO Presencial, semipresencial, a distancia.
CAT_MODALIDAD_DEDICACION Tiempo completo, tiempo parcial.
CAT_ESTADO_PROGRAMA En diseño, en revisión, aprobado, en ejecución, cerrado, devuelto.
CAT_ESTADO_EDICION Planificada, abierta, en ejecución, cerrada.
CAT_ESTADO_CONVOCATORIA Borrador, publicada, cerrada.
CAT_ESTADO_SOLICITUD Borrador, enviada, en revisión documental, pendiente corrección, en evaluación, aprobada, rechazada, matriculada.
CAT_ESTADO_VALIDACION Pendiente, válido, rechazado.
CAT_ESTADO_ACADEMICO Matriculado, en curso, alerta, prórroga, baja voluntaria, baja forzosa, graduado, desaprobado.
CAT_ESTADO_MATRICULA Activa, cancelada, finalizada.
CAT_ESTADO_EXPEDIENTE Abierto, bloqueado, cerrado.
CAT_ESTADO_MEMORIA Borrador, entregada, validada, rechazada.
CAT_RESULTADO_DEFENSA Aprobada, desaprobada, pendiente, segunda convocatoria.
CAT_CALIFICACION_VALOR Excelente, Bien, Aprobado, Desaprobado (con orden para ordenamiento).
CAT_TIPO_DOCUMENTO Título, autorización, identidad, memoria, acta, certificado, título.
CAT_TIPO_DOCUMENTO_EMITIDO Certificado, título académico.
CAT_TIPO_ASPIRANTE Nacional, extranjero.
CAT_ORIGEN_NECESIDAD Interno, externo, territorial (CUM).
CAT_PRIORIDAD Alta, media, baja (con nivel numérico).
CAT_ESTADO_NECESIDAD Registrada, priorizada, aprobada, rechazada, vinculada.
CAT_ACCION_AUDITORIA Login, logout, aprobar, rechazar, validar, emitir certificado, emitir título, etc.
CAT_RESULTADO_AUDITORIA Éxito, error, denegado.