Proyecto ELO329: Mechaniografus, software de apoyo para aprendizaje de lenguaje

Descripción del problema

Ante la dificultad de realizar evaluaciones a niños pequeños, con distintas capacidades, de una manera más lúdica y divertida para ellos, proponemos un software que permita aliviar la tarea del evaluador y de paso interesar más a los niños a aprender. Mechaniografus es un sistema de apoyo para niños de corta edad, para su aprendizaje de lenguaje. La aplicación está desarrollada en Java y con el IDE Eclipse, y se espera que con ella el pequeño pueda desarrollar sus habilidades de manera más lúdica, donde se evaluarán áreas como la comprensión lectora, vocabulario, conjugación, etc. a través de una serie de preguntas, y se podrá obtener un puntaje final a modo de evaluación. De esta manera quien esté haciendo uso de la aplicación para promover el aprendizaje de niños puede corroborar el avance de ellos.

Análisis y desarrollo del problema

Con este sistema se espera los jóvenes interactúen con el software. Se da la impresión de que la máquina les está hablando para que se sientan un poco más relacionados con la aplicación.
Al ejecutar la aplicación se aprecia una interfaz de presentación de la misma, con 3 botones que dan la posibilidad de iniciar el test, cargar un estado anterior y salir de la aplicación.
Como dice el primer botón, permite iniciar con una pantalla de presentación de Mechaniografus de manera amigable con el usuario. Luego se ingresa el nombre del jugador para que Mechaniografus lo identifique por él y luego comenzará con el test. Luego se da inicio al test de los diferentes tipos de casos a abordar: vocabulario, comprensión lectora, conjugación y uso de pronombres. Cada caso posee una serie de preguntas, que en la versión de prueba son 10 para cada uno, es decir una cantidad de 40 preguntas que poseen 4 alternativas cada una. Responder correctamente las preguntas otorga un puntaje que se irá acumulando a medida que el jugador responda correctamente hasta dar un puntaje final, que representará el desempeño del jugador. Posterior a esto se podrá salir de la aplicación o re-evaluar a otro usuario.
Se muestran a continuación algunos casos posibles de escenarios de uso:

Caso 1: Usuario realiza el test con normalidad
Actores (Usuario) Sistema (Software)
Usuario inicia los parámetros de carga del programa
El programa iniciará los parámetros solicitados
Usuario da click a iniciar test
El programa iniciará una clase instancia y solicitará un identificador para asignarle dicha clase, en este caso el nombre de usuario
Usuario confirma su intención de interactuar y someterse a los escenarios que cargue el programa
El software inicia su secuencia de preguntas y espera por cada una, una interacción del usuario. Esta instancia se repetirá un número finito de veces predeterminadas al momento de inicializar
El usuario interactúa con todas las instancias que el software presenta. Este paso se realiza hasta que el programa decida terminar y pasar al escenario final
El software determina el término de la secuencia de evaluación. Por lo que da la opción de evaluar a otro usuario o terminar el proceso
El usuario elige evaluar a otro usuario
El software envía al usuario al paso 4

Caso 2: Usuario decide salir del programa
Actores (Usuario) Sistema (Software)
Usuario inicia los parámetros de carga del programa
El programa iniciará los parámetros solicitados
Usuario da click a salir del programa
El software detiene la ejecución del programa y lo cierra

Caso 3: Usuario decide cerrar el programa una vez termina el test
Actores (Usuario) Sistema (Software)
Usuario inicia los parámetros de carga del programa
El programa iniciará los parámetros solicitados
Usuario da click a iniciar test
El programa iniciará una clase instancia y solicitará un identificador para asignarle dicha clase, en este caso el nombre de usuario
Usuario confirma su intención de interactuar y someterse a los escenarios que cargue el programa
El software inicia su secuencia de preguntas y espera por cada una, una interacción del usuario. Esta instancia se repetirá un número finito de veces predeterminadas al momento de inicializar
El usuario interactúa con todas las instancias que el software presenta. Este paso se realiza hasta que el programa decida terminar y pasar al escenario final
El software determina el término de la secuencia de evaluación. Por lo que da la opción de evaluar a otro usuario o terminar el proceso
El usuario decide cerrar el programa
El software cierra el programa

Implementación

El uso de la herramienta eclipse nos permite trabajar de forma rapida y directa en la manipulación de archivos, ya sean del tipo .java o de tipo fichero. La metodología de trabajo fue programacion sin uso de complementos, esto nos permite mas control de las clases que se implementan.

Workspace Eclipse

Para el diseño se pensó en una aplicación que nos otorga flexibilidad y facilidad de implementación, tratar de desligar todo del código principal y que el usuario se centrará en diseñar su propia evaluación.
En aspectos generales el proyecto es muy parecido a la tarea 2 del curso, al menos en la parte de creación e interacción de una ventana JFrame, salvo esa única salvedad el programa es independiente a los conocimientos empleados en las tareas del curso, esto sin contar el enfoque general del curso y sus paradigmas de programación.
Pasos desarrollados en la implementación del proyecto:


Clases diseñadas para los requerimientos:

Diagramas

A continuación se puede ver el diagrama de clases de nuestro programa

Diagrama de clases

Pruebas

Pantalla inicial
Presentación
Nombre
Comienzo
Preguntas 1
Preguntas 2
Preguntas 3