Skip to content

Cobertura para una intranet estilo Blackboard (LMS)

Comparativa de lo implementado frente a las funcionalidades típicas de un LMS (Blackboard/Moodle).

Confirmación: Sí. El backend de la intranet está completo a nivel Blackboard para el alcance acordado: roles, cursos/clases, matrícula, notas, asistencia, CRUD de tareas (profesor), entregas y adjuntos, material por clase, anuncios, agenda virtual (mérito/demérito), calendario (eventos por tareas), portales profesor/estudiante/padre, noticias públicas, notificaciones por email (agenda y nota publicada), cache, event bus, rate limiting, tests, README y backups (script + doc S3).


✅ Cubierto

ÁreaFuncionalidadEstado
Usuarios y rolesADMIN, EDITOR, TEACHER, PARENT, STUDENT; gestión desde admin
Cursos / ClasesCursos, niveles, secciones, clases con profesor y horario
Matrículasection_enrollments (estudiante en sección → todas las clases de esa sección)
NotasProfesor registra por clase/tipo evaluación; estudiante y padre ven propias/hijos
AsistenciaRegistro por clase y fecha (portal profesor)
Tareas (entregas)Entidad Task + TaskSubmission; adjuntos en tarea y en entrega
Tareas – EstudianteListar mis tareas, ver mi entrega, entregar (PUT), adjuntos (listar/subir/descargar)
Tareas – ProfesorListar tareas por clase, listar entregas por tarea, adjuntos (listar/subir/descargar)
Material por claseArchivos por clase (profesor sube); estudiante lista y descarga (presigned)
AnunciosPor clase (profesor crea); estudiante y padre leen (sus clases / clases de hijos)
Portal padreHijos, notas de hijos, pagos propios, anuncios de clases de hijos; vínculo padre–estudiante (admin)
Portal estudianteNotas propias, mis clases, tareas, entrega, archivos de clases, anuncios, agenda
HorariosEntidad Schedule; clases con schedule_id; se expone en resumen de clase
PagosAdmin registra; padre ve los suyos (titular)
Noticias / LandingBackoffice: crear, aprobar, rechazar; imágenes; GET /public/news (aprobadas, sin auth)
AuthJWT Cognito, /auth/me, roles en token
ArchivosS3, presigned URLs, metadata en BD; validación tipo/tamaño
CRUD tareas (profesor)Crear, editar, eliminar tarea; listar y detalle por clase
Adjuntos tarea/entregaProfesor: adjuntos a tarea y ver adjuntos de entregas; estudiante: adjuntos a su entrega
Agenda virtualMérito/demerito por clase (profesor); padre y estudiante solo lectura
OpcionalesCORS prod, health extendido (AwsHealthIndicator)

⚠️ Opcional o no contemplado

ÁreaEstadoNotas
Mensajería padre–colegio (más allá de notificaciones automáticas)No implementadoSolo agenda y nota publicada por email; resto opcional.
Foros, cuestionarios, videollamadas, rúbricasNo contempladoTípico de LMS avanzado; fuera del alcance actual.

❌ No contemplado (típico en LMS avanzado)

  • Foros / debates por clase.
  • Cuestionarios / exámenes con preguntas y respuestas automáticas (sí hay notas por tipo de evaluación).
  • Mensajería interna (inbox profesor–estudiante–padre).
  • Videollamadas integradas.
  • Rubricas de evaluación (sí hay notas por tipo).
  • Entrega en grupo (solo entrega individual por estudiante).

Conclusión

El backend de la intranet estilo Blackboard está completo para el alcance definido: roles, clases, matrícula, notas, asistencia, tareas con CRUD (profesor), entregas y adjuntos, material por clase, anuncios, agenda virtual, calendario, portales profesor/estudiante/padre, pagos, noticias públicas, notificaciones por email, cache, rate limiting, tests, README y backups.

El flujo “profesor asigna tarea → estudiante entrega” está cerrado (CRUD de tareas por profesor ya implementado). Calendario, noticias públicas, tests, README y backups también. No incluido en este alcance: foros, cuestionarios automáticos, mensajería interna, videollamadas, rúbricas, entregas en grupo.