Planteamiento del problema - Arquisoft/Trivial1b GitHub Wiki
La empresa NoGame dedicada a la creación de videojuegos va a crear una nueva línea de productos basados en juegos de preguntas/respuesta para diversas plataformas. En primer lugar se desea construir una variante del juego Trivial, aunque la idea es que puedan crearse más juegos de preguntas/respuesta similares en el futuro.
Primera etapa
En una primera fase, desean hacerse con una base de preguntas suficiente para poder alimentar los diferentes juegos. Para ello, desean construir una sencilla aplicación que lea ficheros con los enunciados y respuestas de las preguntas, procese dichas preguntas indicando si hay errores o son correctas y las almacene en una base de datos.
Elementos del producto
Este sistema debe permitir extraer las preguntas de varios formatos de ficheros y almacenarlas en un formato común en la base de datos, permitiendo a un operario realizar estos procesos en 2 etapas diferentes,
Analizador de ficheros
Una parte del sistema analizará los ficheros de preguntas que podrán estar en diversos formatos (GIFT,QTI,XML) y los transformará en un formato intermedio (JSON) para facilitar el uso posterior por otros sistemas.
Almacenamiento de preguntas
Esta parte del sistema recogerá las preguntas en el formato JSON y las almacenará en una base de datos.
Características a tener en cuenta.
- La empresa considera usar MongoDB, pero no de forma definitiva
- Los datos de entrada serán en principio en GIFT y ampliables a QTI y XML
En construcción
Es importante garantizar que la conversión es correcta, facilitando la depuración del proceso de carga de preguntas. Por ese motivo, se buscará una solución que no requiera interfaz interactivo pero que permita varias opciones de entrada (elegir nombre del fichero a cargar, elegir formato de la entrada, elegir nombre del fichero de salida, elegir formato del fichero de salida, etc.) y que permita observar los resultados intermedios de la conversión para chequear que no hay errores.