Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Interfaz base #78

Merged
merged 172 commits into from
Mar 4, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
172 commits
Select commit Hold shift + click to select a range
102c10e
Inicio 06_runtime_view
uo289097 Feb 5, 2024
deab241
Primera versión doc 04
UO287747 Feb 5, 2024
83a3a0b
Update 04_solution_strategy.adoc
UO287747 Feb 5, 2024
517128a
Update 04_solution_strategy.adoc
UO287747 Feb 7, 2024
5f68065
Scope and Context doc first version
UO287747 Feb 7, 2024
d619d29
Merge pull request #29 from Arquisoft/doc03_system_scope_and_context
UO287747 Feb 7, 2024
faf368e
Merge pull request #30 from Arquisoft/doc04_solution_strategy
UO287747 Feb 7, 2024
931dd15
Scope and Context doc First version
UO287747 Feb 7, 2024
1722708
Solution Strategy doc First version
UO287747 Feb 7, 2024
a90a659
Primera versión del 12_glossary.adoc
uo276976 Feb 8, 2024
6fdb4a2
Update primera versión 12_glossary.adoc
uo276976 Feb 8, 2024
6c21649
Update 01_introduction_and_goals.adoc
UO287687 Feb 11, 2024
3ecdc7b
Inicio 05_building_block_view.adoc
uo289097 Feb 11, 2024
5892bfe
Update 02_architecture_constraints.adoc
UO287687 Feb 11, 2024
6cfc665
Merge pull request #31 from Arquisoft/UO287687-02_architecture_constr…
UO287687 Feb 11, 2024
1585a29
Update 01_introduction_and_goals.adoc
UO287687 Feb 11, 2024
b6d9e92
Merge pull request #32 from Arquisoft/UO287687-01_introduction_and_go…
UO287687 Feb 11, 2024
8acb8d0
Tabla acabada en 05_building_block_view.adoc
uo289097 Feb 11, 2024
f77f732
Eliminada errata
uo289097 Feb 11, 2024
6057cec
Question generation service started
UO287687 Feb 11, 2024
d22e147
Update 12_glossary.adoc
uo276976 Feb 11, 2024
8e058c7
Update 11_technical_risks.adoc
uo276976 Feb 11, 2024
c54ec80
Level 1 motivation 05_building_block_view.adoc
uo289097 Feb 12, 2024
01368b1
Update 05_building_block_view.adoc
uo289097 Feb 12, 2024
5d9a8a6
Update 05_building_block_view.adoc
uo289097 Feb 12, 2024
d18b082
Cities questions added
UO287687 Feb 12, 2024
f13fecd
Update 05_building_block_view.adoc
uo289097 Feb 12, 2024
25c9350
Template "city in country" added
UO287687 Feb 12, 2024
f6b1619
Refactor and template "higher city"
UO287687 Feb 12, 2024
5d707c3
Error in cities queries solved
UO287687 Feb 12, 2024
07541a0
Error solved in cities queries
UO287687 Feb 12, 2024
bcba025
Improvement by preloading data questions
UO287687 Feb 12, 2024
ba8768b
Merge pull request #33 from Arquisoft/question_generator
UO287687 Feb 12, 2024
4c7f286
First prototype frontend
UO287747 Feb 12, 2024
4f1fdbc
System Scope and Context Doc First version
UO287747 Feb 15, 2024
8f3d61b
Solution Strategy Doc First version
UO287747 Feb 15, 2024
68fb4ca
Merge pull request #35 from Arquisoft/UO276839-Develop
uo276839 Feb 16, 2024
16b8f5c
Update 05_building_block_view.adoc
uo289097 Feb 17, 2024
b5b4749
Update 05_building_block_view.adoc
uo289097 Feb 17, 2024
3a43724
Update 05_building_block_view.adoc
uo289097 Feb 17, 2024
988e118
Update 05_building_block_view.adoc
uo289097 Feb 17, 2024
b3281a9
Update 05_building_block_view.adoc
uo289097 Feb 17, 2024
9825ab3
Update 05_building_block_view.adoc
uo289097 Feb 17, 2024
44f5546
Update 05_building_block_view.adoc
uo289097 Feb 18, 2024
84f5bb8
Update 05_building_block_view.adoc
uo289097 Feb 18, 2024
146b257
Update 05_building_block_view.adoc
uo289097 Feb 18, 2024
f453af2
Merge pull request #37 from Arquisoft/doc05_builiding_block_view
uo289097 Feb 18, 2024
30637f5
Update 06_runtime_view.adoc
uo289097 Feb 18, 2024
c121049
Update 06_runtime_view.adoc
uo289097 Feb 18, 2024
2a56e7a
Update 06_runtime_view.adoc
uo289097 Feb 18, 2024
b72edd5
Update 06_runtime_view.adoc
uo289097 Feb 18, 2024
f35ef8d
Update 06_runtime_view.adoc
uo289097 Feb 18, 2024
706f329
Update 06_runtime_view.adoc
uo289097 Feb 18, 2024
6ae7bcd
Update 06_runtime_view.adoc
uo289097 Feb 18, 2024
48cc104
Update 06_runtime_view.adoc
uo289097 Feb 18, 2024
25d8581
Merge pull request #39 from Arquisoft/doc06_runtime_view
uo289097 Feb 18, 2024
53c2b16
Update 11_technical_risks.adoc
uo276976 Feb 18, 2024
f332b8d
Update 12_glossary.adoc
uo276976 Feb 18, 2024
6594d7a
Docker volumes
UO287747 Feb 18, 2024
f72958e
Update 07_deployment_view.adoc
AlbertoFAz Feb 19, 2024
bc7957b
Update 08_concepts.adoc
AlbertoFAz Feb 19, 2024
5f12db5
Merge pull request #43 from Arquisoft/UO179637
UO287747 Feb 19, 2024
a6f8a50
Merge pull request #45 from Arquisoft/Documentation
UO287747 Feb 19, 2024
bb07286
Update 09_architecture_decisions.adoc
uo276839 Feb 19, 2024
903f658
Update 03_system_scope_and_context.adoc
UO287687 Feb 19, 2024
b8555a2
Fix quality tree image
uo276839 Feb 19, 2024
29002ad
Update 03_system_scope_and_context.adoc
UO287747 Feb 19, 2024
e0032a9
Update 04_solution_strategy.adoc
UO287747 Feb 19, 2024
6fc24bd
Update 05_building_block_view.adoc
uo289097 Feb 19, 2024
1d4444c
Merge pull request #46 from Arquisoft/Documentation
UO287747 Feb 19, 2024
7957d24
Update 04_solution_strategy.adoc
UO287747 Feb 19, 2024
08429dc
Merge pull request #47 from Arquisoft/Documentation
UO287747 Feb 19, 2024
764f8f3
Update 09_architecture_decisions.adoc
uo276839 Feb 19, 2024
f487326
Update 04_solution_strategy.adoc
UO287687 Feb 19, 2024
f71f73c
Update 10_quality_requirements.adoc
uo276839 Feb 19, 2024
8865a13
Merge pull request #48 from Arquisoft/Documentation
UO287687 Feb 19, 2024
896c32c
Update 03_system_scope_and_context.adoc
UO287747 Feb 19, 2024
c5ab4bd
Update 03_system_scope_and_context.adoc
UO287747 Feb 19, 2024
75bd8f6
Update 07_deployment_view.adoc
UO287687 Feb 19, 2024
767ea4c
Update 03_system_scope_and_context.adoc
UO287747 Feb 19, 2024
8079398
Update 08_concepts.adoc
UO287687 Feb 19, 2024
191cc12
Update 10_quality_requirements.adoc
UO287687 Feb 19, 2024
3c6d43a
Update 11_technical_risks.adoc
UO287687 Feb 19, 2024
18eb3f1
Update 05_building_block_view.adoc
uo289097 Feb 19, 2024
2a28f8d
Add files via upload
uo289097 Feb 19, 2024
d63547b
Update 05_building_block_view.adoc
uo289097 Feb 19, 2024
13f0652
Update 03_system_scope_and_context.adoc
UO287747 Feb 19, 2024
4edd7f0
Add files via upload
UO287747 Feb 19, 2024
42a994c
Update 03_system_scope_and_context.adoc
UO287747 Feb 19, 2024
dec60e4
Merge branch 'master' into Documentation
uo289097 Feb 19, 2024
fcc6e1a
Merge pull request #50 from Arquisoft/Documentation
uo289097 Feb 19, 2024
995fa92
Test interfaz de la aplicación
UO287747 Feb 19, 2024
b8b881f
Primera versión menú interactivo
UO287747 Feb 19, 2024
916ea13
Assets para pull request.
UO287747 Feb 19, 2024
508fc1f
Fix login test
UO287747 Feb 19, 2024
78032f0
Merge branch 'UO287747-Develop' of https://github.com/Arquisoft/wiq_e…
UO287747 Feb 19, 2024
c838458
Fix Login test
UO287747 Feb 19, 2024
44e89a9
Create app tests
UO287747 Feb 19, 2024
fe1585b
Another test fix
UO287747 Feb 19, 2024
ca93378
Test fix :/
UO287747 Feb 19, 2024
22ba60d
Merge pull request #53 from Arquisoft/UO287747-Develop
UO287687 Feb 19, 2024
178c7f1
Changes on docker-compose file
UO287687 Feb 21, 2024
68a8770
Merge pull request #54 from Arquisoft/question_generator
UO287747 Feb 21, 2024
302bdb4
access to the question generation service from the gateway service
UO287687 Feb 21, 2024
d891e57
Merge pull request #57 from Arquisoft/question_generator
UO287747 Feb 21, 2024
d622297
Added first version of Participation and Participation test
uo276976 Feb 22, 2024
1b7c693
Added first version of question model
uo276976 Feb 22, 2024
b21f986
Added first version of question service
uo276976 Feb 22, 2024
b359c9b
Merge branch 'Develop' into FeatureQuestions
UO287687 Feb 22, 2024
24a591a
docker-compose añadido question service
uo276976 Feb 22, 2024
d7fa19f
arreglado fallo question-service, nombre de variable
uo276976 Feb 22, 2024
29d1b6a
Merge branch 'Develop' into FeatureQuestions
UO287687 Feb 22, 2024
36ecadb
question service funcionando por primera vez. Primera version de sus …
uo276976 Feb 22, 2024
cf69f42
Question generation test added
UO287687 Feb 22, 2024
2fe4607
Question generation tests added
UO287687 Feb 22, 2024
d134a7e
Tests updated
UO287687 Feb 23, 2024
0119bab
Merge branch 'Develop' into FeatureQuestions
UO287687 Feb 23, 2024
cbde6cb
Tests timeout changed
UO287687 Feb 23, 2024
4e6cbf1
Error in timeout solved
UO287687 Feb 23, 2024
20e9124
Another timeout change
UO287687 Feb 23, 2024
de57f9e
/health test added and others commented
UO287687 Feb 23, 2024
777ee13
Control exceptions on question generation service
UO287687 Feb 23, 2024
f355e05
decommented test
UO287687 Feb 23, 2024
c42435f
Tests workflow updated
UO287687 Feb 23, 2024
141a9d0
package.json updated
UO287687 Feb 23, 2024
b7aee22
build.yml updated
UO287687 Feb 23, 2024
7b05f3c
Test fix
UO287687 Feb 23, 2024
08a31ba
Merge pull request #60 from Arquisoft/FeatureQuestions
UO287747 Feb 23, 2024
1ab8df1
Merge pull request #61 from Arquisoft/Develop
UO287747 Feb 26, 2024
434d5d0
Categories for question generation
UO287687 Feb 26, 2024
ef1915a
Sports category added
UO287687 Feb 26, 2024
c53eac5
Geography category added
UO287687 Feb 26, 2024
aa15a82
Questions interface
UO287747 Feb 26, 2024
6411b5e
Question generation tests updated
UO287687 Feb 26, 2024
1def654
i18n added to question generator
UO287687 Feb 26, 2024
7970861
i18n and filters support added to gateway service
UO287687 Feb 26, 2024
cad75f8
New tests added to gateway service
UO287687 Feb 26, 2024
ad207c1
release.yml updated
UO287687 Feb 26, 2024
3c92608
Funcionalidad preguntas
UO287747 Feb 26, 2024
5596952
Interfaz preguntas actualizada
UO287747 Feb 27, 2024
aff7be8
Merge pull request #66 from Arquisoft/question_generator
UO287747 Feb 27, 2024
b5cc920
Added gameservice
uo276976 Feb 28, 2024
1c39333
Mejora interfaz global de la aplicación
UO287747 Feb 28, 2024
0f1593d
Actualización de dependencias
UO287747 Feb 28, 2024
8195ff0
Test fix
UO287747 Feb 28, 2024
72d14e6
Test fix
UO287747 Feb 28, 2024
f71c0cd
Otro test fix
UO287747 Feb 28, 2024
16e05fb
Test fix
UO287747 Feb 28, 2024
5db2e66
Test fix
UO287747 Feb 28, 2024
85964f5
Nuevos test
UO287747 Feb 28, 2024
d7c9d28
Test fix
UO287747 Feb 28, 2024
5315046
Test fix Nav
UO287747 Feb 28, 2024
4fc1342
Nuevos test
UO287747 Feb 29, 2024
d4edf15
Update question-service.test.js
uo276976 Feb 29, 2024
c590478
Update question-service.test.js
uo276976 Feb 29, 2024
85f044c
Nuevos test
UO287747 Feb 29, 2024
19182b0
Fix test
UO287747 Feb 29, 2024
b50fa18
Test fix
UO287747 Feb 29, 2024
4c5f51d
Nuevos test
UO287747 Mar 3, 2024
c01b2d0
Fix test
UO287747 Mar 3, 2024
130f4a9
Cmabio en el sort de las preguntas
UO287747 Mar 3, 2024
15562bc
Otro commit más...
UO287747 Mar 3, 2024
593f92c
Merge pull request #69 from Arquisoft/UO287747-Develop
UO287687 Mar 3, 2024
a6c6e14
Merge branch 'master' into Develop
UO287687 Mar 3, 2024
5830e3a
Error fixed
UO287687 Mar 3, 2024
0f0b0cd
Error fixed in deployment
UO287687 Mar 4, 2024
1f2be01
updated workflow docs to add new components test
uo276976 Mar 4, 2024
4637164
Merge branch 'Develop'
uo276976 Mar 4, 2024
05792e2
Another error solved in deployment
UO287687 Mar 4, 2024
0395bc5
update release.yml
uo276976 Mar 4, 2024
48250a9
Merge branch 'Develop' of https://github.com/Arquisoft/wiq_es3b into …
uo276976 Mar 4, 2024
d174e49
game service test added to develop
uo276976 Mar 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,16 @@ jobs:
node-version: 20
- run: npm --prefix users/authservice ci
- run: npm --prefix users/userservice ci
- run: npm --prefix question_generator ci
- run: npm --prefix questionservice ci
- run: npm --prefix gameservice ci
- run: npm --prefix gatewayservice ci
- run: npm --prefix webapp ci
- run: npm --prefix users/authservice test -- --coverage
- run: npm --prefix users/userservice test -- --coverage
- run: npm --prefix gameservice test -- --coverage
- run: npm --prefix questionservice test -- --coverage
- run: npm --prefix question_generator test -- --coverage
- run: npm --prefix gatewayservice test -- --coverage
- run: npm --prefix webapp test -- --coverage
- name: Analyze with SonarCloud
Expand Down
62 changes: 61 additions & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,16 @@ jobs:
node-version: 20
- run: npm --prefix users/authservice ci
- run: npm --prefix users/userservice ci
- run: npm --prefix question_generator ci
- run: npm --prefix questionservice ci
- run: npm --prefix gameservice ci
- run: npm --prefix gatewayservice ci
- run: npm --prefix webapp ci
- run: npm --prefix users/authservice test -- --coverage
- run: npm --prefix users/userservice test -- --coverage
- run: npm --prefix questionservice test -- --coverage
- run: npm --prefix question_generator test -- --coverage
- run: npm --prefix gameservice test -- --coverage
- run: npm --prefix gatewayservice test -- --coverage
- run: npm --prefix webapp test -- --coverage
- name: Analyze with SonarCloud
Expand All @@ -35,6 +41,9 @@ jobs:
node-version: 20
- run: npm --prefix users/authservice install
- run: npm --prefix users/userservice install
- run: npm --prefix question_generator install
- run: npm --prefix questionservice install
- run: npm --prefix gameservice install
- run: npm --prefix gatewayservice install
- run: npm --prefix webapp install
- run: npm --prefix webapp run build
Expand Down Expand Up @@ -93,6 +102,57 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }}
registry: ghcr.io
workdir: users/userservice
docker-push-questiongenerationservice:
name: Push question generation service Docker Image to GitHub Packages
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
needs: [e2e-tests]
steps:
- uses: actions/checkout@v4
- name: Publish to Registry
uses: elgohr/Publish-Docker-Github-Action@v5
with:
name: arquisoft/wiq_es3b/question_generator
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry: ghcr.io
workdir: question_generator
docker-push-questionservice:
name: Push question service Docker Image to GitHub Packages
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
needs: [e2e-tests]
steps:
- uses: actions/checkout@v4
- name: Publish to Registry
uses: elgohr/Publish-Docker-Github-Action@v5
with:
name: arquisoft/wiq_es3b/questionservice
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry: ghcr.io
workdir: questionservice
docker-push-gameservice:
name: Push game service Docker Image to GitHub Packages
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
needs: [e2e-tests]
steps:
- uses: actions/checkout@v4
- name: Publish to Registry
uses: elgohr/Publish-Docker-Github-Action@v5
with:
name: arquisoft/wiq_es3b/gameservice
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry: ghcr.io
workdir: gameservice
docker-push-gatewayservice:
name: Push gateway service Docker Image to GitHub Packages
runs-on: ubuntu-latest
Expand All @@ -113,7 +173,7 @@ jobs:
deploy:
name: Deploy over SSH
runs-on: ubuntu-latest
needs: [docker-push-userservice,docker-push-authservice,docker-push-gatewayservice,docker-push-webapp]
needs: [docker-push-userservice,docker-push-authservice,docker-push-questiongenerationservice,docker-push-questionservice,docker-push-gameservice,docker-push-gatewayservice,docker-push-webapp]
steps:
- name: Deploy over SSH
uses: fifsky/ssh-action@master
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ The deploy action is the following:
deploy:
name: Deploy over SSH
runs-on: ubuntu-latest
needs: [docker-push-userservice,docker-push-authservice,docker-push-gatewayservice,docker-push-webapp]
needs: [docker-push-userservice,docker-push-authservice,docker-push-gatewayservice,docker-push-webapp,docker-push-questiongenerationservice, docker-push-questionservice]
steps:
- name: Deploy over SSH
uses: fifsky/ssh-action@master
Expand Down
49 changes: 48 additions & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,44 @@ services:
environment:
MONGODB_URI: mongodb://mongodb:27017/userdb

