Skip to content

Commit

Permalink
Merge de develop. Funciona
Browse files Browse the repository at this point in the history
  • Loading branch information
Santiago21112001 committed Mar 10, 2024
1 parent 30a1143 commit 4e473fe
Show file tree
Hide file tree
Showing 28 changed files with 285 additions and 207 deletions.
1 change: 0 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,2 @@
{
"asciidoc.antora.enableAntoraSupport": true
}
21 changes: 21 additions & 0 deletions docs/images/06_sequence-diagram.plantuml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
@startuml Diagrama de secuencia plantuml
actor usuario
actor system
actor juego
database bbdd as "bbdd"
usuario -> system: inicio sesión
system --> usuario: pedir nombre/contraseña
usuario -> system: dar nombre/contraseña
system -> bbdd: verificar usuario
bbdd --> system: verificación correcta
system --> usuario: inicio sesión correcto
usuario -> system: acceder al juego
system -> juego: iniciar juego
juego --> system: generar pregunta/respuestas
system --> usuario: mostrar pregunta/respuestas
usuario -> system: responder
system -> juego: verificar respuesta
juego --> system: respuesta correcta
system --> usuario: correcta
system -> juego: generar siguiente pregunta/respuestas
@enduml
Binary file added docs/images/Diagrama de secuencia plantuml.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 4 additions & 4 deletions docs/src/01_introduction_and_goals.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,10 @@ La aplicación tendrá su base para las preguntas y las respuestas en Wikidata,
|===
| Prioridad | Objetivo | Descripción
| 1 | Usabilidad | Todos los usuarios deben poder usar la aplicación sin tener en cuenta sus limitaciones.
| 2 | Privacidad | Los datos sensibles de los usuarios deben estar restringidos al mismo usuario.
| 3 | Mantenibilidad | El código y documentación de la aplicación ha de estar conformado de tal forma que sea factible hacer cambios y ampliaciones en la aplicación.
| 4 | Eficiciencia | Los tiempos entre operaciones han de ser asumibles.
| 5 | Fiabilidad | Los datos usados en la aplicación deben ser los correctos.
| 2 | Mantenibilidad | El código y documentación de la aplicación ha de estar conformado de tal forma que sea factible hacer cambios y ampliaciones en la aplicación.
| 3 | Eficiciencia | Los tiempos entre operaciones han de ser asumibles.
| 4 | Fiabilidad | Los datos usados en la aplicación deben ser los correctos.
| 5 | Privacidad | Los datos sensibles de los usuarios deben estar restringidos al mismo usuario.
|===


Expand Down
3 changes: 2 additions & 1 deletion docs/src/02_architecture_constraints.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ ifndef::imagesdir[:imagesdir: ../images]

[[section-architecture-constraints]]
== Restricciones de arquitectura ⛔
.Restricciones

Restricciones
[options="header",cols="1,2"]
|===
|Restricción|Descripción
Expand Down
4 changes: 2 additions & 2 deletions docs/src/03_system_scope_and_context.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
ifndef::imagesdir[:imagesdir: ../images]

[[section-system-scope-and-context]]
== System Scope and Context 💭
== Alcance del sistema y Contexto 💭

=== Contexto de negocio 💰
image::Diagrama de contexto de negocio.jpg["Diagrama de contexto de negocio"]
Expand All @@ -10,7 +10,7 @@ En esta tabla se muestra el contexto de negocio de la aplicación. Las entradas
|===
|Agente externo|Entradas|Salidas
|Usuario|Datos registro, datos login, respuesta a cada pregunta|Preguntas, histórico
|Wikidata|Ítems(elementos) de Wikidata|Petición a la API de Wikidata
|Wikidata|Items (elementos) de Wikidata|Petición a la API de Wikidata
|===

=== Contexto técnico 🔧
Expand Down
28 changes: 9 additions & 19 deletions docs/src/04_solution_strategy.adoc
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
ifndef::imagesdir[:imagesdir: ../images]

[[section-solution-strategy]]
== Solution Strategy 📚
== Estrategia de Solución 📚

