XIII. Reglas de Negocio
La integridad del sistema se basa en el cumplimiento estricto de las siguientes reglas de negocio:
RN-01: Restricción de Registro Anticipado
El sistema impedirá el registro de una sesión antes de la hora de finalización programada para dicha clase. La validación se realiza comparando Hora_Actual >= Hora_Fin_Clase del horario correspondiente. Si la condición no se cumple, se muestra un mensaje claro indicando la hora de fin de la clase.
RN-02: Determinación de Puntualidad
El estado del registro se calculará automáticamente comparando la hora de envío contra la hora de fin de la clase más el margen de tolerancia configurado:
Hora_Registro <= Hora_Fin + Tolerancia→ Estado: A tiempo (en_tiempo)Hora_Registro > Hora_Fin + Tolerancia→ Estado: Fuera de plazo (fuera_de_plazo)- La tolerancia se obtiene del campo
tolerancia_minutosen el horario específico; si no está definido, se usa la tolerancia global dehorario_academico.
RN-03: Privacidad y Aislamiento de Datos
El personal docente tendrá acceso exclusivo a su propia carga académica, sin visibilidad sobre otros usuarios. Todas las consultas de clases del día, horario semanal e historial están filtradas por el docente_id del usuario autenticado. El coordinador, en cambio, tiene visibilidad completa de todos los docentes.
RN-04: Seguridad de Sesión
El sistema implementa:
- Bloqueo de cuenta tras 5 intentos fallidos de inicio de sesión (15 minutos de espera).
- Cierre de sesión automático por inactividad prolongada (configurable vía Shield).
- Autenticación mediante CodeIgniter Shield con contraseñas cifradas.
- Los usuarios
adminycoordinadortienen acceso a todos los módulos; losdocentessolo a su panel personal.
RN-05: Dependencia de Entidades Maestras
Solo los horarios marcados como esta_activo = 1 y los periodos marcados como es_activo = 1 serán considerados para la operación diaria en el panel docente. Las entidades inactivas se excluyen automáticamente de todas las consultas operativas.
RN-06: Integridad de Periodos Académicos
No se permite modificar las fechas de un periodo académico si este tiene horarios, registros de sesión o asignaciones asociadas. El sistema verifica la integridad referencial antes de permitir la actualización.
RN-07: Validación de Cruce Horario
No pueden existir dos horarios activos en el mismo día con rangos horarios que se superpongan. El sistema valida que no haya cruce al crear o actualizar un horario.
RN-08: Límite de Horas Semanales por Curso
La suma de horas de todos los horarios activos de un curso no puede exceder las horas_semanales definidas en el curso. El sistema calcula las horas actuales y valida antes de guardar un nuevo horario.
RN-09: Contenido Mínimo del Registro
El registro de sesión requiere obligatoriamente una descripción de la actividad realizada. No se permiten registros vacíos o con solo espacios en blanco.
RN-10: Origen del Registro
Todo registro de sesión debe identificar el origen desde el cual fue creado (web, api, etc.) para fines de auditoría y trazabilidad.
- Regresar al Inicio