questiongenerationservice:
container_name: questiongenerationservice-${teamname:-defaultASW}
image: ghcr.io/arquisoft/wiq_es3b/questiongenerationservice:latest
profiles: ["dev", "prod"]
build: ./question_generator
ports:
- "8003:8003"
networks:
- mynetwork

questionservice:
container_name: questionservice-${teamname:-defaultASW}
image: ghcr.io/arquisoft/wiq_es3b/questionservice:latest
profiles: ["dev", "prod"]
build: ./questionservice
depends_on:
- mongodb
ports:
- "8004:8004"
networks:
- mynetwork
environment:
MONGODB_URI: mongodb://mongodb:27017/questionsdb

gameservice:
container_name: gameservice-${teamname:-defaultASW}
image: ghcr.io/arquisoft/wiq_es3b/gameservice:latest
profiles: ["dev", "prod"]
build: ./gameservice
depends_on:
- mongodb
ports:
- "8005:8005"
networks:
- mynetwork
environment:
MONGODB_URI: mongodb://mongodb:27017/gamesdb

gatewayservice:
container_name: gatewayservice-${teamname:-defaultASW}
image: ghcr.io/arquisoft/wiq_es3b/gatewayservice:latest
Expand All @@ -48,13 +86,19 @@ services:
- mongodb
- userservice
- authservice
- questiongenerationservice
- questionservice
- gameservice
ports:
- "8000:8000"
networks:
- mynetwork
environment:
AUTH_SERVICE_URL: http://authservice:8002
USER_SERVICE_URL: http://userservice:8001
QUESTION_GENERATION_SERVICE_URL: http://questiongenerationservice:8003
QUESTIONS_SERVICE_URL: http://questionservice:8004
GAME_SERVICE_URL: http://gameservice:8005

