From d3e52e816b7887df1e938c769f57dd073a3f7385 Mon Sep 17 00:00:00 2001
From: Felipe Garcia 1. Introducción y objetivos
La aplicación consiste en una serie de preguntas de diferentes categorías y temas generadas automáticamente a partir de datos de Wikidata.
Los miembros del equipo de desarrollo son los siguientes:
Aplicación web con integración y despliegue continuos.
+Los usuarios podrán registrarse en el sistema y consultar el histórico de participaciones.
La aplicación incluye diferentes temáticas sobre las preguntas. Esto permite que los usuarios puedan elegir que temática responder.
+El sistema tiene varios modos de juego que podrán ser seleccionados por los jugadores.
+Se permite ajustar parámetros de juego como el tiempo o el número de preguntas.
+Existe un ranking de todos los usuarios de la aplicación donde se pueden ordenar por las estadísticas de cada uno.
+Testeabilidad
Se utilizarán pruebas unitarias para garantizar el buen funcionamiento de la aplicación.
5
Rendimiento
Uno de los objetivos será que los tiempos de carga sean rápidos, con tiempos de respuesta bajos, para lograr una experiencia fluida durante la navegación.
6
Disponibilidad
Es importante que la aplicación esté disponible y accesible para los usuarios cuando la necesiten. Se intentará minimizar el tiempo de inactividad de la aplicación mediante un despliegue continuo
Equipo de desarrollo
El equipo de desarrollo esta formado por los estudiantes anteriormente indicados, y deberían desarrollar la aplicación con éxito en base a la documentación entregada por la empresa.
El equipo de desarrollo esta formado por los estudiantes miembros de este grupo
Deberían desarrollar la aplicación con éxito en base a los requisitos puestos por la empresa
Usuarios
Se espera que la aplicación cumpla con los requisitos mencionados anteriormente.
RTVE
RTVE
Empresa que contrata
Tiene las mismas expectativas que que el equipo de desarrollo que funcione todo correctamente y sin ningún fallo
Inconsistencias de datos
Al utilizar Wikidata para responder sacar la respuesta a preguntas, puede haber ciertas inconsistencias en los datos. Estos son actualizados por usuarios independientes y puede ocurrir que exista alguna respuesta que no tiene algún dato actualizado o incluso datos erróneos
Al utilizar Wikidata para sacar la respuesta a preguntas, puede haber ciertas inconsistencias en los datos. Estos son actualizados por usuarios independientes y puede ocurrir que exista alguna respuesta que no tiene algún dato actualizado o incluso datos erróneos
Utilizar dependencias antiguas/inseguras
Usabilidad en la web
Se intentará que la aplicación sea lo más usable posible y que pueda llegar al máximo número de personas y rangos de edad; evitando colores parecidos, mala legibilidad y haciendo la aplicación lo más intuitiva posible.
Rendimiento depende de Wikidata
Puede darse el caso de que al hacer una consulta a Wikidata para obtener alguna pregunta, esta petición se demore mucho tiempo, siendo esto un problema que se ha de intentar subsanar en la medida de lo posible, pero que no está en manos de los desarrolladores.
Stakeholders
Son el conjunto de personas o entidades que tienen interés o influencia de alguna manera sobre un proyecto
NodeJS
Es un entorno de tiempo de ejecución de JavaScript que permite ejecutar código JavaScript en el servidor. Node.js es especialmente conocido por su capacidad para crear aplicaciones de red escalables y de alta velocidad.
React
Es una biblioteca de JavaScript que se utiliza para construir interfaces de usuario (UI) interactivas y dinámicas para aplicaciones web y móviles.
Integración continua
Es una práctica de desarrollo de software que implica integrar cambios de código en un repositorio compartido de forma frecuente y regular, idealmente varias veces al día.
Despliegue continuo
Implica automatizar el proceso de implementación de software en un entorno de producción una vez que se pasa satisfactoriamente a través de las pruebas automatizadas.
Automatización
Es el proceso de configurar y programar tareas repetitivas para que se ejecuten de forma automática sin intervención manual. Esto implica definir y ejecutar flujos de trabajo que realizan acciones específicas, como pruebas de código, compilación de aplicaciones, despliegue automático…
GitHub
Es una plataforma de desarrollo de software basada en la web que ofrece control de versiones y herramientas de colaboración para desarrolladores.