Decisiones tecnológicas 💻
=== Decisiones tecnológicas 💻

Hemos decidido realizar la parte de Front-End con React y la parte de Back-End con la estructura de los microservicios.
El despliegue se realizará a través de una máquina virtual de Azure, con ayuda de Docker y GitHub Actions.
Expand All @@ -29,22 +29,18 @@ unos test para asegurar el correcto despliegue del proyecto.
Decisiones de cómo llegar a las metas principales (En desarrollo):
[options="header",cols="1,2"]
|===
|Usabilidad
|
|Privacidad
|
|Mantenibilidad
|
|Eficiciencia
|
|Fiabilidad
|
| Decision | Como llegar
| Usabilidad | La aplicacion seguira los principios basicos de usabilidad y estos seran testeados en diferentes escenarios.
| Mantenibilidad | El sistema sera mantenible gracias a la mantenibilidad de sus subsistemas.
| Eficiciencia | Para que la aplicacion sea rapida se usaran la base de datos y no se tendran que generar datos en caliente que pueden perjudicar a los tiempo de carga.
| Fiabilidad | Todos los datos mostrados seran correctos y para esta comprobacion se usara la base de datos de Wikidata y sus entidades e ID's asociados.
| Privacidad | Los datos de los usuarios seran privados y no seran accesibles a ningun usuario.

|===



Decisiones organizativas 👥
=== Decisiones organizativas 👥

En la primera semana nos hemos dividido en dos equipos con el objetivo de tocar todas las partes del proyecto. La estructura de los equipos es la siguiente:

Expand Down Expand Up @@ -87,9 +83,3 @@ Se han creado el mismo número de Issues como apartados de la documentación hay

En cuanto al despliegue de la aplicación se van a arreglar los errores que salen en los test al intentar desplegarla, ya que se han cambiado
algunos valores predefinidos, por lo que los test también predefinidos fallarán.

.Further Information

See https://docs.arc42.org/section-4/[Solution Strategy] in the arc42 documentation.

****
62 changes: 26 additions & 36 deletions docs/src/05_building_block_view.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -3,32 +3,31 @@ ifndef::imagesdir[:imagesdir: ../images]
[[section-building-block-view]]


=== Building Block View EN desarollo 🗳️
== Vista de Bloque de Construcción (EN desarollo) 🗳️
image::Building Block View.jpg["Building Block View"]


=== Whitebox Overall System 📏
image::Whitebox Overall System.jpg["Whitebox Overall System"]
=== Sistema general de caja blanca 📏

Este diagrama del sistema general muestra una descripción del sistema con los componentes básicos.

[role="arc42help"]
image::Whitebox Overall System.jpg["Whitebox Overall System"]

Motivation::

Este diagrama del sistema general muestra una descripción del sistema con los componentes básicos.


Contained Building Blocks::
User Interface (Frontend)
Bloques de Construcción Contenidos::

Logica de Negocio(Backend)
* User Interface (Frontend)

Base datos
* Logica de Negocio(Backend)

* Base datos

API Preguntas
* API Preguntas


Important Interfaces::
Interfaces Importantes::


EN DESARROLLO.
Expand All @@ -37,48 +36,42 @@ EN DESARROLLO.
==== <Interfaz Gráfica>
[options="header",cols="1,2"]
|===
|Purpose/Responsibility
|La Interfaz de Usuario (UI) - Black Box 1 es responsable de proporcionar una interfaz interactiva y amigable para los usuarios finales. Sirve como el punto principal de interacción entre la aplicación y los usuarios, y facilita la experiencia general del usuario.
|Interface(s)
|Interfaz de Entrada del Usuario: Acepta la entrada del usuario a través de varios controles, como botones, formularios y campos de entrada.
| UI | Descripción
| Proposito / Responsabilidad | La Interfaz de Usuario (UI) - Black Box 1 es responsable de proporcionar una interfaz interactiva y amigable para los usuarios finales. Sirve como el punto principal de interacción entre la aplicación y los usuarios, y facilita la experiencia general del usuario.
| Interface(s) | Interfaz de Entrada del Usuario: Acepta la entrada del usuario a través de varios controles, como botones, formularios y campos de entrada.
Interfaz de Visualización: Renderiza y muestra información al usuario, incluyendo datos, mensajes y elementos visuales.
|Quality/Performance Characteristics
|Capacidad de Respuesta: La UI debe responder de manera rápida a las interacciones del usuario para garantizar una experiencia fluida y eficiente.
| Caracteristicas de Calidad / Rendimiento | Capacidad de Respuesta: La UI debe responder de manera rápida a las interacciones del usuario para garantizar una experiencia fluida y eficiente.
Accesibilidad: Adhiere a los estándares de accesibilidad para proporcionar una experiencia inclusiva para los usuarios.
|===



