Skip to content

Commit

Permalink
Documentacion arreglada
Browse files Browse the repository at this point in the history
  • Loading branch information
uo276026 committed Feb 24, 2024
1 parent c5aa8d7 commit 16c8449
Show file tree
Hide file tree
Showing 12 changed files with 56 additions and 40 deletions.
Binary file added docs/images/08_1_pantalla-estadisticas.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/08_1_pantalla-juego.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/08_1_pantalla-principal.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
17 changes: 10 additions & 7 deletions docs/src/01_introduction_and_goals.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -48,10 +48,13 @@ See https://docs.arc42.org/section-1/[Introduction and Goals] in the arc42 docum
* Los usuarios podrán registrarse en la aplicación.
* Los ususarios registrados podrán iniciar su sesión en la aplicación.
* Los usuarios registrados podrán jugar.
** El juego tendrá 5 preguntas con 3 respuestas incorrectas y una correcta cada una, generadas aleatoriamente.
** Cada pregunta deberá ser respondida en un plazo de tiempo.
* Los usuarios registrados podrán consultar su historial de participación
** Número de juegos
** Número de juegos jugados
** Preguntas acertadas/falladas
** Tiempo de respuesta y partida
*


=== Metas de Calidad
Expand All @@ -78,9 +81,9 @@ A table with quality goals and concrete scenarios, ordered by priorities
[cols="e,2e" options="header"]
|===
|Nombre|Descripción
|*Usabilidad*| _La aplicación tiene que poder usarse por un publico diverso_
|*Usabilidad*| _La aplicación tiene que poder usarse por el mayor tipo de usuarios_
|*Rendimiento*| _El tiempo de respuesta de la aplicación debe ser rápido_
|*Testeable*| _La aplicación debe probarse con cada actualización_
|*Testeable*| _La aplicación debe pasar las pruebas generadas automaticamente para cada versión_
|*Disponibilidad*| _La aplicación debe estar disponible y caerse lo menos posible_
|===
=== Stakeholders
Expand Down Expand Up @@ -108,10 +111,10 @@ Table with role names, person names, and their expectations with respect to the
[cols="e,2e,2e" options="header"]
|===
|Rol/Nombre|Expectativa|Descripción
| *Cristian Augusto* | _Una buena aplicación_ | _Profesor de la asignatura_
| *Cristian Augusto* | _Una aplicación que cumpla todos los requisitos propuestos en la asignatura_ | _Profesor de la asignatura_
| *HappySw* | _Una aplicación buena para atraer al mayor número de usuarios_ | _Equipo de desarrollo_
| *Wikidata* | _Un buen uso de su aplicación_ | _Empresa que nos facilita la API para obtener información_
| *Usuarios Registrados* | _Una buena aplicación_ | _Los usuarios de la aplicación_
| *Wikidata* | _Usar su aplicacion con precaución, sin sobrecargar sus servicios_ | _Empresa que nos facilita la API para obtener información_
| *Usuarios Registrados* | _Una aplicación que proporcione los servicios esperados_ | _Los usuarios de la aplicación_
| *Usuarios No Registrados* | _Una buena aplicación_ | _Los usuarios de la aplicación_
| *RTVE* | _Una buena versión de su juego "Saber y Ganar"_ | _Empresa contratista, el cliente_
| *RTVE* | _Una buena versión de su juego "Saber y Ganar"_ | _Dueño del producto_
|===
20 changes: 14 additions & 6 deletions docs/src/02_architecture_constraints.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ See https://docs.arc42.org/section-2/[Architecture Constraints] in the arc42 doc
****

Este proyecto está limitado por una serie de pautas marcadas por los responsables de la asignatura.
Por ello esta aplicación está desarrollada siguiendo una serie de requisitos los cuales nombraremos a continuación.
Este proyecto está limitado por una serie de restricciones de arquitectura marcadas por los responsables de la asignatura.
Por ello esta aplicación está desarrollada siguiendo una serie de limitaciones las cuales nombraremos a continuación.

=== Limitaciones técnicas

Expand All @@ -36,15 +36,15 @@ Por ello esta aplicación está desarrollada siguiendo una serie de requisitos l
|Restricción |Explicación

|*GIT*
|_Esta tecnología nos permite almacenar el proyecto y llevar un control de versiones de este, utilizando el servicio de GitHub. Además nos permite
|_Esta tecnología es un sistema de control de versiones que nos permite almacenar el proyecto, además de utilizar el servicio de GitHub. Además nos permite
una continua integración mediante la paralelización del trabajo usando el sistema de ramas. También GitHub permite organizar las distintas tareas de cada
miembro del equipo mediante el uso de las Issues._

|*Docker*
|_Este programa es utilizado para desplegar aquí la aplicación web y realizar las pruebas pertinentes._
|_Este sistema es utilizado para desplegar la aplicación web en el entorno de desarrollo como en el de producción._

