Casos de uso — Coordinación académica y administración
Puesta en marcha (colegio nuevo)
Con la base vacía, el sistema crea el usuario admin en el primer arranque y
le exige cambiar la clave. Luego: Configuración → Colegio (nombre, AMIE,
régimen, timezone, umbrales de notas).

Año lectivo y períodos
- Configuración → Años lectivos → Nuevo año lectivo: fechas y estructura (3 trimestres o 2 quimestres × N parciales — se crean solos).
- El año avanza por etapas: Planificación → Matrícula → En curso → Cierre → Cerrado. En Cierre aparece el proceso de fin de año: calcular actas → registrar supletorios/remediales → promover.

| Intento | Respuesta del sistema |
|---|---|
| Activar un segundo año lectivo teniendo uno activo | 409 — Ya existe un año lectivo activo (…): ciérrelo antes de activar otro |
| Saltarse etapas (Planificación → En curso) | 409 — Transición inválida |
| Matricular con el año en Planificación o Cerrado | 409 — El año lectivo no admite matrículas en estado … |
| Calcular actas con períodos abiertos | 409 — Cierre primero los períodos: … |
| Promover con supletorios pendientes | 409 — Hay materias con recuperación pendiente |

Creación de cursos y niveles
Estructura académica: botones Grado, Paralelo (con aula) y Materia. El tablero muestra los matriculados por paralelo en tiempo real.

Asignación de docentes
Personal creado en Configuración → Personal (credencial temporal). Luego Asignar docente: docente + materia + paralelo. Con Moodle conectado, el curso del aula virtual se crea automáticamente.

| Intento | Respuesta del sistema |
|---|---|
| Asignar dos docentes a la misma materia/paralelo | 409 — La materia ya tiene docente en ese paralelo |
| Cédula duplicada en personal | 409 — Ya existe personal con esa cédula |
| Un docente intenta crear años/estructura | 403 — Rol insuficiente (evidencia) |
Organización de horarios y aulas
Horarios → Agregar bloque: materia (el docente sale de la asignación), día, horas y aula. Los bloques se eliminan para reorganizar.
El sistema valida tres choques al guardar cada bloque:
| Choque | Mensaje |
|---|---|
| El docente ya dicta clase a esa hora | 409 — Choque de horario: el docente ya está ocupado en ese bloque |
| El paralelo ya tiene clase a esa hora | 409 — … el paralelo ya está ocupado … |
| El aula ya está en uso a esa hora | 409 — … el aula ya está ocupado … |

Cierre de parciales y rectificaciones
- Cerrar parcial congela las notas y genera las boletas en cola.
- Las correcciones llegan a Rectificaciones: nota actual, propuesta y motivo → Aprobar (aplica y audita) o Rechazar.

| Intento | Respuesta del sistema |
|---|---|
| Cerrar un parcial fuera de orden | 409 — Cierre primero Parcial 1 de Trimestre 2: los parciales se cierran en orden |
| Cerrar un período con parciales abiertos | 409 — Cierre todos los parciales antes de cerrar el período |
| Cerrar dos veces | 409 — El parcial ya está cerrado |
| Rectificar una nota abierta | 409 — La nota aún está abierta: edítela directamente |
| Resolver dos veces una rectificación | 409 — La rectificación ya fue resuelta |

Pensiones y cobros
Pagos → Generar obligaciones (rubro + vencimiento → una obligación por matriculado, idempotente). Registrar pago admite abonos; el estado pasa solo a Abono parcial / Pagada y la familia recibe la confirmación.

| Intento | Respuesta del sistema |
|---|---|
| Pago mayor al saldo | 400 — El pago excede el saldo (saldo: …) |
| Generar obligaciones dos veces | 0 nuevas (N ya existían) — idempotente |
| Cobrar una obligación pagada/anulada | 409 — La obligación ya está … |

Transparencia: auditoría y sistema
- Configuración → Auditoría: registro inalterable de cambios y accesos (LOPDP), filtrable por entidad y acción, con el antes/después de cada cambio.
- Configuración → Sistema: colas de notificaciones/Moodle/boletas con reintento de fallidos en un clic.
Detalle completo en la sección técnica.