Note
La implementación de este proyecto se basa más en el reto modificado. Pero se hace la invitación a revisar e implementar el reto original a manera de ejercicio.
Desarrollar una aplicación web con Java para el procesamiento de datos de evaluaciones, con el objetivo de ofrecer al docente información detallada del rendimiento estudiantil.
- Java (JDK 21 como mínimo).
- Jakarta EE.
- Tecnologías web Java: JSP/JSF, Facelets tags, Rest, Resource bundles.
- Apache Tomcat, GlassFish u otro servidor Web.
- IDE: cualquiera.
- Luego de cada evaluación, la plataforma UTP+class proporciona un reporte de las notas registradas.
- La plataforma no brinda un detalle de las calificaciones por cada pregunta.
- El docente requiere la información detallada por cada pregunta para conocer con más detalle el nivel de aprovechamiento de cada estudiante en los temas evaluados.
- Se requiere una aplicación que permita al docente ingresar los puntos obtenidos por cada alumno en cada una de las preguntas de un examen. Este ingreso se puede realizar por importación de archivo o ingreso manual.
- La aplicación generará un reporte detallado con la información proporcionada.
El reporte debe incluir:
-
Un gráfico de pastel que muestre el número de aprobados y desaprobados.
-
Un gráfico de barras con el número de estudiantes por cada nota (de 0 a 20).
-
Un podio con los tres primeros puestos (considerar empates).
-
Un gráfico estadístico de barras con el número de alumnos por puntaje para cada pregunta de la evaluación.
-
- La interfaz debe estar construida usando JSP/JSF y Facelets Tags.
- La aplicación debe tener soporte para idioma inglés/español.
- La aplicación consume los datos a través de un servicio REST.
- Toda la información debe ser almacenada en una base de datos.
El reto modificado es una versión llevada a un enfoque más libre en cuanto el uso de tecnologías. Además, el soporte para el idioma inglés se vuelve opcional.
- Typescript
- Bun JS
- Astro
- React
- Tailwind CSS
Además de las especificaciones técnicas ya planteadas, se han añadido las siguientes:
- Uso de PWA (Progressive Web App) para una mejor experiencia de usuario en dispositivos móviles.
- La aplicación debe tener un soporte básico para un modo offline.
Si deseas contribuir o proponer mejoras, revisa el CONTRIBUTING.md. ¡Tu participación es bienvenida!