|*Wikidata*
|_Todas las preguntas del juego se obtienen a partir de esta plataforma, generando aleatoriamente las preguntas y respuestas correctas y también las falsas._
|_Fuente de información desde donde generaremos las preguntas y respuestas correctas e incorrectas del juego._
|===

=== Limitaciones organizativas
Expand Down Expand Up @@ -80,5 +80,13 @@ a través de nuestro grupo de WhatsApp y en casos necesarios realizamos reunione
|_Para crearla usaremos la plantilla Arc42 con la finalidad de que sea sencilla y práctica._

|*Accesibilidad*
|_Nuestro aplicación puede ser utilizada por cualquier tipo de usuario, sin importar quien sea, ya que será fácil de entender e interactuar._
|_Intentaremos que nuestra aplicación puede ser utilizada por cualquier tipo de usuario, sin importar quien sea. Seguiremos los estandares de accesibilidad y
usaremos el color, tamaño de texto... adecuados para ello._

|*Estructura*
|_Debe seguir una estructura fija y bajo los mismos estandares. Los diferentes modulos estaran separados en carpetas
principalmente: 'users' para el la api rest y el registro de usuarios, 'webapp' para el desarrollo de la aplicación, 'docs'
para la documentación._


|===
8 changes: 4 additions & 4 deletions docs/src/04_solution_strategy.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -31,14 +31,14 @@ See https://docs.arc42.org/section-4/[Solution Strategy] in the arc42 documentat
****

* *JavaScript*: Este lenguaje es muy buena opción para utilizar en proyectos en que se emplé la tecnología REACT. Nos pareció mejor opción que otros lenguajes como TypeScript debido a que su compresión y manejo es más sencillo.
* *JavaScript*: Este lenguaje es muy buena opción para utilizar en proyectos en que se empleé la biblioteca REACT. Nos pareció mejor opción que otros lenguajes como TypeScript debido a que su compresión y manejo es más sencillo.

* *React*: Esta libreria de JavaScript permite la creación de interfaces de usuario para la aplicacion web, simplificando la creación de interfaces gráficas.
* *React*: Esta libreria de JavaScript permite la creación de interfaces de usuario para la aplicacion web, simplificando el desarrollo de las interfaces gráficas.

* *Docker*: Utilizaremos los contenedores de Docker como lugar donde desplegar la aplicacion web, de manera que pueda probarse la aplicación de forma aislada.
* *Docker*: Utilizaremos esta plataforma para desplegar la aplicacion web.

* *Firebase*: Esta API nos servirá como sistema de autenticación del usuario para poder llevar un registro de su historial de partidas, así como algunas de sus estadísticas.

* *Microservicios:* Enfoque arquitectónico donde el software está compuesto por pequeños servicios independientes. Lo hemos elegido por encima de MVC, por la facilidad a la hora de modificar una parte de la aplicación sin afectar al resto.
* *Microservicios:* Enfoque arquitectónico donde el software está compuesto por pequeños servicios independientes.

* *MongoDB:* Es una base de datos NoSQL sencilla de utilizar y que ya conocemos.
24 changes: 16 additions & 8 deletions docs/src/08_concepts.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
ifndef::imagesdir[:imagesdir: ../images]

[[section-concepts]]
== Cross-cutting Concepts
== Conceptos transversales


[role="arc42help"]
Expand Down Expand Up @@ -56,18 +56,26 @@ See https://docs.arc42.org/section-8/[Concepts] in the arc42 documentation.
****


=== _<Concept 1>_
=== Prototipos de pantalla

_<explanation>_
En la siguiente sección, vamos a mostrar los primeros prototipos de pantalla, aunque pueden estar sujetos a cambios en el futuro.

*Pantalla principal*
La pantalla principal que aparece al entrar en la aplicación, con las opciones de jugar y ver las estadisticas de los juegos
solo si estás registrado en la aplicación. Además de las propias opciones de iniciar sesión y registrarse.

image::08_1_pantalla-principal.png["Prototipo de pantalla principal"]

=== _<Concept 2>_
*Pantalla de juego*
Irán apareciendo 5 diferentes preguntas con 4 posibles rspuestas, de las cuales solo una
será la correcta. También podremos ver el tiempo que trascurre durante todo el juego.

_<explanation>_
image::08_1_pantalla-juego.png["Prototipo de pantalla de juego"]

...
*Pantalla de estadísticas*
Solo se podrá acceder a esta página si estás registrado en la aplicación. Aqui
podremos observar diferentes estadisticas en los juego que hayas jugado.

image::08_1_pantalla-estadisticas.png["Prototipo de pantalla de destadisticas"]

=== _<Concept n>_

