diff --git a/images/Context Diagram.png b/images/Context Diagram.png index 167280f..6371b3c 100644 Binary files a/images/Context Diagram.png and b/images/Context Diagram.png differ diff --git a/images/Generated Questions API (WhiteBox).png b/images/Generated Questions API (WhiteBox).png deleted file mode 100644 index 4509c81..0000000 Binary files a/images/Generated Questions API (WhiteBox).png and /dev/null differ diff --git a/images/Whitebox overall system.png b/images/Whitebox overall system.png index c3889ef..73396d1 100644 Binary files a/images/Whitebox overall system.png and b/images/Whitebox overall system.png differ diff --git a/images/questions API (WhiteBox).png b/images/questions API (WhiteBox).png new file mode 100644 index 0000000..627739c Binary files /dev/null and b/images/questions API (WhiteBox).png differ diff --git a/index.html b/index.html index 137390a..9321306 100644 --- a/index.html +++ b/index.html @@ -480,9 +480,8 @@
The functional requirements have been grouped into the different microservices the web application will have.
+The functional requirements are the following: +* The application must be accesible through the web +* Users must be able to register into the system +* Users must be able to see data about their past games (score, correct/wrong answers, number of questions answered…) +* Questions must be automatically generated from Wikidata. +* Questions must be answered before some specific time. +* Each question must have one right answer and several incorrect ones or distractors. Both the right answer and the distractors should be automatically generated. +* The system must give access to the information about the users through an API. +* The system must give access to information about the generated questions through an API.
+The functional requirements have been grouped into the different microservices the web application will have:
Register.
-Delete the account.
-Update the account.
-Recover the password.
+Register
Log in.
-Log out.
+Log in
A user can retrieve the following information from the User service
+A user can retrieve the following information from the Ranking service
Name.
+Points scored
Email.
+Number of questions answered
Profile picture.
+Correct answers
Questions answered.
+Incorrect answers
The system must be able to manage the user’s access to the system.
+The system must be able to manage the user’s access to the system
The Question service retrieves questions generated from wikidata.
-A user can retrieve the following information from the Question service
-Select a category.
-Select a difficulty.
-Select a question.
-Select an answer.
-Questions must be stored in a database.
-The database used is MongoDB.
-Questions are classified by
+The question service provides the following functionallities
Category.
+Generate a random question from a given category with 4 options
Difficulty.
+Validate the answer and update the score accordingly
The questions should be selected randomly.
-Privacy (by SOLID)
The web application must be able to save in a secure and persistence way.
GitHub
It will be used to coordinate the projects work, tracks changes and manage workflow.
Time
The web application will be developed along this course, that means our time is limited and we require an efficient time management.
Documentation
In order to keep it clean, efficient and simple, it will follow Arc42 method and be deployed to be able to look at it at any time.
Documentation
In order to keep it clean, efficient and simple it will follow Arc42 method.
Deployment
The project has to be deployed when a release is made
Time
Since the project will be done in this semester our time is limited, and we need to stick to the deadlines and manage our time in an efficient way.
Code
The code requires a small description of what it does. In addition, we must build it in a clean way and that is easy to expand and can adapt to changes in an easy way.
Testing
We need to have a good coverage of unitary testing (80%+) and some acceptance testing covering all the webapp functionallity
Test
The test has to be correctly tested in order to accomplish the desired behavior.
Node.js
Open-source, cross-platform JavaScript runtime environment and library for running web applications outside the client’s browser.
Ruby
Dynamic, open source programming language with a focus on simplicity and productivity.
JavaScript
Programming language that allows you to implement complex features on web page.
Wikidata
It has to be used for the question generation.
The player is the only actor in the main system, which is the one that makes use of the different APIs that will be described later. +The player can initially interact with the authentication system to either register or login and then, by playing the game, the question +service will be triggered for either generating the questions or validating the player’s answer. The player can also access data about +the past games of all users in a ranking.
+Manages data of users, both registration/login data and their past scores |
|||
Generated Questions API |
+questions API |
Manages generation of questions from Wikidata |
Main window in which questions are shown and can be answered by the player. The latter can also see past scores. |
Generated Questions API |
-In charge of generating the questions |
+questions API |
+In charge of generating the questions and validating the answer |
UsersAPI |
@@ -1343,7 +1311,11 @@