Skip to content

Commit

Permalink
Merge pull request #42 from Arquisoft/Issue#28-write-documentation-fo…
Browse files Browse the repository at this point in the history
…r-cross-cutting-concepts

Issue#28-write-documentation-for-cross-cutting-concepts
  • Loading branch information
Rolitoansu authored Feb 23, 2025
2 parents 01b67b8 + 6e81dca commit 54ed6dc
Showing 1 changed file with 20 additions and 10 deletions.
30 changes: 20 additions & 10 deletions docs/src/08_concepts.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ They can include many different topics, such as
* rules for using specific technology
* principal, often technical decisions of an overarching (= cross-cutting) nature
* implementation rules
All the documentation added is purely introductory, it doesn't represent final decisions as the aplication isn't developed yet.
.Motivation
Concepts form the basis for _conceptual integrity_ (consistency, homogeneity) of the architecture.
Expand Down Expand Up @@ -57,18 +57,28 @@ See https://docs.arc42.org/section-8/[Concepts] in the arc42 documentation.
****
endif::arc42help[]

=== _<Concept 1>_

_<explanation>_

|===
| *Class* | *Explanation*
| Question | The model of the questions stores both right and wrong answers.
| User | The people using the application, they have statistics and take part in a ranking to compete.
| Answer | Models each possible answer, created to reuse answers that are common to different questions, as well as distractors.
| Game | It is created when the user starts a game and includes the rounds that the user has to answer.
| Statistics | Stores information about the amount of correct and wrong answers that each user has answered.
| QuestionCategory | Category for the question
| AnswerCategory | Category of the answer (used for getting distractors)
|===

=== Architecture and design patterns:

=== _<Concept 2>_
=== Safety and Security concepts:
Passwords must be hashed both in client and in API to ensure as much security as possible.An example to do it could be using SpringBoot3

_<explanation>_
=== Development concepts:

...
=== User Experience:
As this is a game, the focus must be in our users so players can have a good experience, for achieving this, the response time should be less than 1,5 seconds and the interfaces should be intuitive and easy to learn.

=== _<Concept n>_
=== Robustness:
It is desired to make the application as independant as possible from Wikidata. This way, if Wikidata is down our application can still manage to be available for our users.

_<explanation>_
=== Under-the-hood:

0 comments on commit 54ed6dc

Please sign in to comment.