webapp:
container_name: webapp-${teamname:-defaultASW}
Expand All @@ -64,7 +108,10 @@ services:
depends_on:
- gatewayservice
ports:
- "3000:3000"
- "3000:3000"
#volumes:
#- ./webapp:/app


prometheus:
image: prom/prometheus
Expand Down
Binary file added docs/images/GameView.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/StartView.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/UserView.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/context.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/deployment.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/level1.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/level2.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/level3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
101 changes: 22 additions & 79 deletions docs/src/01_introduction_and_goals.adoc
Original file line number Diff line number Diff line change
@@ -1,93 +1,36 @@
ifndef::imagesdir[:imagesdir: ../images]

[[section-introduction-and-goals]]
== Introduction and Goals
WIQ is a web application developed by HappySw that allows users to play an online quiz game.

[role="arc42help"]
****
Describes the relevant requirements and the driving forces that software architects and development team must consider.
These include

* underlying business goals,
* essential features,
* essential functional requirements,
* quality goals for the architecture and
* relevant stakeholders and their expectations
****
The questions are automatically generated from Wikidata data and can be grouped by topic. Users can get a prize for each correctly answered question within a limited time and can also check their historical results in the game.

=== Requirements Overview
The main functional requirements to be met are:

[role="arc42help"]
****
.Contents
Short description of the functional requirements, driving forces, extract (or abstract)
of requirements. Link to (hopefully existing) requirements documents
(with version number and information where to find it).

