Pruebas
En esta sección se presentan los resultados de las pruebas realizadas para los casos de uso indicados. Se muestran capturas de las ventanas correspondientes y se proporciona una explicación para cada imagen.

Esta es una imagen de mi servicio de API REST corriendo de manera independiente. Es fundamental para asegurarnos de que todo está funcionando correctamente antes de proceder con las demás pruebas.

Esta es una captura de mi aplicación JavaFX mostrando la lista de estudiantes y notas. Es esencial para demostrar cómo se presentan los datos en la aplicación y cómo se manipulan.

Esta es una captura de DBeaver, que es un programa que muestra en tiempo real la situación de una base de datos. Comparamos la situación actual de la base de datos y los archivos que recibe mi programa en JavaFX para asegurarnos de que todo está sincronizado.

Aquí estoy agregando un nuevo estudiante a través de mi aplicación JavaFX. Después de agregarlo, comprobaremos en DBeaver si el estudiante se agregó exitosamente a la base de datos.

En este paso, estoy asignando una nota al estudiante que agregué en el paso anterior. Después de asignar la nota, comprobaremos en DBeaver si la nota se asignó correctamente.


Esta es una captura de DBeaver, que es un programa que muestra en tiempo real la situación de una base de datos. Comparamos la situación final de la base de datos y los archivos que recibe mi programa en JavaFX para asegurarnos de que todo está sincronizado.
Estos pasos demuestran que la API funciona sólidamente y la aplicación JavaFX consume la API correctamente y manipula las entidades de estudiantes y notas.
Bugs y dificultades encontradas:
Uno de los mayores desafíos fue investigar y comprender el concepto de ORM por cuenta propia, ya que no fue abordado en el curso de Programación Orientada a Objetos. Se invirtió tiempo en aprender y aplicar adecuadamente el mapeo objeto-relacional para garantizar un diseño sólido y eficiente del sistema.
En cuanto a los bugs, se encontraron dificultades al implementar ciertos métodos en la API REST que dependían de operaciones complejas, como la eliminación de un estudiante y sus notas asociadas. Se está trabajando activamente para abordar estos problemas y garantizar un funcionamiento estable y sin errores.
Además, durante el desarrollo del sistema, se enfrentaron desafíos al seleccionar los frameworks y las bibliotecas adecuadas para cubrir todas las necesidades del proyecto. Se optó por utilizar Spring para el servicio de API REST, aprovechando su funcionalidad ORM para tratar la base de datos como objetos. También se utilizó Kong para facilitar las solicitudes a la API REST desde la aplicación JavaFX, asegurando un acceso seguro y eficiente a los recursos.