=== <Loggin>
_<Purpose/Responsibility>_

Su función principal es permitir el acceso a los usuarios a la aplicación , y guardar los resultados de estos.

_<black box template>_
EN DESARROLLO.


==== <Api de preguntas>
_<Purpose/Responsibility>_
Su propósito es proporcionar preguntas de manera dinámica al usuario.


_<black box template>_
EN DESARROLLO.

==== <Lógica de negocio >
_<Purpose/Responsibility>_
Se encargará de gestionar toda la programación necesaria de cara a la lógica.
Se encargará de gestionar toda la programación necesaria de cara a la lógica.

EN DESARROLLO.

==== <Base de datos>
_<Purpose/Responsibility>_
Dará almacenamiento al sistema de manera persistente y a los récords de los usuarios.

EN DESARROLLO.

=== Level 2

==== White Box _<Interfaz de usuario>_

_<white box Interfaz Usuario>_

En desarollo.

==== White Box _<Login>_
Expand All @@ -88,29 +81,26 @@ En desarollo.

==== White Box _<Api preguntas>_

En desarollo
En desarollo.

==== White Box _<Logica de negocio >_

En desarollo
En desarollo.


=== Level 3 En desarrollo.


==== White Box <_building block x.1_>



_<white box template>_
En desarollo.


==== White Box <_building block x.2_>

_<white box template>_

En desarollo.


==== White Box <_building block y.1_>

_<white box template>_
En desarollo.
57 changes: 17 additions & 40 deletions docs/src/06_runtime_view.adoc
Original file line number Diff line number Diff line change
@@ -1,58 +1,35 @@
ifndef::imagesdir[:imagesdir: ../images]

[[section-runtime-view]]
== Runtime View 📽️
== Vista de Ejecución 📽️


=== <Runtime Scenario 1> 1️⃣
=== Escenario de Ejecucion1️⃣

[plantuml,"Sequence diagram",png]
----
actor usuario
actor system
actor juego
database bbdd as "bbdd"
usuario -> system: inicio sesión
system --> usuario: pedir nombre/contraseña
usuario -> system: dar nombre/contraseña
system -> bbdd: verificar usuario
bbdd --> system: verificación correcta
system --> usuario: inicio sesión correcto
usuario -> system: acceder al juego
system -> juego: iniciar juego
juego --> system: generar pregunta/respuestas
system --> usuario: mostrar pregunta/respuestas
usuario -> system: responder
system -> juego: verificar respuesta
juego --> system: respuesta correcta
system --> usuario: correcta
system -> juego: generar siguiente pregunta/respuestas
----

image::Diagrama de secuencia plantuml.png["Diagrama de secuencia plantuml"]

Diagrama de secuencia con plantuml (se contempla sólo el uso correcto de la aplicación)


=== <Runtime Scenario 2> 2️⃣
=== Escenario de Ejecucion2️⃣

-> Diagrama de secuencia
-> Descripción: diagrama de los usos básicos en la aplicación, como inicio de sesión, empezar a jugar y contestar las preguntas.
-> Aspectos notables:
- El usuario tiene que estar autentificado en la aplicación para poder entrar al juego.
- Los usuarios estarán en una base de datos para recoger los datos de manera más sencilla.
- En el diagrama se pone la opción de respuesta correcta, pero si fuera incorrecta también se seguiría jugando.
*** Diagrama de secuencia
** Descripción: diagrama de los usos básicos en la aplicación, como inicio de sesión, empezar a jugar y contestar las preguntas.
** Aspectos notables:
* El usuario tiene que estar autentificado en la aplicación para poder entrar al juego.
* Los usuarios estarán en una base de datos para recoger los datos de manera más sencilla.
* En el diagrama se pone la opción de respuesta correcta, pero si fuera incorrecta también se seguiría jugando.