.Motivation
From the point of view of the end users a system is created or modified to
improve support of a business activity and/or improve the quality.

.Form
Short textual description, probably in tabular use-case format.
If requirements documents exist this overview should refer to these documents.

Keep these excerpts as short as possible. Balance readability of this document with potential redundancy w.r.t to requirements documents.


.Further Information

See https://docs.arc42.org/section-1/[Introduction and Goals] in the arc42 documentation.

****
* Users must be able to register
* Users must be able to consult their participation history
* Each question must have one correct answer and several incorrect answers.
* Questions must have a time limit to answer them
* Access to the user's data must be allowed through an API.
* Access to the information of the generated questions must be allowed through an API.

=== Quality Goals

[role="arc42help"]
****
.Contents
The top three (max five) quality goals for the architecture whose fulfillment is of highest importance to the major stakeholders.
We really mean quality goals for the architecture. Don't confuse them with project goals.
They are not necessarily identical.

Consider this overview of potential topics (based upon the ISO 25010 standard):

image::01_2_iso-25010-topics-EN.drawio.png["Categories of Quality Requirements"]

.Motivation
You should know the quality goals of your most important stakeholders, since they will influence fundamental architectural decisions.
Make sure to be very concrete about these qualities, avoid buzzwords.
If you as an architect do not know how the quality of your work will be judged...

