Professional Documents
Culture Documents
Supervisor
Ms. Gulmina Rextina
Co-Supervisor
Prof. Dr. Sohail Asghar
The candidate confirms that the work submitted is their own and appropriate
credit has been given where reference has been made to the work of others.
1
COMSATS University, Islamabad Pakistan
A project presented to
COMSATS University, Islamabad
In partial fulfillment
of the requirement for the degree of
By
2
DECLARATION
We hereby declare that this software, neither whole nor as a part has been copied out from any
source. It is further declared that we have developed this software and accompanied report
entirely on the basis of our personal efforts. If any part of this project is proved to be copied out
from any source or found to be reproduction of some other, we will stand by the consequences.
No Portion of the work presented has been submitted of any application for any other degree or
qualification of this or any other university or institute of learning.
--------------------------- ---------------------------
3
CERTIFICATE OF APPROVAL
It is to certify that the final year project of BS (SE) “Game Based Dyslexia and ADHD
Diagnosis using ML” was developed by Shazif Rizwan CIIT/SP19-BSE-105/ISB and Daniyal
Haider CIIT/SP19-BSE-025/ISB under the supervision of “Ms. Gulmina Rextina” and co
supervisor “Prof. Dr. Sohail Asghar” and that in his opinion; it is fully adequate, in scope and
quality for the degree of Bachelors of Science in Software Engineering.
---------------------------------------
Supervisor
---------------------------------------
External Examiner
---------------------------------------
Head of Department
(Department of Computer Science)
4
Executive Summary
Traditionally dyslexia are diagnosed using lengthy assessment and require the presence of an
expert. These assessments can be expensive and may for some people it would be difficult to
approach them. Adolescent dyslexia in children, such as five-year-old’s who can't quite learn
their letters, develops into a six-year-old who can't match sounds to letters. By the age of 11, the
kid who would rather hide in the bathroom than read aloud in class. The excruciatingly slow
reading makes it nearly impossible for them to complete important tests in the allotted time at the
age of 18, potentially jeopardizing their college and career prospects. Dyslexia and ADHD
frequently coexist. Untreated ADHD can impose a significant psychological, financial,
academic, and social burden on the individual and the community, emphasizing the importance
of properly diagnosing and treating the disorder.
Our proposed solution will facilitate users get an early and accessible diagnosis for dyslexia and
ADHD at home. This application will help avoid the stigma surrounding the diagnosis of either
of these conditions such as ADHD can seem like a person is not trying hard enough. The
application will help to provide an initial diagnosis of dyslexia especially in young children as
symptoms are not easily recognizable at this age. The application will capture dynamic reading
characteristics such as reaction speed, reading time, and so on. The application will diagnose the
severity of dyslexia and will be able to tell the dominant ADHD factor such as attention-deficit
or hyper-active.
Our app is to facilitate users get a quick and early diagnosis for dyslexia along with ADHD as an
early identification of these disorders is critical to the containment of these disorders. Our
proposed game-based diagnosis system will effectively diagnose dyslexia, dyscalculia and
ADHD especially focusing on children
5
Acknowledgement
All praise is to Almighty Allah who bestowed upon us a minute portion of His boundless
knowledge by virtue of which we were able to accomplish this challenging task.
We are greatly indebted to our project supervisor “Ms. Gulmina Rextina” and our Co-Supervisor
“Prof. Dr. Sohail Asghar”. Without their personal supervision, advice and valuable guidance,
completion of this project would have been doubtful. We are grateful to them for their
encouragement and continual help during this work.
And we are also thankful to our parents and family who have been a constant source of
encouragement for us and brought us with the values of honesty & hard work.
--------------------------- ---------------------------
6
Abbreviations
7
Table of Contents
Contents
1 Introduction............................................................................................................................11
5.1 Algorithm...................................................................................................................................126
5.2 External APIs/SDKs..................................................................................................................130
6. Testing and Evaluation........................................................................................................130
7.1 Conclusion.................................................................................................................................171
7.2 Future Work...............................................................................................................................171
8
8. References............................................................................................................................172
9
List of Figures
Figure 1 Admin Panel Use Case....................................................................................................18
Figure 2 User Profile Management Usecase.................................................................................19
Figure 3 Reports and Suggestion Usecase Diagram......................................................................20
Figure 4 Use case diagram for main interface...............................................................................21
Figure 5 Usecase diagram for Dyslexia game...............................................................................22
Figure 6 Use Case diagram for Dyscalculia Game........................................................................23
Figure 7 Usecase diagram for ADHD...........................................................................................24
Figure 8 : Client-Server Architecture Diagram...........................................................................100
Figure 9 Activity Diagram Profile Management.........................................................................101
Figure 10 Activity Diagram Patient History Record...................................................................102
Figure 11 Activity Diagram Dyslexia Game: Preschool.............................................................103
Figure 12 Activity Diagram Dyslexia Game: Learners...............................................................104
Figure 13 Activity Diagram Dyslexia Game: Elementary..........................................................105
Figure 14 Activity Diagram of Dyscalculia Game: Preschool....................................................106
Figure 15 Activity Diagram of Dyscalculia Game: Learners......................................................107
Figure 16 Activity Diagram of Dyscalculia Game: Elementary.................................................108
Figure 17 Activity Diagram of ADHD Game............................................................................109
Figure 18 Class Diagram.............................................................................................................110
Figure 11 Sequence diagram: Profile Management.....................................................................111
Figure 12 Sequence diagram: Dyslexia Preschool......................................................................112
Figure 13 Sequence diagram: Dyslexia Learner..........................................................................113
Figure 14 Sequence diagram: Dyslexia Elementary....................................................................114
Figure 15 Sequence Diagram: Dyscalculia preschool.................................................................115
Figure 16 Sequence diagram: Dyscalculia Learners...................................................................116
Figure 17 Sequence diagram: Dyscalculia Elementary..............................................................117
10
1 Introduction
Dyslexia and ADHD are two distinct types of mental disorders. However, they often co-exist.
ADHD (attention deficit hyperactivity disorder) also known as (ADHD) is one of the most
prevalent neurodevelopmental disorders. ADHD is recognized by symptoms of inattention,
impulsivity, and hyperactivity, which can have a negative impact on behavioral, emotional, and
social aspects of life. Approximately 80% of children with ADHD have symptoms that last into
adolescence and may continue into adulthood.
Dyslexia is a brain induced specific learning disability (LD). It impairs a person's language
ability, making learning to read, spell, decode, and recognize words difficult. As a result,
compared to other children of the same age who do not have dyslexia, reading comprehension,
vocabulary, and general knowledge are reduced.
Dyslexic children frequently experience negative emotions such as low self-esteem, frustration,
and anger. About one in every ten people who have dyslexia also have ADHD. Furthermore, if
you have ADHD, you are six times the more likely than general population to have a mental
illness or a learning disorder such as dyslexia. Therefore, early detection of dyslexia and ADHD
is critical in order to support dyslexic children from the start. Early intervention can have a huge
impact in overcoming the difficulties associated with dyslexia.
11
diagnosis tests The system will test for
dyslexia as well as ADHD
The primary purpose of the game is to collect sufficient data for diagnosis, user won’t
LI-1
find it entertaining.
LI-2 The game needs to be completed to provide correct diagnosis
LI-3 Lack of availability of data sets for our system will limits its accuracy.
The system requires a high-resolution camera for eye tracking functionality to be
LI-4
effective.
12
Flask Basic API Deployment
MS Word 2019 Documentation
MS PowerPoint 2019 Presentation
Mockups Creation,
Figma 9.5.5
Design and UI work
GitHub - Work Collaboration Tool
Technology Version Rationale
Python 3.10 Programming language
13
2 Problem Definition
14
2.3 Objectives of the Proposed System
BO-1: The ML model will provide a diagnosis accuracy rate of 85%
BO-2: the cost of diagnosis will be reduced by 90%.
2.4 Scope
The primary goal of our project is to facilitate users get a quick and early diagnosis for dyslexia
along with ADHD as an early identification of these disorders is critical to the containment of
these disorders. Our proposed game-based diagnosis system will effectively diagnose dyslexia,
dyscalculia and ADHD especially focusing on children. First the user will be asked to fill out a
health questionnaire regarding the symptoms experienced by the user related to their medical
condition which will be stored in the database for their respective users. The form will start off
with the user’s basic information and progress towards specific symptoms that are commonly
observed in people with dyslexia and ADHD. The user will now have the option to select the
disease he wants to test for he can select any one or all of them. The dyslexia game will test the
users reading, listening, and speaking capabilities. The dyscalculia games test the users’ basic
mathematical capabilities and his percept of numbers and time. The ADHD module will test for
the user’s attentiveness and impulsivity(hyperactivity). The collected data from these tests will
be analyzed using several machine learning algorithms, the one with the highest accuracy will be
selected. The effected user will be advised to contact a specialist to seek treatment.
2.5 Modules
15
FE-3: Testing for letter perception by providing inverse letters and a rotate button
The module will integrate eye tracking functionality to assist in detection of users’
inattentiveness.
FE-1: Engage the user in an 8-stage game.
FE-2: Track users inattentiveness and hyperactivity
16
FE-3: change distractors in ADHD game
FE-4: Add users.
FE-5: Delete Users
3 Requirement Analysis
Provide an introduction to the chapter in a few lines. Write details in each of the sections
provided ahead.
17
The parent will be able to setup an account on the app for the child. They will be
Parent
able to fill out the necessary information required and view the child’s diagnosis
results.
Child The child will be able to play 3 games dyslexia, dyscalculia and ADHD each
testing for 3 disabilities.
teen The teen user has the functionality of both the parent and child but will select
game difficulty according to age.
Figure 1 shows the use case diagram for admin panel. It shows the functions accessible to admin
i.e., adding deleting a user.
18
3.1.2 User Profile Management
Figure 2 shows the use case diagram for user panel. It shows the functions accessible to user i.e.
adding profile picture deleting account
19
3.1.3 Reports and Suggestion
Figure 3 shows the use case diagram for reports and suggestion module. Which includes the
diagnosis report and suggestions for nearby hospitals and clinics?
20
3.1.4 Main Interface Use case
Figure 4 shows the use case diagram for main interface of the application. It shows the layout of
the home screen.
21
3.1.5 Dyslexia Use Case Diagram:
Figure 5 shows the use case diagram for the dyslexia game. It shows the diverse types of
questions such as drag and drop, sound based etc.
22
3.1.6 Dyscalculia Use Case Diagram:
Figure 6 shows the use case diagram for the dyscalculia game. It shows the different types of
questions such as drag and drop, sound based etc.
23
3.1.7 ADHD Use Case Diagram
Figure 7 shows the use case diagram for the ADHD game.
24
credentials
Trigger: Users click on login button.
Preconditions: User identity must be authenticated.
Post conditions: User login successfully, dashboard appears.
Normal Flow: 1) System prompts the user to enter user ID and password.
2) User enters the required inputs.
3) System validates the user input.
4) User gets to the dashboard page.
Alternative Flows: 1a) In step 1 of normal flow if user does not have account.
1. System prompts the user to register account.
2. User will enter the details.
3. System verifies the details through means.
4. Account created and used case resumes to step 1.
1b) In step 1 of normal flow if the user is registered.
System prompts user to enter ID and password.
1b.1.1) If invalid inputs, use case resumes to step 1.
1b.1.2) If valid input, use case resumes to step 4.
Exceptions: 2a) In step 2 of normal flow, if the registered user enters, wrong user
ID and password.
1) Message re-enters inputs.
2) Users enter valid inputs.
3) System validates user inputs.
Use case resumes to step 4.
Business Rules: System should provide access to authorized users only, so users must
have an account to login and use application.
Assumptions: None
25
1. Message re-enters inputs.
2. User enters valid inputs.
3. Use case resumes on Step 3.
Business Rules: System should provide access to authorized users only, so users must
have an account to login to perform operations.
Assumptions: None
26
PRE-1. User must open our application.
Preconditions:
PRE-2. User must not have an existing account.
1. User will receive an account confirmation email
Postconditions: 2. User’s information will be stored in our database.
3. User will be logged on in our app
1. User opens up our application
2. User clicks on the login button
3. User clicks on sign up button.
Normal Flow: 4. User fills in the fields such as username, email, password, etc.
5. User clicks on the Sign-Up button
6. System will send a confirmation link to user’s email.
7. A new account would be created for the user.
Alternative
N/A
Flows:
In step 3, the system will check if the entered username and email exists in
our database already.
Exceptions: 1. System will generate an error if the given username or email exists.
2. User will be asked to enter another email or username.
3. System will resume from step 3.
N/A
Business Rules
Assumptions: User has a valid email address
Table 5 Login
27
1. System will generate an error if the given username or email does not
exist.
2. User will be asked to create an account first
N/A
Business Rules
Assumptions: User has created an account before
28
performance.
Alternative
N/A
Flows:
Exceptions: N/A
N/A
Business Rules
Assumptions: User has attempted to create an account
29
Preconditions: PRE-1. User must open our application.
PRE-2. User be logged in on our application
30
Actors: Primary Actor: Parent
This use case will allow the parent to select the game level according to their
Description: child’s age group. The child will then be displayed various questions relevant
to his age group.
Trigger: User will click the start game button after filling in the information form.
PRE-1. User must open our application.
Preconditions: PRE-2. User have watched the instructional video.
PRE-3. User must have filled in the information registration form
Postconditions: User will be taken to first game screen.
1. User opens up our application
2. User clicks on the Let’s go button
3. User fills in the information form
Normal Flow:
4. User is displayed three different age group levels for selection
5. User selects a level according to his child’s age
6. The user proceed to the game.
Alternative
N/A
Flows:
N/A
Exceptions:
So that user is given specific questions and option chosen for his particular
Business Rules age group.
Assumptions: N/A
31
Business Rules N/A
Assumptions: N/A
32
Preconditions: PRE-1. User must open our application.
PRE-2. User must scroll down to the contact us section of our application
Postconditions: User will receive an email with the data file attached to it
Normal Flow: 1. User opens up our application
2. User scrolls down to contact us page
3. User enters his email address
4. User enters a valid reason for request our data.
5. User selects his desired data type such as CSV or JSON.
6. User clicks on Request button.
Alternative N/A
Flows:
Exceptions: N/A
Business Rules N/A
Postconditions: N/A
Normal Flow: 1. User opens up our application
2. User clicks on the Let’s go button
3. User fills in the information form
4. User clicks on proceed button
5. Consent form pops up displaying relevant message
6. User approves or rejects
Alternative N/A
Flows:
Exceptions: N/A
Assumptions: N/A
33
Table 17 Save Information
Postconditions: N/A
Normal Flow: 1. User opens up our application
2. User clicks on the Let’s go button
3. User fills in the information form
4. User opts in to tick the checkbox or not.
Alternative N/A
Flows:
Exceptions: N/A
Business Rules To exempt the parents to fill the form each time they visit the form.
Assumptions: N/A
34
4. Multiple choice questions are displayed to the user
5. User selects any one of the given options
Alternative N/A
Flows:
Exceptions: N/A
Assumptions: N/A
Business Rules User can answer the question correctly by replaying the sound multiple
times.
Assumptions: N/A
35
Preconditions: PRE-1. User must open our app.
PRE-2. User must be playing our game
Business Rules Some questions require to display letter tiles for selection.
Assumptions: N/A
Business Rules To increase the difficulty a little bit for the user.
Assumptions: N/A
Table 22 Proceed.
36
Actors: Primary Actor: Child
Description: This use case will display arrow icon which will allow user to proceed to the
next question.
Trigger: User will click on the next button to proceed to the next button
Preconditions: PRE-1. User must open our application.
PRE-2. User must be playing our game
Assumptions: N/A
Table 23 Submit
Alternative N/A
Flows:
Exceptions: N/A
Business Rules To submit the data to our ML algorithm and calculate predictions based on
37
the data.
Assumptions: N/A
Assumptions: N/A
Table 25 Quit
38
3. User selects level
4. User completes all questions
5. Parents click on finish button and wait for prediction’s result
6. Results are displayed
7. Parents click the quit button.
Alternative N/A
Flows:
Exceptions: N/A
Assumptions: N/A
Business Rules So that the parents can see the progress of their children.
Assumptions: N/A
39
Actors: Primary Actor: Parent
Description: This use case will allow the parents to view the psychologist nearby their
location.
Trigger: Parents will click the find nearby doctors’ button
Preconditions: PRE-1. User must open our application.
PRE-2. User must be playing our game.
PRE-3. User must have completed all questions.
PRE-4. Prediction result must have been displayed to the parents.
Postconditions: User will be displayed a list of nearby located doctors
Normal Flow: 1. User opens up our application
2. User fills the information
3. User selects level
4. User completes all questions
5. Parents click on finish button and wait for prediction’s result
6. Results are displayed
7. Parents clicks the find nearby doctors button.
8. A list of nearby psychologists is displayed.
Alternative N/A
Flows:
Exceptions: N/A
Business Rules So that the parents can see the nearby doctors and decide to visit them or not.
Assumptions: N/A
Table 28 Select GO
40
N/A
Exceptions:
N/A
Business Rules
Assumptions: N/A
Assumptions: N/A
Table 30 Quit.
41
Normal Flow: 1. User opens up our application
2. User fills the information
3. User selects level
4. User completes all questions
5. Parents click on finish button and wait for prediction’s result
6. Results are displayed
7. Parents click the quit button.
Alternative N/A
Flows:
Exceptions: N/A
Assumptions: N/A
Business Rules So that the parents can see the progress of their children.
Assumptions: N/A
42
3.3 Functional Requirements
The functional requirements for our final year project are given below. These FRs will be
arranged according to logical flow of the project.
Identifier FR-1
Title Enter Name
Requirement The user shall be able to enter full name
Source Supervisor.
Rationale This shall allow the user to create his account on the name of the user.
Business Rule (if System should provide access to authorized users only, so users must
required) have login and create account respectively.
Dependencies NIL
Priority High
Table 33 FR-2
Identifier FR-2
Title Enter Email
Requirement The user shall be able to enter the email.
Source Supervisor.
This shall allow the user to create the account which will be required
Rationale at the time of login
Business Rule (if System should provide access to authorized users, and user must have
required) valid authenticate credentials.
Dependencies NIL
Priority High
Table 34 FR-3
Identifier FR-3
Title Enter Password
43
Requirement The user shall be able to enter the password
Source Supervisor.
This shall allow the user to protect the account from outside
Rationale interference and required at the time of login
Business Rule (if System should provide access to authorized users, and user must have
required) valid authenticate credentials.
Dependencies NIL
Priority High
Table 35 FR-4
Identifier FR-4
Title Confirm Password
Requirement The user shall be able to enter the password again
Source Supervisor.
This shall allow the user to re-enter the password in case he did not
Rationale enter the password he wants to set for the account.
Business Rule (if System should provide access to authorized users, and user must have
required) valid authenticate credentials.
Dependencies NIL
Priority High
Table 36 FR-5
Identifier FR-5
Title User details verification
System will check the format of each fields information accordingly.
Username must be at least 5 characters long.
Password should be at least 8 characters, with at least 1
Requirement letter,1 number,1 special character.
Retype password should match the password.
Email should be a valid email.
Username should be at least 5 characters long.
Source Developer 2
Rationale In order for system to verify the signup details
Business Rule (if N/A
44
required)
Dependencies FR-2, FR-3
Priority High
Table 37 FR-6
Identifier FR-6
Title Upload profile picture
Requirement The user will be able to upload the picture
Source Supervisor.
Rationale This shall be used for identity purpose.
Business Rule (if Nil
required)
Dependencies NIL
Priority High
Table 38 FR-7
Identifier FR-7
Title Login
The user shall be able to login the system by entering a valid User ID and
Requirement Password in specified input fields available on the login page.
Source Supervisor
This shall allow the users to perform their intended tasks through the
Rationale
application and to give access to authenticate users only.
Business Rule System should provide access to authorized users only, so users must have
(if required) an account to login and use application.
Dependencies FR-1
Priority High
Table 39 FR-8
Identifier FR-8
Title Enter. Login. Details.
The system prompts user to enter User ID and password to access their
Requirement account.
Source Supervisor.
45
Rationale User should get access to system after successful login.
Business Rule System should provide access to authorized users only, so users must have
(if required) an account to login and use application.
Dependencies NIL
Priority High
Table 40 FR-9
Identifier FR-9
Title Login. Details. Authentication.
Requirement The system shall authenticate user ID and password entered by the user.
Source Supervisor.
Rationale User should get access to system after successful login.
Business Rule System should provide access to authorized users only, so users must have
(if required) an account to login and use application.
Dependencies FR-8
Priority High
Table 41 FR-10
Identifier FR-10
Title Login. Successful.
The system shall display “Welcome” message when the login is
Requirement successful.
Source Supervisor.
To notify user that his details are correct, and he has successfully logged
Rationale
into the system.
Business Rule System should provide access to authorized users only, so users must have
(if required) an account to login and use application.
Dependencies FR-12
Priority Medium
Table 42 FR-11
Identifier FR-11
Title Login. Fail.
Requirement The system notifies the user that entered details are invalid.
Source Supervisor.
46
Rationale To notify user that entered details are not correct.
Business Rule System should provide access to authorized users only, so users must have
(if required) an account to login and use application.
Dependencies Fr-12
Priority High
Table 40 FR-12
Identifier FR-12
Title Update Name
Requirement The user will be able to enter a full name.
Source Supervisor.
Rationale This shall allow the user to update name.
Business Rule (if Only the registered user can update his profile.
required)
Dependencies FR-10
Priority Medium
Table 41 FR-13
Identifier FR-13
Title Update Email.
Requirement The user will be able to enter an email.
Source Supervisor.
Rationale This shall allow the user to update the email.
Business Rule (if Only the registered user can update his profile.
required)
Dependencies FR-10
Priority Medium
Table 42 FR-14
Identifier FR-14
Title Update Profile Picture
Requirement The user will be able to upload the profile picture.
Source Supervisor.
Rationale This shall allow the user to update the profile picture.
47
Business Rule (if Only the registered user can update his profile.
required)
Dependencies FR-10
Priority Medium
Table 43 FR-15
Identifier FR-15
Title Enter the current password
Requirement The user will be able to enter a current valid password.
Source Supervisor.
Rationale This shall allow the system to verify the password before changing.
Business Rule (if System should provide access to authorized users only, so users must
required) have an account to login.
Dependencies FR-10
Priority High
Table 44 FR-16
Identifier FR-16
Title Enter new password
Requirement The user will be able to enter a new password.
Source Supervisor.
Rationale This shall allow the system to update the user’s password
Business Rule (if System should provide access to authorized users only, so users must
required) have an account to login.
Dependencies FR-15
Priority High
Table 45 FR-17
Identifier FR-17
Title Confirm New Password
Requirement The user will be able to enter a new password again
Source Supervisor.
This shall allow the user to confirm the password in order to confirm
Rationale that the entered password is correct or not.
48
Business Rule (if System should provide access to authorized users only, so users must
required) have an account to login.
Dependencies FR-19
Priority Medium
Table 46 FR-18
Identifier FR-18
Title Enter Email
Requirement The user will be able to enter an email
Source Supervisor.
This shall send the user a verification code on the entered email for
Rationale verification
Business Rule (if System should provide access to authorized users only, so users must
required) have an account to login.
Dependencies NILL
Priority High
Table 47 FR-19
Identifier FR-19
Title Enter Email verification Code
Requirement The user will be able to enter a verification code.
Source Supervisor.
Rationale This shall allow the user to enter the valid code sent on the email.
Business Rule (if Only the code sends on the email which is already registered at the
required) time of account creation.
Dependencies FR-18
Priority High
Table 48 FR-20
Identifier FR-20
Title Enter new password
Requirement The user will be able to enter a new password.
Source Supervisor.
49
Rationale This shall allow the system to update the user’s password.
Business Rule (if System should provide access to authorized users only, so users must
required) have an account to login.
Dependencies FR-19
Priority High
Table 49 FR-21
Identifier FR-21
Title Confirm New Password
Requirement The user will be able to enter a new password again.
Source Supervisor.
This shall allow the user to confirm the password in order to confirm
Rationale that the entered password is correct or not.
Business Rule (if System should provide access to authorized users only, so users must
required) have an account to login.
Dependencies FR-20
Priority Medium
Table 50 FR-22
Identifier FR-22
Title Confirm New Password
Requirement The user will be able to enter a new password again.
Source Supervisor.
This shall allow the user to confirm the password in order to confirm
Rationale that the entered password is correct or not.
Business Rule (if System should provide access to authorized users only, so users must
required) have an account to login.
Dependencies FR-21
Priority Medium
Game dyslexia
Table 51 FR-23
Identifier FR-23
50
Title Select game
Requirement User have to choose the game he /she wants to play
Source Developer 1
Upon clicking of this button, user should be able to see the patient
Rationale health form
Business Rule (if N/A
required)
Dependencies FR-10
Priority High
Table 52 FR-24
Identifier FR-24
Title Accept consent form
User shall be displayed a consent form asking for permission to use
Requirement his information for further research purposes
Source Developer 1
Rationale User should be asked for his consent before using his information.
Business Rule (if N/A
required)
Dependencies NILL
Priority High
Table 53 FR-25
Identifier FR-25
Title Select Review Stars
Requirement User shall be able to give our game a star rating
Source Developer 1
So that we know how friendly and likeable our interface and game
Rationale was
Business Rule (if NILL
required)
Dependencies NILL
Priority High
51
Table 54 FR-26
Identifier FR-26
Title Enter Message Box
User shall be able to type in any sort of feedback or improvement
suggestions.
Requirement
User shall be displayed a thank you note after successful submission
of the review.
Source Developer 1
Rationale So that user can express his feelings about our system
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 55 FR-27
Identifier FR-27
Title Patient’s health record
User shall be displayed a detailed form asking for relevant
Requirement information about the player from the parent
Source Developer 1
Rationale Later on, Data analysis can be performed on the gathered data.
Business Rule (if NILL
required)
Dependencies FR-10
Priority High
3.3.1.2 Dyslexia
Table 56 FR-28
Identifier FR-28
Title Start game
Requirement User will click on start game button
52
Source Developer 2
Rationale In order to start the game
Business Rule (if NILL
required)
Dependencies FR-24, FR-27
Priority High
Table 57 FR-29
Identifier FR-29
Title Level selection
Requirement System will display three different levels
Source Developer 2
Rationale In order for the user to select the level according to age group
Business Rule (if NILL
required)
Dependencies FR-32
Priority High
Table 58 FR-30
Identifier FR-30
Title Start preschooler level
Requirement User will click on start button of preschooler level
Source Developer 2
Rationale In order to start the preschooler level game.
Business Rule (if N/A
required)
Dependencies FR-24
Priority High
Table 59 FR-31
Identifier FR-31
Title Scoreboard
53
Requirement The user will click on the score-board icon at the top
Source Developer 2
Rationale In order for the user to keep track of their scores of each question
solved
Business Rule (if N/A
required)
Dependencies N/A
Priority Medium
Table 60 FR-32
Identifier FR-32
Title Shape matching
Requirement System will display first group of question related to shape matching
Source Developer 2
Rationale In order for user to start solving the questions
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 61 FR-33
Identifier FR-33
Title See shape
Requirement System will display a shape hole on the screen
Source Developer 2
Rationale In order for the user to fill the hole with the correct shape
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 62 FR-34
Identifier FR-34
Title Shape option tiles
Requirement User will select and drag a shape option
54
Source Developer 2
Rationale In order to fill the shape hole and solve the question
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 63 FR-35
Identifier FR-35
Title Shape rotation
Requirement System will display second group of question related to shape
matching
Source Developer 2
Rationale In order for user to start solving the questions
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 64 FR-36
Identifier FR-36
Title See shape rotation
Requirement System will display the correct shape rotation for 3 seconds on the
screen
Source Developer 2
Rationale In order for the user to memorize the shape
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 65 FR-37
Identifier FR-37
Title Shape with rotate button
55
Requirement User will click on the rotate button next to the shape.
Source Developer 2
Rationale In order to match the rotation of the shape that was shown before
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 66 FR-38
Identifier FR-38
Title End game
Requirement The user will click on end button at the last question
Source Developer 2
Rationale In order for the user to end the preschooler level game
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 67 FR-39
Identifier FR-39
Title Preschooler result board
Requirement System will display the avatar with the result board
Source Developer 2
Rationale In order to show the user, the total score and the dyslexic prediction.
Business Rule (if NILL
required)
Dependencies FR-38
Priority High
1.1.2. Leaners level
Table 68 FR-40
Identifier FR-40
Title Start Leaners level
Requirement User will click on start button of Leaners level
56
Source Developer 2
Rationale In order to start the Leaners level game.
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 69 FR-41
Identifier FR-41
Title Leaners Scoreboard
Requirement The user will click on the score-board icon at the top
Source Developer 2
Rationale In order for the user to keep track of their scores of each question
solved
Business Rule (if NILL
required)
Dependencies NILL
Priority Medium
Table 70 FR-42
Identifier FR-42
Title Single letter/number sound recognition
Requirement System will display first group of question related to sound
recognition
Source Developer 2
Rationale In order for user to start solving the questions
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 71 FR-43
Identifier FR-43
Title Listen sound
57
Requirement System will play the sound of a letter/number at the start of the
question
Source Developer 2
Rationale In order for user to listen to the sound
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 72 FR-44
Identifier FR-44
Title Replay letter
Requirement The user will click on the replay icon.
Source Developer 2
Rationale In order for user to replay the sound
Business Rule (if NILL
required)
Dependencies N/A
Priority High
Table 73 FR-45
Identifier FR-45
Title Letter/number option tiles
Requirement User will select a tile option from a group
Source Developer 2
Rationale In order for user to solve the question
Business Rule (if N/A
required)
Dependencies N/A
Priority High
Table 74 FR-46
Identifier FR-46
Title 2-3 letter word sound recognition
Requirement System will display second group of question related to sound
58
recognition
Source Developer 2
Rationale In order for user to start solving the questions
Business Rule (if N/A
required)
Dependencies N/A
Priority High
Table 75 FR-47
Identifier FR-47
Title Listen sound
Requirement System will play the sound of the word at the start of the question
Source Developer 2
Rationale In order for user to listen to the sound
Business Rule (if N/A
required)
Dependencies N/A
Priority High
Table 76 FR-48
Identifier FR-48
Title Replay word
Requirement The user will click on the replay icon.
Source Developer 2
Rationale In order for user to replay the sound
Business Rule (if N/A
required)
Dependencies FR-58
Priority High
Table 77 FR-49
Identifier FR-49
Title Letter tiles
Requirement User will select a letter tile option from a group
59
Source Developer 2
In order for user to fill in the missing letter of the word and solve the
Rationale question
Business Rule (if N/A
required)
Dependencies N/A
Priority High
Table 78 FR-50
Identifier FR-50
Title Picture recognition
System will display third group of question related to picture
Requirement recognition
Source Developer 2
Rationale In order for user to start solving the questions
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 79 FR-51
Identifier FR-51
Title Display picture
Requirement System will display the picture
Source Developer 2
Rationale In order for user to recognize the object in the picture
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 80 FR-52
Identifier FR-52
Title Letter option tiles
Requirement User will select a tile option from a group
60
Source Developer 2
Rationale In order for user to complete the word describing the picture and to
solve the question
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 81 FR-53
Identifier FR-53
Title End game
Requirement The user will click on end button at the last question
Source Developer 2
Rationale In order for the user to end the Leaners level game
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 82 FR-54
Identifier FR-54
Title Leaners result board
Requirement System will display the avatar with the result board
Source Developer 2
Rationale In order to show the user, the total score and the dyslexic prediction.
Business Rule (if NILL
required)
Dependencies FR-53
Priority High
1.1.3. Elementary level
Table 83 FR-55
Identifier FR-55
Title Start Elementary level
Requirement User will click on start button of Elementary level
61
Source Developer 2
Rationale In order to start the Elementary level game.
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 84 FR-56
Identifier FR-56
Title Elementary Scoreboard
Requirement The user will click on the score-board icon at the top
Source Developer 2
Rationale In order for the user to keep track of their scores of each question
solved
Business Rule (if NILL
required)
Dependencies NILL
Priority Medium
Table 85 FR-57
Identifier FR-57
Title 3-5 letter word sound recognition
Requirement System will display first group of question related to sound
recognition
Source Developer 2
Rationale In order for user to start solving the questions
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 86 FR-58
Identifier FR-58
Title Listen sound
Requirement System will play the sound of the word at the start of the question
62
Source Developer 2
Rationale In order for user to listen to the sound
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 87 FR-59
Identifier FR-59
Title Replay word
Requirement The user will click on the replay icon.
Source Developer 2
Rationale In order for user to replay the sound
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 88 FR-60
Identifier FR-60
Title Letter tiles
Requirement User will select multiple letter tile option from a group
Source Developer 2
Rationale In order for user to fill all the missing letter blocks of the word and
solve the question
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 89 FR-61
Identifier FR-61
Title Picture recognition
Requirement System will display second group of question related to picture
recognition
63
Source Developer 2
Rationale In order for user to start solving the questions
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 90 FR-62
Identifier FR-62
Title Display picture
Requirement System will display the picture
Source Developer 2
Rationale In order for user to recognize the object in the picture
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 91 FR-63
Identifier FR-63
Title Letter option tiles
Requirement User will select multiple tile options from a group
Source Developer 2
Rationale In order for user to complete all the letter blocks of the word
describing the picture and to solve the question
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 92 FR-64
Identifier FR-64
Title Non-word recognition
Requirement System will display the third group of questions related to non-word
recognition
64
Source Developer 2
Rationale In order for user to start solving the questions
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 93 FR-65
Identifier FR-65
Title Play sound
Requirement System will play the sound of the word at the start of the question
Source Developer 2
Rationale In order for user to listen to the word
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 94 FR-66
Identifier FR-66
Title Replay word
Requirement The user will click on the replay icon.
Source Developer 2
Rationale In order for user to replay the sound
Business Rule (if NILL
required)
Dependencies FR-65
Priority High
Table 95 FR-67
Identifier FR-67
Title Letter tiles
Requirement User will select multiple letter tile option from a group
Source Developer 2
65
Rationale In order for user to construct the spelling of the word and solve the
question
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 96 FR-68
Identifier FR-68
Title End game
Requirement The user will click on end button at the last question
Source Developer 2
Rationale In order for the user to end the Elementary level game
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Table 97 FR-69
Identifier FR-69
Title Elementary result board
Requirement System will display the avatar with the result board
Source Developer 2
Rationale In order to show the user, the total score and the dyslexic prediction.
Business Rule (if NILL
required)
Dependencies FR-68
Priority High
Table 98 FR-70
Identifier FR-70
Title Play again
Requirement User will click on the play again button
Source Developer 2
Rationale In order for the user to get back to level selection screen to replay the
66
game
Business Rule (if NILL
required)
Dependencies NILL
Priority Low
Table 99 FR-71
Identifier FR-71
Title Quit game
Requirement User will click on the quit button
Source Developer 2
Rationale In order for the user to quit the game and get back to landing page
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-72
Title Google map implementation
Requirement System should implement the Google map API
Source Developer 2
Rationale In order to read the current location of the user
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-73
Title Nearest educational psychologist
Requirement System should search for nearest psychologist on Google map
Source Developer 2
Rationale In order collect and store the nearest psychologist location and
67
address based on users’ current location
Business Rule (if NILL
required)
Dependencies FR-80
Priority High
Identifier FR- 74
Title Predict Results
Requirement System should fetch the data thorough the REST API and make
predictions on that data.
Source Developer 1
Rationale In order to test the trained machine learning model and make
prediction
Business Rule (if NILL
required)
Dependencies NILL
Priority High
3.3.1.3 Adhd
Table 103 FR-75
Identifier FR- 75
Title Start adhd game
Requirement System will start adhd game
Source Developer 1
Rationale In order to start the game of adhd
Business Rule (if NILL
required)
Dependencies FR-10
Priority High
Identifier FR- 76
Title Patient health record
68
Requirement System should fetch the data from fire store and make predictions on
that data.
Source Developer 1
Rationale In order to test the trained machine learning model and make
prediction
Business Rule (if NILL
required)
Identifier FR-77
Title Accept consent form
Requirement User shall be displayed a consent form asking for permission to use
his information for further research purposes
Source Developer 1
Rationale User should be asked for his consent before using his information.
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-78
Title Select game level
Requirement User shall be able to select the game level
Source Developer 1
Rationale User should be asked for the level in which he or she wants to play
Business Rule (if NILL
required)
Dependencies FR-81
Priority High
Identifier FR-79
Title Enable eye tracker
Requirement Eye tracker is required to play add game
69
Source Developer 1
Rationale User will be asked to align his eyes into the camera.
Business Rule (if NILL
required)
Dependencies FR-77
Priority High
Identifier FR-80
Title Preschool level
Requirement Preschool level of the game will be played
Source Developer 1
Rationale Preschool level pf the game
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-81
Title Keep eyes still
Requirement Eyes have to be kept still during all the questions
Source Developer 1
Rationale User eyes will be tracked
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-82
Title Solve Questions
70
Requirement Eyes will be tracked during each question
Source Developer 1
Rationale Eye tracking
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-83
Title End game
Requirement End the game
Source Developer 1
Rationale Game will be ended
Business Rule (if N/A
required)
Dependencies NILL
Priority High
1.1.5. Elementary level
Identifier FR-84
Title Preschool level
Requirement Preschool level of the game will be played
Source Developer 1
Rationale Preschool level pf the game
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-85
Title Enable eye tracker
Requirement Eye tracker is required to play add game
71
Source Developer 1
Rationale User will be asked to align his eyes into the camera.
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-86
Title Keep eyes still
Requirement Eyes have to be kept still during all the questions
Source Developer 1
Rationale User eyes will be tracked
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-87
Title Solve Questions
Requirement Eyes will be tracked during each question
Source Developer 1
Rationale Eye tracking
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-88
Title End game
Requirement End the game
72
Source Developer 1
Rationale Game will be ended
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-89
Title Lerner level
Requirement Preschool level of the game will be played
Source Developer 1
Rationale Preschool level pf the game
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-90
Title Enable eye tracker
Requirement Eye tracker is required to play add game
Source Developer 1
Rationale User will be asked to align his eyes into the camera.
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-91
Title Keep eyes still
Requirement Eyes have to be kept still during all the questions
73
Source Developer 1
Rationale User eyes will be tracked
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-92
Title Solve Question
Requirement Eyes will be tracked during each question
Source Developer 1
Rationale Eye tracking
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-93
Title End game
Requirement End the game
Source Developer 1
Rationale Game will be ended
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-94
Title View results
Requirement View the results of the game
Source Developer 1
74
Rationale User reaction during each question will be displayed
Business Rule (if NILL
required)
Dependencies FR-93
Priority High
Identifier FR-95
Title Compare result
Requirement All past games
Source Developer 1
Rationale All games played by that user will be compared
Business Rule (if NILL
required)
Dependencies FR-93
Priority High
3.3.1.4 Dyscalculia
Identifier FR-96
Title Start dyscalculia
Requirement Select dyscalculia game to play
Source Developer 1
Rationale Start the dyscalculia game
Business Rule (if NILL
required)
Dependencies FR-10
Priority High
Identifier FR-97
Title Select game level
75
Requirement Levels of game play needs to be selected
Source Developer 1
Rationale Select the level to load game
Business Rule (if NILL
required)
Dependencies FR-96
Priority High
Identifier FR-98
Title Patients’ health record
Requirement Health record pf the player is required
Source Developer 1
Rationale Give the player health record
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-99
Title Accept consent
Requirement Accept the consent to use the user data
Source Developer 1
Rationale User health record will be used
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-100
Title Preschool level
76
Requirement Preschool level of the game will be played
Source Developer 1
Rationale Preschool level pf the game
Business Rule (if NILL
required)
Dependencies FR-97
Priority High
Identifier FR-101
Title Read Question
Requirement Read the numerical Question
Source Developer 1
Rationale Numerical question will be displayed
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-102
Title Answer question
Requirement Answer to the numerical question is required
Source Developer 1
Rationale Enter the answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-103
Title See clocks
77
Requirement See the clock in the question
Source Developer 1
Rationale Read the time in the clock question
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-104
Title Answer time
Requirement Enter the time in the question
Source Developer 1
Rationale Need answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-105
Title See addition subtraction question
Requirement Simple addition subtraction mathematical question will be displayed
Source Developer 1
Rationale Need answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-106
Title Answer the questions
78
Requirement Simple addition subtraction mathematical question will be answer
Source Developer 1
Rationale Need answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-107
Title End game
Requirement Game will be ended
Source Developer 1
Rationale End the game to see result
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-108
Title Lerner level
Requirement Lerner level of the game will be played
Source Developer 1
Rationale Lerner level pf the game
Business Rule (if NILL
required)
Dependencies FR-97
Priority High
Identifier FR-109
Title Read Question
79
Requirement Read the numerical Question
Source Developer 1
Rationale Numerical question will be displayed
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-110
Title Answer question
Requirement Answer to the numerical question is required
Source Developer 1
Rationale Enter the answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-111
Title See clocks
Requirement See the clock in the question
Source Developer 1
Rationale Read the time in the clock question
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-112
Title Answer time
80
Requirement Enter the time in the question
Source Developer 1
Rationale Need answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-113
Title See addition subtraction question
Requirement Simple addition subtraction mathematical question will be displayed
Source Developer 1
Rationale Need answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-114
Title Answer the questions
Requirement Simple addition subtraction mathematical question will be answer
Source Developer 1
Rationale Need answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-115
Title End game
Requirement Game will be ended
81
Source Developer 1
Rationale End the game to see result
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-116
Title Elementary level
Requirement Elementary level of the game will be played
Source Developer 1
Rationale Elementary level pf the game
Business Rule (if NILL
required)
Dependencies FR-97
Priority High
Identifier FR-117
Title Read Question
Requirement Read the numerical Question
Source Developer 1
Rationale Numerical question will be displayed
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-118
Title Answer question
82
Requirement Answer to the numerical question is required
Source Developer 1
Rationale Enter the answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-119
Title See clocks
Requirement See the clock in the question
Source Developer 1
Rationale Read the time in the clock question
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-120
Title Answer time
Requirement Enter the time in the question
Source Developer 1
Rationale Need answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-121
Title See addition subtraction question
Requirement Simple addition subtraction mathematical question will be displayed
83
Source Developer 1
Rationale Need answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-122
Title Answer the questions
Requirement Simple addition subtraction mathematical question will be answer
Source Developer 1
Rationale Need answer
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-123
Title End game
Requirement Game will be ended
Source Developer 1
Rationale End the game to see result
Business Rule (if NILL
required)
Dependencies NILL
Priority High
Identifier FR-124
Title Nearby physiatrist
Requirement User needs to select he nearby doctor for further health work
Source Developer 1
84
Rationale Nearby locations of doctor will be displayed
Business Rule (if NILL
required)
Dependencies FR-123
Priority High
Identifier FR-125
Title View results
Requirement View the results of the game
Source Developer 1
Rationale User reaction during each question will be displayed
Business Rule (if NILL
required)
Dependencies FR-123
Priority High
Identifier FR-126
Title Compare result
Requirement All past games
Source Developer 1
Rationale All games played by that user will be compared
Business Rule (if NILL
required)
Dependencies FR-123
Priority High
Identifier FR-127
Title Login
Requirement The user shall be able to login the system by entering a valid User ID
and Password in specified input fields available on the login page.
Source Developer 2
Rationale This shall allow the users to perform their intended tasks through the
85
application and to give access to authenticate users only.
Business Rule System should provide access to authorized users only, so users must
(if required) have an account to login and use application.
Dependencies NILL
Priority High
Identifier FR-128
Title Enter Username
Requirement The user shall be able to enter username in the given input field.
Source Developer 2
Rationale This shall allow the users to enter username to get access.
Business Rule System should provide access to authorized users only, so users must
(if required) have an account to login and use application.
Dependencies NILL
Priority High
Identifier FR-129
Title Enter Password
Requirement The user shall be able to enter password in the given input field.
Source Developer 2
Rationale This shall allow the users to enter password to get access.
Business Rule (if System should provide access to authorized users only, so users
required) must have an account to login and use application.
Dependencies NILL
Priority High
Identifier FR-130
Title Login. Details. Correct. Yes.
Requirement If the user enters correct login details, the system shall take him to his
account’s home page.
Source Developer 2
86
Rationale To login to user account.
Business Rule System should provide access to authorized users only, so users must
(if required) have an account to login and use application.
Dependencies NILL
Priority High
Identifier FR-131
Title Login. Details. Correct. No.
Requirement The system tells the user that entered details are invalid.
Source Developer 2
Rationale To notify user that entered details are not correct.
Business Rule System should provide access to authorized users only, so users must
(if required) have an account to login and use application.
Dependencies NILL
Priority High
Identifier FR-132
Title Enter. User. Details.
Requirement User enters details including name, mobile no, address, password, and
gender.
Source Developer 2
Rationale To gather the necessary and minimum information to create an account
for the user.
Business Rule Other User cannot have access to the system unless created an account.
(if required)
Dependencies NILL
Priority High
Identifier FR-133
Title User. Details. Compulsory.
87
Requirement User enters details including name, mobile no, address, password,
gender.
Source Developer 2
Rationale To gather the necessary information to create an other’s user profile.
Business Rule User cannot have access to the system unless created an account.
(if required)
Dependencies NILL
Priority High
Table 162 FR-134
Identifier FR-134
Title User. Details. Compulsory. Filled.
Requirement User enters details including name, mobile no, address, password, and
gender.
Source Developer 2
Rationale To gather the necessary information to create other user’s profile.
Business Rule User cannot have access to the system unless created an account.
(if required)
Dependencies NILL
Priority High
Identifier FR-135
Title User. Details. Compulsory. Not Filled.
Requirement If the user did not enter any of the compulsory details for sign-up, the
system shall display message to enter missing details and highlight the
respective unfilled data field.
Source Developer 2
Rationale To notify user that he missed some necessary points.
Business Rule User cannot have access to the system unless created an account.
(if required)
Dependencies NILL
Priority High
Identifier FR-136
Title Check. User. Details.
Requirement To check if the user enters details including name, mobile no, address,
88
password and gender according to the format.
Source Developer 2
Rationale To check if the user enters the correct input.
Business Rule User cannot have access to the system unless created an account.
(if required)
Dependencies NILL
Priority High
Table 165 FR-137
Identifier FR-137
Title User. Account. Confirmation.
Requirement The system shall send account confirmation to user.
Source Developer 2
Rationale System takes user to the dashboard to show user that he is a verified user
and created account successfully.
Business Rule User cannot have access to the system unless created an account.
(if required)
Dependencies NILL
Priority High
Identifier FR-138
Title Delete User Account
Requirement The system wants to delete any user profile.
Source Developer 2
Rationale System takes into user dashboard and click on his name and delete
account by name.
Business Rule System only deletes those account which are register in app and show in
(if required) system database.
Dependencies NILL
Priority High
Identifier FR-139
Title Delete User Account.Successfullly
89
Requirement The system wants to delete any user profile.
Source Developer 2
Rationale System takes into user dashboard and click on his email and delete
account by using his email address or name.
Business Rule System only deletes those account which are register in app and show in
(if required) system database. After deletion check his database system delete user
successfully.
Dependencies NILL
Priority High
Identifier FR-140
Title View. System. Notification.
Requirement The system shall allow the user to view feedback through system
notifications.
Source Developer 2
Rationale To view feedback.
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-141
Title Display. Notification. List.
Requirement The system shall display a list of notifications to Admin about feedback.
Source Developer 2
Rationale To display a list to admin.
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Table 170 FR-142
Identifier FR-142
90
Title Filter Feedback list.
Requirement The system shall filter feedback list.
Source Developer 2
Rationale To display feedback view.
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-143
Title View. ADHD. Timer. settings
Requirement The system shall show the Adhd question timer
Source Developer 2
Rationale To display Timer of adhd question
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-144
Title Change time
Requirement The system shall show the timer to change it for Adhd question
Source Developer 2
Rationale A timer will be shown to set for the questions
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-145
Title Update success
91
Requirement The system shall read the new timer for Adhd question
Source Developer 2
Rationale A new timer for the question will be uploaded
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-146
Title Update fail
Requirement The system failed to read the new timer for Adhd question
Source Developer 2
Rationale A new timer for the question will be not be uploaded. An error screen
will be displayed
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-147
Title View old questions
Requirement The system shall show all the old questions of dyslexia.
Source Developer 2
Rationale To display questions of dyslexia quiz
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Table 176 FR-148
Identifier FR-148
Title new question
Requirement The system shall show a screen for new question.
92
Source Developer 2
Rationale A new question will be added
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-149
Title Update success
Requirement The system shall read the new questions and add it the list for dyslexia
question
Source Developer 2
Rationale A new question will be added, and a screen will be showed.
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-150
Title Update fail
Requirement The system failed to add the new question for Dyslexia.
Source Developer 2
Rationale A new question will be not be uploaded. An error screen will be
displayed.
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-151
Title View Question
Requirement The system shall show the question of dyslexia
93
Source Developer 2
Rationale To display all the question for the user to edit
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-152
Title Edit question
Requirement The system shall ask the user for the update in the question
Source Developer 2
Rationale Question will be edited by the user.
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-153
Title Update success
Requirement The system shall read the updated question for dyslexia and change it.
Source Developer 2
Rationale A new question for the dyslexia will be uploaded
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Table 182 FR-154
Identifier FR-154
Title Update fail
Requirement The system failed to read the edited question for dyslexia.
Source Developer 2
Rationale the updated question will be not be uploaded. An error screen will be
displayed
94
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-155
Title View old questions
Requirement The system shall show all the old questions of dyscalculia.
Source Developer 2
Rationale To display questions of dyscalculia quiz
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-156
Title new question
Requirement The system shall show a screen for new question.
Source Developer 2
Rationale A new question will be added
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-157
Title Update success
Requirement The system shall read the new questions and add it the list for
dyscalculia question
95
Source Developer 2
Rationale A new question will be added, and a screen will be showed.
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-158
Title Update fail
Requirement The system failed to add the new question for dyscalculia.
Source Developer 2
Rationale A new question will be not be uploaded. An error screen will be
displayed.
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-159
Title View Question
Requirement The system shall show the question of dyscalculia
Source Developer 2
Rationale To display all the question for the user to edit
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-160
Title Edit question
Requirement The system shall ask the user for the update in the question
Source Developer 2
96
Rationale Question will be edited by the user.
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-161
Title Update success
Requirement The system shall read the updated question for dyscalculia and change it.
Source Developer 2
Rationale A new question for the dyslexia will be uploaded
Business Rule NILL
(if required)
Dependencies NILL
Priority High
Identifier FR-162
Title Update fail
Requirement The system failed to read the edited question for dyscalculia.
Source Developer 2
Rationale the updated question will be not be uploaded. An error screen will be
displayed
Business Rule NILL
(if required)
Dependencies NILL
Priority High
3.4.1 Reliability
REL-1 Users can log into the application 98% of the time without failure.
97
REL-2 Users can complete the game 90% of the time without any error.
3.4.2 Usability
USE-1 The user shall be able to start the game with a single interaction
USE-2 The system shall be efficient enough to perform a task without a delay.
About 80% of our users i.e., parents shall be able to use the application without any
USE-3
difficulty.
USE-4 Users will be given understandable error messages
3.4.3 Performance
3.4.4 Security
The application will use firebase AUTH to validate user identity to avoid
SEC-1
unauthorized access.
SEC-2 A particular user shall not be given access to other user’s data
UI-2 The system shall provide error message to show what went wrong
98
UI-3 The UI will use native components of the OS the application is being used on.
SEC-1 The game will interact with the Machine Learning model to provide a diagnosis
CI-1 The application shall send a conformation email for sign up verification.
CI-2 The application shall send a notification for any updates from the app
99
4 Design and Architecture
Figure 8: The Architectural style of our application is a multi-tiered architecture, with Flutter
frontend framework is responsible for all the presentation layer activities, the Dart is responsible
for backend activities and the firebase database is responsible for the data management functions.
100
4.2 Design Models
4.2.1 Activity Diagram
101
4.2.1.1 Activity Diagram of Profile Management
Figure 9: Activity Diagram for user profile management shows the login and sign up process.
102
Figure 10: Activity Diagram for Patient history record shows process of collecting user data in a
form and saving to database.
103
4.2.1.3 Activity Diagram of Dyslexia Game: Preschool Level
Figure 11: Activity Diagram for dyslexia game at preschool level showing the several types of
questions such as shape rotation and matching shapes.
104
4.2.1.4 Activity Diagram of Dyslexia Game: Learners Level
Figure 12: Activity Diagram for dyslexia game at learner’s level showing the different types of
questions such as drag and drop and matching shapes.
105
4.2.1.5 Activity Diagram of Dyslexia Game: Elementary Level
Figure 13: Activity Diagram for dyslexia game at elementary level showing the several types of
questions such as puzzle images.
106
4.2.1.6 Activity Diagram of Dyscalculia Game: Preschool Level
Figure 14: Activity Diagram for dyscalculia game at preschool level showing the several types of
questions such as number rotation and matching shapes.
107
4.2.1.7 Activity Diagram of Dyscalculia Game: Learners Level
108
Figure 15: Activity Diagram for dyscalculia game at learner’s level showing the different types
of questions such as sound to number matching and multiple tiles dragging.
109
4.2.1.8 Activity Diagram of Dyscalculia Game: Elementary Level
Figure 16: Activity Diagram for dyscalculia game at elementary level showing the several types
of questions such as number rotation and matching shapes.
110
111
4.2.1.9 Activity Diagram of ADHD Game
112
4.2.2 Class Diagram
114
4.2.3.2 Sequence diagram Dyslexia Game: Preschool
Figure 19: Sequence Diagram for Dyslexia at preschool level shows the flow and ordering of
different questions at this level.
115
4.2.3.3 Sequence diagram Dyslexia Game: Learners
Figure 20: Sequence Diagram for Dyslexia at learner’s level shows the flow and ordering of
different questions at this level.
116
4.2.3.4 Sequence diagram Dyslexia Game: Elementary
Figure 21: Sequence Diagram for Dyslexia at elementary level shows the flow and ordering of
different questions at this level.
117
4.2.3.5 Sequence diagram Dyscalculia Game: Preschool
Figure 22: Sequence Diagram for dyscalculia at preschool level shows the flow and ordering of
different questions at this level.
118
4.2.3.6 Sequence diagram Dyscalculia Game: Learners
Figure 19: Sequence Diagram for dyscalculia at learner’s level shows the flow and ordering of
different questions at this level.
119
4.2.3.7 Sequence diagram Dyscalculia Game: Elementary
Figure 24: Sequence Diagram for dyscalculia at elementary level shows the flow and ordering of
different questions at this level.
120
4.3 Data Design
121
4.3.1.3 ‘UserGameScores Dyslexia/Dyscalculia Collection:
1. All this along with some interactive toast messages from the server side make it
completely interactive and friendly for the user.
2. All the interfaces have been kept extremely simple to avoid any complexity of use for the
system’s most targeted users.
124
User logins sign up screen complete with validation.
125
4.4.1.2 Patient History record
126
4.4.1.3 Home Screen
4.4.1.1: Home displaying the 3 games
Dyslexia, Dyscalculia and ADHD.
127
4.4.1.4 Dyslexia Game Screen
128
4.4.1.5 ADHD Game Screen
ADHD game screen showing 4 distractors. User presses the “GO” button when the distractors
disappears and a stimulus is shown in the middle
129
4.4.5 Next question button
5 Implementation
5.1 Algorithm
ML Backend
from random import choices, randint
import pandas as pd.
import numpy as np.
from sklearn. model_selection import train_test_split
import tensorflow as tf.
from tensorflow. keras. models import load_model.
130
def generate_positive_dataset(size_of_dataset):
levels = [1, 2, 3]
# 0 for Male and 1 for Female
gender = [0, 1]
# Click count minimum and maximum ranges in clicks
click_count_min = 110
click_count_max = 200
# Duration minimum and maximum ranges in mins
duration_min = 10
duration_max = 25
# Correct answer minimum and maximum ranges
correct_answer_min = 1
correct_answer_max = 25
# Avg FCT minimum and maximum ranges in seconds
avg_fct_min = 7
avg_fct_max = 16
positive_dataset.to_csv('positive_dataset.csv')
131
def generate_negative_dataset(size_of_dataset):
levels = [1, 2, 3]
# 0 for Male and 1 for Female
gender = [0, 1]
# Click count minimum and maximum ranges in clicks
click_count_min = 110
click_count_max = 150
# Duration minimum and maximum ranges in mins
duration_min = 7
duration_max = 15
# Correct answer minimum and maximum ranges
correct_answer_min = 20
correct_answer_max = 40
# Avg FCT minimum and maximum ranges in seconds
avg_fct_min = 5
avg_fct_max = 14
132
negative_dataset.to_csv('negative_dataset.csv')
# Initialising ANN
ann = tf. keras.models.Sequential()
# Adding First Hidden Layer
ann.add (tf. keras. layers.Dense(units=6,activation="relu"))
# Adding Second Hidden Layer
ann.add (tf. keras.layers.Dense(units=6,activation="relu"))
# Adding Output Layer
ann.add (tf. keras.layers.Dense(units=1,activation="sigmoid"))
# Compiling ANN
ann. compile(optimizer="adam",loss="binary_crossentropy",metrics=['accuracy'])
# Fitting ANN
ann.fit (X_train,Y_train,batch_size=32,epochs = 100)
# Save Model
ann. save('custom_model.h5')
print ('Model saved')
def result(test_sample):
# Load model
savedModel=load_model('custom_model.h5')
savedModel.summary()
# Predicting result for Single Observation
133
5.2 External APIs/SDKs
134
1. User will Username:” An alert will As Expected, Pass
fill the Daniyal CH” generate with
valid Password: the message
credentials “********” “account has
for account Confirm Password: been created
creation “********” successfully”
Email:”
ABC@gmail.com”
Gender:” Male”
Age: “22”
135
2. Check the Email: abc.gmail.com Highlight As Pass
email field s field and Expected,
of login to displays
validate error.
that it. message
displays
error
message
3. Check the Password: 19063000as Validates As Pass
password the Expected,
field of login password
to validate and account
that it takes is
proper successfully
password logged
in
4. Check Password: 19063000 Field gets As Pass
the highlighted Expected,
password and the
field to error
validate message is.
it displayed
displays
error
message.
for wrong
password
136
select the
game to
play.
137
Test Case Id: TC_05
Test Case Description: Test the patient history form functionality.
Test Scenario: User will fill out the form.
138
Test Case Id: TC_07
Test Case Description: Test the player avatar functionality.
Test Scenario: User will select the avatar.
139
Script Suspended
140
Test Case Id: TC_11
Test Case Description: Test the system drag word option functionality.
Test Scenario: User will drag the correct option.
141
picture bucket
4. Verify that Next Question User can As Pass
user can move to next expected,
move to question
next
question.
Unit Testing 13: Test case for viewing each round score.
Testing Objective: To ensure that the user view the round score successfully.
Test Case Id: TC_13
Test Case Description: Test the system scoring functionality.
Test Scenario: User will complete a round.
Unit Testing 14: Test case for viewing each round score.
Testing Objective: To ensure that the user view the round score successfully.
Test Case Id: TC_14
Test Case Description: Test the system scoring functionality.
Test Scenario: User will complete a round.
142
user can User completes a round. show each expected,
view round round score
score
2. Verify that User does not complete Question As Pass
user can’t the round will keep expected,
see round appearing
score before
completion
of round
143
Unit Testing 17: Quit.
Testing Objective: To ensure that the user can quit the game successfully.
Test Case Id: TC_17
Test Case Description: Test the system quit game functionality.
Test Scenario: User will select quit game button.
144
Test Scenario: User can view the clinics in nearby affinity.
145
user can Click on show algebraic show an expected,
select an questions. algebraic
option question.
for the user.
2. Verify that Select the option User can As Pass
user can select the expected,
select an option.
option
3. Verify that Next Question User can As Pass
user can move to next expected,
move to question
next
question.
146
Case/Test Result Result Executed/
Script Suspended
147
Unit Testing 25: Test case for viewing each round score.
Testing Objective: To ensure that the user view the round score successfully.
Test Case Id: TC_25
Test Case Description: Test the system scoring functionality.
Test Scenario: User will complete a round.
148
Testing Objective: To ensure that the user play again successfully.
Test Case Id: TC_27
Test Case Description: Test the system play again functionality.
Test Scenario: User will select play again button.
149
No. Test Test Attributes/Values Expected Actual Pass/Fail/Not
Case/Test Result Result Executed/
Script Suspended
150
Unit Testing 32: picture distractor.
Testing Objective: To ensure that the user can view distractors successfully.
Test Case Id: TC_32
Test Case Description: Test the system distracting functionality.
Test Scenario: User can view the distractor.
151
Test Scenario: User can hear and see the distractor
152
user can User ends game first. start the expected,
play again User selects play again game again
button.
153
Testing Objective: To ensure that the user can view the clinics successfully.
Test Case Id: TC_39
Test Case Description: Test the system finding nearby clinics functionality.
Test Scenario: User can view the clinics in nearby affinity.
1. Login as a Username: daniyal Main page for the Logged in and Pass
‘player’ Password: player is loaded. redirected to
152584fdwff player main page.
2. Login as a Username: Gulmina Main page for the Logged in and Pass
‘admin’ Password: admin is loaded redirected to
Gul1234? admin main page.
3. Login as a Username: shazif Main page for the Logged in and Pass
‘parent’ Password: parent is loaded redirected to
shazif1234! parent main page.
154
Test Test Data Expected Result Actual Pass/Fail/Not
Case/Test Result Executed/
Script Suspended
155
2 Verify user Username: “alamk” System verifies As pass
entered a valid username is expected,
username that is valid
at least 5
characters
3. Verify user Password: Kid1234% System verifies As pass
entered a valid password is expected,
password that is valid
at least 8
characters, with
at least 1 letter,1
number and 1
special
character
4. Verify user re- Password: Kid1234% System As pass
entered the matches the expected,
same password password and
verifies it is
same
5. Verify user Parent’s name: System verifies As pass
entered a valid Younas khan parent name is expected,
full parent name valid
at least 5
characters long
6. Verify user Child’s name: System verifies As Pass
entered a valid Alam khan child name is expected,
full child name valid
at least 5
characters long
7. Verify user Age: 9 System verifies As Pass
entered a valid child’s age is expected,
age of the child less than 13
between 1-12
8. Verify user N/A System verifies As Pass
selected a that a gender expected,
gender of the option is
child selected by
highlighting it
9. Verify the N/A System verifies As Pass
signup button the entered expected,
works information and
creates an
account for the
user
156
1.1.13. Functional Testing 4: Access User Profile
157
1. Verify that user N/A System will As pass
can delete the remove the expected,
profile image by user’s current
clicking on profile image
delete button
158
1. Verify that by N/A System will As pass
clicking on display all the expected,
scoreboard scoreboards to
button user can the user
see all the
scoreboards of
previous games
2. Verify that by N/A System will As Pass
clicking on display all the expected,
Dyslexic dyslexic
prediction predictions to
button user can the user
see all the
prediction
results of
previous games
3. Verify that by N/A System will As Pass
clicking on the display the expected,
improvement user.
graph button The
user can see improvement
how much graph
he/she has
improved in the
form of graph
159
2. Verify that by N/A System will As Pass
clicking on stop the expected,
pause button the instructional
video stops video
160
registered the database
161
elementary elementary
level that level and it will
gaming level redirect the user
starts to that level
162
2. Verify that by N/A System will As Pass
not placing any verify that no expected,
tile into the tile has been
answer placed in the
container user answer
cannot move container so it
onto next will not display
question the next
question button
163
1. Verify that by N/A System will System Pass
typing the verify that already
answer in the answer field is shows the
answer field filled and will next
then user can display the next question
move onto next button question button
question without
having the
need to
type the
answer
164
2. Verify that by N/A System will As Pass
giving three verify that user expected,
consecutive has given three
correct answers consecutive
in medium level correct answers
question it will increase
difficulty will the difficulty
increase to hard level from
level medium to hard
3. Verify that by N/A System will As Pass
giving three verify that user expected,
consecutive has given three
wrong answers consecutive
in hard level wrong answers
question it will decrease
difficulty will the difficulty
decrease to level from hard
medium level to medium
4. Verify that by N/A System will As Pass
giving three verify that user expected,
consecutive has given three
wrong answers consecutive
in medium level wrong answers
question it will decrease
difficulty will the difficulty
decrease to easy level from
level medium to easy
5. Verify that by N/A System will As Pass
giving even one verify the user expected,
wrong answer has given a
the difficulty wrong answer
level will not so difficulty
increase level will not
increase, and
loop will start
again
165
submit button data to the
on last question machine
user is shown learning model
the dyslexic and get the
result prediction
result and
display it on the
result screen
166
1.1.32. Functional Testing 23: Displaying Badge
167
6.3 Business Rules Testing
Business rules testing helps to test our Business rule and see if they are working in their intended
manner
Business Testing 1: Choose email for account registration
Testing Objective: To ensure that email chosen is valid.
Conditions:
1. Email should follow the given pattern
2. No two users can have the same email
Conditions:
1. Password should be valid
2. Email to be valid
3. Credentials should belong to an existing user
168
valid
Email is True True False False True True False False
valid
Credenti True False False True True False True False
als
belong
to an
existing
user
Action/Outcome
Login True False False False False False False False
Success
ful
169
ticked the ‘save page.
my information
for next time’
box
170
1. Verify that N/A Score for each As Pass
score is particular expected,
submitted for question will be
each question stored in an
and next array and next
question is question will be
displayed. displayed
randomly.
2. Verify that N/A Difficulty will As Pass
consecutive be changed expected,
score is based on the
monitored, and condition of
difficulty is three
changed consecutive
accordingly. score.
3. Verify that N/A A new badge is As Pass
badges are displayed and expected,
displayed after added to the
every two placerholder
questions. after every two
questions along
with the yay
sound.
171
2. Verify that N/A Difficulty will As Pass
consecutive be changed expected,
score is based on the
monitored, and condition of
difficulty is three
changed consecutive
accordingly. score.
3. Verify that N/A A new badge is As Pass
badges are displayed and expected,
displayed after added to the
every two placerholder
questions. after every two
questions along
with the yay
sound.
172
questions. after every two
questions along
with the yay
sound.
173
score and updated and is
details are stored in the
updated and database.
displayed.
174
7. Conclusion and Future Work
7.1 Conclusion
This gaming application is a great step forward towards the automation of the diagnosis of
dyslexia and ADHD among young children. The ease of access and the child-friendly
environment of the gaming application will make it quite easy for the parent if they have any
suspicion to diagnose their child for dyslexia in the early stages. And then take precautionary
measures accordingly.
8. References
How to design using UML (OOP): For guidance, please follow the instructions mentioned in
the link: http://agilemodeling.com/artifacts/
Maria Rauschenberg, Ricardo Baeza-Yates, and Luz Rollo. 2020. Screening risk of dyslexia
through a web-game using language-independent content and machine learning. In
Proceedings of the 17th International Web for All Conference (W4A ’20). Association for
Computing Machinery, New York, NY, USA, Article 13, 1–12.
175
Rauschenberg, M., Lines, C., Rousselle, N., Hein, A., & Fudickar, S.J. (2019). Designing a
New Puzzle App to Target Dyslexia Screening in Pre-Readers. GoodTechs '19.
Khan, Rehman & Lee, Julia & Oon, Yin Bee. (2018). Machine Learning and Dyslexia:
Diagnostic and Classification System (DCS) for Kids with Learning Disabilities.
http://dgames.futurechange.de/
176