image::Digrama de secuencia Juego de preguntas.jpg["Diagrama de secuencia"]

=== <Runtime Scenario 3> 3️⃣

-> Diagrama de casos de uso
-> Descripción: diagrama básico de los distintos casos de uso que hay en el proyecto
-> Aspectos notables:
- El caso de uso de iniciar sesión del usuario está relacionado con el caso de uso de autentificar sesión del sistema,
- ya que para que el usuario pueda iniciar sesión debe de estar autentificado.
- Lo mismo ocurre con el caso de uso de contestar preguntas del usuario con el caso de uso de verificar respuestas del sistema,
- ya que para que el usuario pueda contestar preguntas, el sistema primero debe de verificar si dicha respuesta es correcta
- o no para pasar a la siguiente pregunta.
=== Escenario de Ejecucion3️⃣

*** Diagrama de casos de uso:
** Descripción: diagrama básico de los distintos casos de uso que hay en el proyecto
** Aspectos notables:
* El caso de uso de iniciar sesión del usuario está relacionado con el caso de uso de autentificar sesión del sistema, ya que para que el usuario pueda iniciar sesión debe de estar autentificado.
* Lo mismo ocurre con el caso de uso de contestar preguntas del usuario con el caso de uso de verificar respuestas del sistema, ya que para que el usuario pueda contestar preguntas, el sistema primero debe de verificar si dicha respuesta es correcta o no para pasar a la siguiente pregunta.

image::Diagrama de casos de uso para el juego de palabras.jpg["Diagrama de caso de uso"]
22 changes: 9 additions & 13 deletions docs/src/07_deployment_view.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -3,36 +3,32 @@ ifndef::imagesdir[:imagesdir: ../images]
[[section-deployment-view]]


== Deployment View 👀
== Vista de Despliegue 👀


=== Infrastructure Level 1 ☝️
=== Infraestructura Nivel 1 ☝️

EN DESARROLLO.

_**<Overview Diagram>**_ 🎀
==== Diagrama de Vista General 🎀

EN DESARROLLO.

Motivation 🤩::
==== Motivacion 🤩

1. Disponibilidad: Se busca una aplicación que sea capaz de prestar servicio de manera continuada, con resistencia a fallos.
2. Eficiencia: Se busca una aplicación que ofreza un rendimiento óptimo para la generación de preguntas desde dispositivos con pocas capacidades.
3. Cumplimiento de Requisitos Regulatorios: El uso de Wikidata como fuente de datos en nuestra aplicación está respaldado por la necesidad de cumplir con requisitos regulatorios y normativos específicos. Esta elección se basa en las siguientes consideraciones:



Quality and/or Performance Features 🎉::

1.Rendimiento: Se busca que la aplicación tenga un rendimiento óptimo en dispositivos móviles y tablets.
2.Adaptabilidad: La aplicación tiene que ser adaptable en diferentes dispositivos para así poder garantizar su uso.
* Caracteristicas de Calidad y/o Rendimiento:
** Rendimiento: Se busca que la aplicación tenga un rendimiento óptimo en dispositivos móviles y tablets.
** Adaptabilidad: La aplicación tiene que ser adaptable en diferentes dispositivos para así poder garantizar su uso.




EN DESARROLLO.

Mapping of Building Blocks to Infrastructure 📜::
==== Mapeado de Bloques de Construccion a Infraestructura 📜::

EN DESARROLLO.

Expand All @@ -42,6 +38,6 @@ EN DESARROLLO.
EN DESARROLLO.


==== _<Infrastructure Element 1>_
==== Elemento 1 de insfraestructura

EN DESARROLLO.
Loading

0 comments on commit 4e473fe

Please sign in to comment.