.Form
A table with quality goals and concrete scenarios, ordered by priorities
****
The quality goals in order of priority are as follows:
[options="header",cols="1,2"]
|===
|Quality goal|Description
|Usability|The application must be easy to understand and use
|Performance efficiency|Question generation must be efficient
|Security|The confidentiality and integrity of user data must be ensured
|Maintainability|The application must be testable and easily modifiable
|===

=== Stakeholders

[role="arc42help"]
****
.Contents
Explicit overview of stakeholders of the system, i.e. all person, roles or organizations that

* should know the architecture
* have to be convinced of the architecture
* have to work with the architecture or with code
* need the documentation of the architecture for their work
* have to come up with decisions about the system or its development

.Motivation
You should know all parties involved in development of the system or affected by the system.
Otherwise, you may get nasty surprises later in the development process.
These stakeholders determine the extent and the level of detail of your work and its results.

.Form
Table with role names, person names, and their expectations with respect to the architecture and its documentation.
****

[options="header",cols="1,2,2"]
|===
|Role/Name|Contact|Expectations
| _<Role-1>_ | _<Contact-1>_ | _<Expectation-1>_
| _<Role-2>_ | _<Contact-2>_ | _<Expectation-2>_
| Teachers | They interact with the development team and review the project to detect and correct errors| The application must meet all functional requirements and must follow the quality goals
| RTVE (client) | Company commissioning the development of the application | The company hopes that the application will be easy to use for all users and that it will be a good version of its "Saber y Ganar" programme
| Development Team| They are the creators of the project | They must develop an application that meets all the requirements and is attractive in order to attract as many users as possible
|Users|End-users who will interact with the application|They expect it to be user-friendly, attractive and similar to the programme it imitates ("Saber y Ganar")
|===
46 changes: 23 additions & 23 deletions docs/src/02_architecture_constraints.adoc
Original file line number Diff line number Diff line change
@@ -1,27 +1,27 @@
ifndef::imagesdir[:imagesdir: ../images]