_<explanation>_
4 changes: 2 additions & 2 deletions docs/src/09_architecture_decisions.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -48,13 +48,13 @@ There you will find links and examples about ADR.
|_Marco de trabajo para desarrollar la parte grafica de la aplicación._
|*React*
|_Hemos elegido este framework ya que simplifica la creación de interfaces gráficas._
|*Angular.*
|*Angular, Vue...*

|*Base de Datos*
|_Donde almacenaremos la informacion de los usuarios._
|*MongoDB*
|_La hemos elegido porque es una base de datos NoSQL fácil de usar que ya conocemos._
|*MySQL.*
|*MySQL, Postgress, Redis, MariaDB, SQLLite...*

|*Arquitectura*
|_La forma en la que se estructura la aplicación._
Expand Down
6 changes: 3 additions & 3 deletions docs/src/10_quality_requirements.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -77,9 +77,9 @@ Tabular or free form text.
[options="header",cols="1e,2,2,2"]
|===
|*Calidad* |*Escenario* | *Acciones de usuario* | *Respuesta*
|*Usabilidad*| Un usuario que nunca ha interactuado con la aplicación | El usuario quiere iniciar sesión y posteriormente jugar | La aplicación facilita al usuario iniciar/registrar en la aplicación y posteriormente se le muestra la opción para jugar de forma visual
|*Rendimiento*| Un usario, un poco impaciente y ya registrado quiere jugar tranquilamente una partida | Empieza la partida y espera a que se procese la pregunta y respuestas | El sistema de obtención de preguntas es ágil y se muestra la pregunta con sus respuestas antes de que el usuario se canse de esperar
|*Usabilidad*| Un usuario que nunca ha interactuado con la aplicación | El usuario quiere iniciar sesión y posteriormente jugar y que todo sea intuitivo | La aplicación facilita al usuario iniciar/registrar en la aplicación y posteriormente se le muestra la opción para jugar de forma visual
|*Rendimiento*| Un usario, un poco impaciente y ya registrado quiere jugar tranquilamente una partida | Empieza la partida y espera a que se procese la pregunta y respuestas, sin importar cuantos usuarios esten jugando en ese momento | El sistema de obtención de preguntas es ágil y se muestra la pregunta con sus respuestas antes de que el usuario se canse de esperar
|*Testeable*| Un desarrollador esta realizando una nueva funcionalidad del sistema, pero se equivoca y produce fallos en la aplicación | Igualmente realiza un commit en su rama con el objetivo de incorporar la nueva funcionalidad al sistema | Las pruebas automáticas detectan un error de programación e impide que el problema se propague a la aplicación funcional
|*Disponibilidad*| Un usuario quiere jugar a las 03:00 AM | El usuario inicializa la aplicación de forma estandar |La aplicación es funcional pese a no ser una hora habitual
|*Disponibilidad*| Un usuario quiere jugar a las 03:00 AM, sin que ocurra ninguna caida por mantenimiento o cualquier otro error. | El usuario inicializa la aplicación de forma estandar |La aplicación es funcional pese a no ser una hora habitual
|===

2 changes: 1 addition & 1 deletion docs/src/11_technical_risks.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ suficiente tiempo al desarrollo de este proyecto._
las planeadas para solucionar este tipo de problemas._

|*Caída de Servicios*
|_El desarrollo del proyecto puede verse afectado si alguno de los servicios utilizados, como por ejemplo Docker, pueden no funcionar en algún momento. Esto podría bloquear la entrega de alguna de las
|_El desarrollo del proyecto puede verse afectado si alguno de los servicios utilizados, como por ejemplo Docker, parará de funcionar en algún momento. Esto podría bloquear la entrega de alguna de las
funcionalidades del proyecto._

|===
Expand Down
9 changes: 0 additions & 9 deletions docs/src/12_glossary.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -40,18 +40,9 @@ See https://docs.arc42.org/section-12/[Glossary] in the arc42 documentation.
|*Arc42*
|Un marco de arquitectura que proporciona un conjunto de prácticas y plantillas para documentar y diseñar arquitecturas de software.

|*Back-end*
|La parte de un sitio web o aplicación que no es visible para los usuarios finales y se encarga del procesamiento de la lógica del negocio y la gestión de los datos.

|*Contenedor*
|Entorno virtual ligero que contiene todo lo necesario para ejecutar una aplicación, incluidas bibliotecas, herramientas y códigos.

|*Docker*
|Plataforma de código abierto que automatiza el despliegue de aplicaciones dentro de contenedores de software.

|*Front-end*
|La parte de un sitio web o aplicación que interactúa directamente con los usuarios, visible y accesible en el navegador.

|*GitHub*
|Plataforma de desarrollo colaborativo para alojar proyectos utilizando el sistema de control de versiones Git.

Expand Down
6 changes: 6 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 16c8449

Please sign in to comment.