[[section-architecture-constraints]]
== Architecture Constraints

=== Technical constraints
[options="header",cols="1,2"]
|===
|Constraint|Description
|Wikidata|The generation of the questions should be done automatically with the data from Wikidata
|Web access|The application must be accessible via the web
|Git and GitHub|Version control and project tracking will be done using Git. GitHub is used to remotely store the repositories
|===
=== Organizational constraints
[options="header",cols="1,2"]
|===
|Constraint|Description
|Team|The development team is composed of 6 people
|Repository control|The repository has a "main" and a "develop" branch and numerous "feature" branches where new functionalities are developed
|Meetings|At least one weekly team meeting is held to maintain proper organisation
|===
=== Conventions
[options="header",cols="1,2"]
|===
|Convention|Description
|Arc42|The arc42 template is used in the documentation
|AsciiDoc|The documentation is done using AsciiDoc as markup language
|===

[role="arc42help"]
****
.Contents
Any requirement that constraints software architects in their freedom of design and implementation decisions or decision about the development process. These constraints sometimes go beyond individual systems and are valid for whole organizations and companies.

.Motivation
Architects should know exactly where they are free in their design decisions and where they must adhere to constraints.
Constraints must always be dealt with; they may be negotiable, though.

.Form
Simple tables of constraints with explanations.
If needed you can subdivide them into
technical constraints, organizational and political constraints and
conventions (e.g. programming or versioning guidelines, documentation or naming conventions)


.Further Information

See https://docs.arc42.org/section-2/[Architecture Constraints] in the arc42 documentation.

****
Loading
Loading