You are on page 1of 51

COMSATS University Islamabad Sahiwal,

Pakistan

Facile Quran Learning

By
Amna Lodhi CUI/FA18-BCS-008/SWL

Anees Fatima CUI/FA18-BCS-009/SWL

Tooba Ajmal CUI/FA18-BCS-046/SWL

Supervisor

Dr. Muhammad Farhan

Bachelor of Science in Computer Sciences (2018-2022)

The candidate confirms that the work submitted is their own, and appropriate credit
has been given where reference has been made to the creation of others.
COMSATS University Islamabad, Sahiwal
Pakistan

Facile Quran Learning

A project presented to

COMSATS University Islamabad, Sahiwal Campus

In partial fulfillment
of the requirement for the degree of

Bachelor of Science in Computer Sciences (2018-2022)

By

Amna Lodhi CUI/FA18-BCS-008/SWL

Anees Fatima CUI/FA18-BCS-009/SWL

Tooba Ajmal CUI/FA18-BCS-046/SWL

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 the
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 a 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.

Amna Lodhi Anees Fatima

Tooba Ajmal

3
CERTIFICATE OF APPROVAL
It is to certify that the final year project of BS(CS) “Facile Quran Learning” was developed
by Amna Lodhi (CUI/FA18-BCS-008), Anees Fatima (CUI/FA18-BCS-009), and Tooba
Ajmal (CUI/FA18-BCS-046) under the supervision of “Dr. Muhammad Farhan” and that in
his opinion; it is fully adequate, in scope and quality for the degree of Bachelors of Science
in Computer Sciences.

Dr. Muhammad Farhan

External Examiner

Dr. Tariq Ali

Assistant Professor

(Department of Computer Science)

4
A photo editor is a software application that allows you to edit images. It can be used to
crop, resize, adjust brightness and contrast, add filters and effects, remove blemishes and
add stickers, add text on image, and many more. It can enhance image quality automatically
or with one-click adjustments, such as improving resolution, sharpness, colour, contrast, and
lighting. It can remove unwanted objects, backgrounds, or blemishes from photos with
smart tools and masks. It can apply creative effects and filters to photos, such as sky
replacement, neural filters, HDR, or artistic styles. It can handle RAW files and other image
formats from different cameras and devices.The technology that we will use will be Java,
XML as Programming Language. The IDE will be Android Studio and we’ll design the
User Interface by using XML.

Acknowledgment
5
All praise is to Almighty Allah who bestowed upon us a minute portion of His boundless
knowledge by which we were able to accomplish this challenging task.

We are greatly indebted to our project supervisor “Dr. Muhammad Farhan”. Without their
supervision, advice, and valuable guidance, the completion of this project would have been
doubtful. We are deeply indebted 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 the values of honesty & hard work.

Amna Lodhi Anees Fatima

Tooba Ajmal

6
Abbreviations
SRS Software Requirement Specification

SDD Software Design Description

FYP Final Year Project

XML Extensible Markup Language

7
Table of Contents
Chapter 112
1. Introduction13
1.1 Brief 13
1.2 Relevance to Course Modules14
1.3 Project Background14
1.4 Related Work14
1.5 Analysis of Related Work15
1.6 Methodology and software Lifecycle15
1.7 Agile Model 16
Chapter 217
2. Problem Definition18
2.1 Problem Statement18
2.2 Scope18
2.3 Deliverable and Development Requirements 19
2.4 Constraints19
Chapter 320
3. Requirement Analysis21
3.1 Requirements Identified Techniques21
3.2 Use Case Diagrams21
3.3 Detailed Use Case22
3.4 Functional Requirments26
3.5 Non-Functional Requirments 26
Chapter 428
4. Design and Architecture29
4.1 System Architecture29
4.2 Sequence Diagram29
4.3 Data Flow Diagrams30
4.4 Process Flow Diagrams32
Chapter 533
5. Implementation34
5.1 Algorithm34
5.2 External EPI34
Chapter 635
6. Testing and Evaluation36
6.1 Manual Testing36

8
6.1.1 Login Authentication36
6.1.2 Signup Authentication37
6.1.3 Logout37
6.1.4 Quiz38
6.1.5 User Progress38
6.2 Tool Used39
6.3 Mockups40
Chapter 745
7.1 Conlusion46
7.2 Future Work46
Chapter 847
8.1 References48

9
List of Figures
Figure 1.1 Agile Method 16
Figure 3.1 Usecase Diagram 22
Figure 4.1 System Architecture 29
Figure 4.2 Sequence Diagram 29
Figure 4.3 Data Flow Diagram Level 0 30
Figure 4.4 Data Flow Diagram Level 1(a) 30
Figure 4.5 Data Flow Diagram Level 1(b) 31
Figure 4.6 Data Flow Diagram Level 1(c) 31
Figure 4.7 Data Flow Diagram 32
Figure 6.1 Splash Screen 40
Figure 6.2 Dashboard 40
Figure 6.3 Navigation Bar 42
Figure 6.4 Word Frequency 42
Figure 6.5 Words Occurance 43
Figure 6.6 Masnoon Duas 43
Figure 6.7 Tasbeeh Counter 44
Figure 6.8 User Progress 44
Figure 6.9 Ayah of the Day 45

10
List of Tables
Table 1.1 Related Work 15
Table 3.1 Login Usecase 23
Table 3.2 Masnoon Duas Usecase 24
Table 3.3 Word Frequency 24
Table 3.4 User Progress Usecase 25
Table 3.5 Tasbeeh Counter Usecase 26
Table 5.1 External APIs 34
Table 6.1 Login Authentication Test Case 34
Table 6.2 Signup Authentication Test Case 36
Table 6.3 Logout Test Case 37
Table 6.4 Quiz Test Case 38
Table 6.5 User Progress Use Case 38
Table 6.6 Word of the Day Use Case 39
Table 6.7 Tools 39

11
Chapter 1

12
1. Introduction
The Quran is the exact God’s Word for Muslims, given through the agency of the Angel Gabriel
(Jibril or Jabral) during the Prophet Muhammad's twenty-three-year prophetic mission. The
Quran's meaning, language, and every word and letter, as well as the sound it makes when recited
and its text printed on various physical surfaces, are all believed holy[1]. The Quran was orally
revealed in Arabic that was first heard by the Prophet and afterward written down in the Arabic
script in a book of 114 chapters and about 6,200 verses, all of which were revealed in order. In
every era, memorizing the Qur'an has been tough. For a long time, the Qur'an was only learned
from books, and it was rarely learned from the internet. With time people move to the
digitalization of the world, especially in the 21st century. Many applications provided the
complete Quran on mobile phones. People can learn it and also can get the translation of the
Quran in many languages. Memorizing the Qur'an in an online mood is a huge issue[2]. Other
manual techniques of memorizing the Qur'an have several drawbacks, as many Ahmadis spread
their literature and lead people astray. Our work, however, will be genuine following the Holy
Book Qur'an. The repeated words will be written once in this program, and when the user searches
for that exact phrase, it will return all of the occurrences of that specific word in the Qur'an. The
user can also keep a record of his/her progress and how many words he/she has learned. This
application makes it simple for anyone to learn the Qur'an's translation.
1.1 Brief

The Quran is the specific God's Word for Muslims, given thanks to the Angel Gabriel (Jibril or
Jabral) during the Prophet Muhammad's long term prophetic mission. The Quran's significance,
language, and each word and letter, as well as the sound it makes when recounted and its text
imprinted on different actual surfaces, are completely accepted holy. The Quran was orally
uncovered in Arabic was first heard by the Prophet and a while later recorded in the Arabic
content in a book[3]. Remembering the Qur'an in a web-based mindset is a gigantic issue. Other
manual strategies of remembering the Qur'an have a few disadvantages, as numerous Ahmadis
spread their writing and lead individuals astray. Our work, be that as it may, will be authentic
following the Holy Book Qur'an. The rehashed words will be composed once in this program, and
when the client looks for that precise expression, it will return each of the events of that particular
word in the Qur'an. The client can likewise track his/her advancement that the number of words
he/she has learned. This application simplifies it for anybody to gain proficiency with the Qur'an's
interpretation.

13
1.2 Relevance to Course Modules

At first, our most of the project is in Java language which we studied in 2nd semester and the
database in 3rd semester it helped us a lot to understand how it will work. We are using Figma for
designing mockups, we studied Human Computer Interaction in 7th semester which help us to
know that we can design different type of screens that help us to improve user interface.
Furthermore, we studied software engineering in 5th semester which help us to understand the
methodology of a software and which model would be suitable like we use agile model for our
project.
1.3 Project Background

It always seems to be difficult one while carrying a Holy book all time. It has been difficult to
memorize the Qur'an in every era. Since the Qur'an was generally taught through books, and it
was only infrequently taught through the internet. In today's era, people are so busy with their
hectic routines they have no time to understand or learn the Holy Book Qur'an. Many applications
are available that provide the full Quran and also their translation but there is no solution to
memorize the repeated words that occur in Quran. And there is also no way to keep a record of
their progress in the previous projects/applications[4]. In this project, we are developing an
android application that helps people to memorize the most repeated words in the Qur'an. A
similar app before this project is not developed. After completing this project, we have strong grip
on Java, modern GUI making, and also SQLite Database. To replace the post methods of
understanding and learning the Arabic vocabulary through digitalization is a need of the modern
era. We will collect the words that come from the Qur'an repeatedly and write their translation
separately. To make it easier for the user to remember. This project would recommend the mobile
application (dictionary) to search and explore in Quran to find out the meaning of words and
repeated words/verses throughout the whole book by searching its roots. Users can also add
favorites. Which will be easier for the user later. A similar app before this project is not
developed. After completing this project, we will be able to build an android application.

1.4 Related Work

Urdu Quran Application


The Quran is translated into Urdu with this application. It has both a surah index and a chapter
index. It notifies the user of salah times. It also has a compass that can be used to locate the Qibla.
Islam 360

14
Islam 360 has many of the same features as the Urdu Quran, but it also has some additional
features, such as daily notifications of Ayats, hadiths, and other relevant information. They
categorize diverse sectors such as Al-Bukhari, Al-Muslim, Al Tirmizi, Abu Dawood, and others.
Table 1-1 Related Work

Application Name Weakness Proposed Project Solution

Urdu Quran This application has the same The people can see all the
features but it does not occurrences of specific words
contain a dictionary of by searching only once.
repeated words.

Islam 360 It has similar features to other By proposed project solution


applications that are qibla learning of Quran become
direction, salah time, surah fast. People can memorize the
index, etc. repeated words and also have
a summary of their progress.

1.5 Analysis of Related Work


We study some other Quran related applications. There is not much work done in this domain and
we are trying to contribute in it. The result we are expecting from this system are as follow:

● It will be easy for the users to learn the translation of the Holy Book as we will search the
repeated words from Holy Book and provide their translation.
● Users can check their progress that how much words they have learnt.
● If user search a specific word from Holy Book, our application will provide the matching
ayahs and their translation as well.
● As this work is only done in a sanction, but with the help of our application the user would
not have to carry the sanction and can learn on mobile with our application.
● Our application will have quality data with proper authenticity.
● In this era, people do not have much time to go to a mosque or specific physical location to
learn the Holy Book. With the help of our application, learning the Holy Book is just one
click away.

15
1.6 Methodology and Software Lifecycle for this Project
This system can be developed into many development ways but most authentic and suitable life
cycle is agile model.

1.7 Agile Model

Agile SDLC model is a mix of iterative and steady procedure models with spotlight on procedure
flexibility and consumer loyalty by fast conveyance of working programming item. Deft Methods
break the item into little gradual forms. These assemblies are given in emphasis. Every cycle
regularly endures from around one to three weeks[5]. Each cycle includes cross-useful groups
working at the same time on different territories like:
● Planning
● Requirements Analysis
● Design
● Coding
● Unit Testing and
● Acceptance Testing

Figure 1.1 Agile Method

16
Chapter 2

17
2. Problem Definition
It generally is by all accounts difficult one while conveying a Holy book all time. Remembering
the Qur'an in each era has been difficult. Since the Qur'an was for the most part instructed through
books, it was just inconsistently educated through the web. In the present period, individuals are
so occupied with their furious schedules they have no chance to comprehend or become familiar
with the Holy Book Qur'an. Numerous applications are accessible that give the full Quran and
furthermore their interpretation however there is no answer for retaining the rehashed words that
happen in Quran. Furthermore, it is absolutely impossible to track their advancement in past
tasks/applications. In this task, we are fostering an android application that assists individuals with
remembering the most rehashed words in the Qur'an. A comparable application before this
undertaking isn't created. Subsequent to finishing this venture, we have a solid hold on Java,
present-day GUI making, and furthermore SQLite Database.

2.1 Problem Statement


It always seems to be a difficult one while carrying a Holy book all time. It has been difficult to
memorize the Qur'an in every era. Since the Qur'an was generally taught through books, and it
was only infrequently taught through the internet. In today's era, people are so busy with their
hectic routines they have no time to understand or learn the Holy Book Qur'an. Many applications
are available that provide the full Quran and also their translation but there is no solution to
memorize the repeated words that occur in Quran. And there is also no way to keep a record of
their progress in the previous projects/applications. In this project, we are developing an android
application that helps people to memorize the most repeated words in the Qur'an. A similar app
before this project is not developed. After completing this project, we have a strong grip on Java,
modern GUI making, and also SQLite Database.

2.2 Scope
The scope of this application is to make the Holy Book Qur’an accessible to everyone. Not
everyone can carry Holy Quran with him/herself but a person carrying a phone can open this app
and recite Quran anywhere anytime. A person can simply download this app and recite Quran and
understand verses by the use of provided urdu dictionary. This will help the user memorize
repeated words used in Holy Qur’an. Users can also monitor the progress of their learning. Salah’s
timing according to the region and Direction of Khana’ Kaba is also provided for the user. Tilawat
of Holy Book is also provided so users can hear Quran anytime. This helps users in their Arabic

18
pronunciation and reciting. This app is for Android users only. This app is also restricted to those
who understand Urdu, English and Arabic and not available in other local language.
2.3 Deliverables and Development Requirements
We are developing an application that will make it easy for the users to learn the translation of the
Holy Book as we will search the repeated words from the Holy Book and provide their translation.
For the development of this project, we will also use Java language to develop the android application front
end, Figma for designing mockups, and SQLite database for storing our data.

2.4 Constraints
● This application will only support android.
● This application is not for IOS.
● Only the latest versions of android will be supported.
● Different google fonts will be required.

19
Chapter 3

20
3. Requirement Analysis
We will learn a lot of skills during the development and testing of this project, respectively.
Programming languages are most important for the development of project so we will learn about
the basic and modern concepts of Java that will be used in the development of the project and
after that we will maintain the system according to the requirements of the market standard. Now
a days, most of our application runs on Android platform, as it enables Android SDK libraries. It
has different libraries which are required for building a good Android application. Android SDK
is needed because it provides all functions, features, and libraries that will help in building an
Android application an Android Device Manager allows us to create a virtual device for the
application by simulating the real device capabilities.

3.1 Requirements Identified Techniques


A requirement can be defined as a condition or capability that must be processed by a product or
an application. We have used internet search to find the terms related to our project Multiple
techniques that can be used for collecting requirements are as follows:
• By one-to-one discussion
• By group discussion
• Using software tools
• Using internet search
• Focus on facilitated groups and workshops
• Use of prototype
• The use case is an effective technique for interactive end-user applications

3.2 Use Cases Diagrams


Use-case diagrams describe the high-level functions and scope of a system. These diagrams also
identify the interactions between the system and its actors. The use cases and actors in use-case
diagrams describe what the system does and how the actors use it, but not how the system
operates internally[6].
Use-case diagrams illustrate and define the context and requirements of either an entire system or
the important parts of the system. You can model a complex system with a single use-case
diagram, or create many use-case diagrams to model the components of the system. You would
typically develop use-case diagrams in the early phases of a project and refer to them throughout
the development process.

21
Figure 3.1 Usercase Diagram

Use-case diagrams are helpful in the following situations

● Before starting a project, you can create use-case diagrams to model a business so that all
participants in the project share an understanding of the workers, customers, and activities
of the business.
● While gathering requirements, you can create use-case diagrams to capture the system
requirements and to present to others what the system should do.
● During the analysis and design phases, you can use the use cases and actors from your use-
case diagrams to identify the classes that the system requires.

22
● During the testing phase, you can use use-case diagrams to identify tests for the system.

3.3 Detailed Use Case


The use case consists of a number of scenarios, each representing specific instances of the use case that
correspond to specific inputs from the actor or to specific conditions in the environment.
3.3.1 Login
Table 3.1 Login Use Case

User case ID login

Use case Name Login

Actors Primary Actor: User


Secondary Actor: Admin

Description A user must have to log in to the app to save its memorization progress. If
the user does not log in to the app then when he/she changes the phone then
it can lose their progress.
The admin also needs to log in to update the necessary things and launch the
new version of the Facile Quran Learning android application.

Trigger It indicates that the user must log in to start the application.
The admin also needs to log in to update the application.

Preconditions The user must have to register before login.


The admin must have a username and password to log in to the app.

Postconditions No postcondition.
Normal Flow The application validates the actor’s password and logs him/her into the
application. The application displays the dashboard and the use case ends.
Invalid Username / Password
If in the normal flow the system cannot find the name or the password is
invalid, an error message is displayed. The user can type in a new name or
password or choose to cancel the operation, at which point the use case ends.

Alternative Flow Invalid Username / Password


If in the normal flow the system cannot find the name or the password is
invalid, an error message is displayed. The user can type in a new name or
password or choose to cancel the operation, at which point the use case ends.

Exceptions Not any.

23
Business Rules Nill
Assumptions Nill

3.3.2 Masnoon Duas


Table 3.2 Masnoon Dua Use Case

User case ID MD

Use case Name Masnoon Duas

Actors Primary Actor: User


Secondary Actor: Admin
Description The application has masnoon duas module. Users can read or learn by
choosing from the dashboard.
The admin can perform CRUD operations.
Trigger A user indicates that he/she wants to read or learn the Masnoon Duas that are
often read in daily routine when doing work.
Preconditions The user must log in to the application.
Postconditions N/A
Normal Flow The users log in to the application and then he/she read the Masnoon Dua by
choosing the button on the dashboard.
Alternative Flow Not any.
Exceptions Not any.
Business Rules Nill

Assumptions Nill

Words Frequency
Table 3.3 Words Frequency Use Case

User case ID FW

Use case Name Frequent Words

Actors Primary Actor: User


Secondary Actor: Admin
Description This use case shows the frequency of repeated words in the Quran with their
Urdu meanings.
The admin can perform CRUD operations.
Trigger The users indicate that they want to know the repeated words frequent words
of the Quran.
Preconditions The user must log in to the application.
Postconditions N/A
24
Normal Flow The users log in to the application and then they can see the latest prayer
timings.
Alternative Flow Not any.
Exceptions Not any.
Business Rules Nill
Assumptions Nill

User Progress
Table 3.4 User Progress Use Case

User case ID UP

Use case Name User Progress

Actors Primary Actor: User

Description In this module when users memorize the repeated words of the Quran then
they also can keep a record of their progress and how many words they
memorized.
Trigger The users indicate that they want to see their learning progress.

Preconditions The user must log in to the application.


Postconditions N/A
Normal Flow The users log in to the application and then they can see their learning
progress.
Alternative Flow Not any.
Exceptions Not any.
Business Rules Nill
Assumptions Nill

Tasbeeh Counter
Table 3-5 Tasbeeh Counter Use Case

User case ID TC

Use case Name Tasbeeh Counter

Actors Primary Actor: User

Description In this module, users can count its tasbeeh by clicking on the screen. The
users can also reset the counter when they want to start again.

25
Trigger The users indicate to count the tasbeeh by clicking on the screen again and
again.
Preconditions The user must log in to the application.
Postconditions N/A
Normal Flow The users log in to the application and use the tasbeeh counter. And reset the
counter when the user wants to restart the tasbeeh.
Alternative Flow Not any.
Exceptions Not any.
Business Rules Nill
Assumptions Nill

Quiz Generator
Table 3-6 Quiz Use Case

User case ID QG

Use case Name Quiz Generator

Actors Primary Actor: User

Description In this module, users can generate quizzes by choosing the button on the
dashboard. The quiz may be from the memorized words or the random word
surah wise or parah wise.
Trigger The users indicate to attempt quiz from the memorized words or the random
word surah wise or parah wise.
Preconditions The user must log in to the application.
Postconditions N/A
Normal Flow The users log in to the application and can generate quizzes from their
learned progress or random words.
Alternative Flow Not any.
Exceptions Not any.
Business Rules Nill
Assumptions Nill

3.4 Functional Requirements


● Repeated Words and their Occurrence
● Tracking of Progress
● Quiz of Memorized Words
● Tasbeeh Counter
● Ayah of the Day
26
● Prayer Times
● Word of the Day
3.5 Non Functional Requirements
Performance
The performance of the system will be very good. It will perform all the tasks very correctly and provide
all the results quickly and accurately and provide the maximum accuracy in the search.
Usability
The system will be easy to use and understand. The web page will also provide a simple interface
for usability purposes. The user experience will be enhanced.
Accuracy
Our project will provide accurate results in terms of frequent words, hadith, and prayer timings.
Availability
The android app of our project will be available 24/7 offline.
Reproducibility
The project will be fully reproducible for future use. All code will be fully documented and
available for further improvements and research.

27
Chapter 4

28
4. Design and Architecture
4.1 System Architecture

The architecture of a system is the conceptual model that tells us about the behavior, structure,
and views of the system. For neural networks, we use architecture for better understanding. The
proposed model is built around the sequential model architecture. It is a plain stack of layers
where each layer has exactly one input tensor and one output tensor. It allows you to build a
model layer by layer in a step after step fashion.

Figure 4.1 System Architecture

4.2 Sequence Diagram

Figure 4.2 Sequence Diagram

29
4.3 Data Flow Diagram

DFD Level 0

This diagram represents the flow of data or process of the system. It gives complete information
about the outputs and is generated after providing the user’s inputs of each module and process
itself.

Figure 4.3 Data Flow Diagram Level 0

DFD Level 1 (a)

Figure 4.4 Data Flow Diagram Level 1 (a)

30
Figure 4.5 Data Flow Diagran Level 1 (b)

DFD Level 1 (c)

Figure 4.6 Data Flow Diagram Level (c)

4.4 Process Flow Diagram

A flowchart is a type of diagram that represents a workflow or process. A flowchart can also be
defined as a diagrammatic representation of an algorithm, a step-by-step approach to solving a
task. The flowchart shows the steps as boxes of various kinds, and their order by connecting the
boxes with arrows.

31
Figure 4.7 Flow Chart

32
Chapter 5

33
5.1 Implementation

In the implementation phase where visions and plans become reality. This is the logical
conclusion, after evaluating, deciding, visioning, planning, applying for funds and finding the
financial resources of a project.
5.1.1 Algorithm
• We don’t have to implement this application within any organization, educational institute,
or corporation, you just need to install it from the play store.
• Users can use all the services for free without paying any cost.
• The user doesn't need to have an internet connection to use the Application.
• Users can use only the android platform to use this application because it will be made in
the android studio platform and will not support iOS.
• Users cannot have the access to changes in the system functionalities.
• The user must have to use the provided interpreter.
• Admin must have access to all the applications.
• Admin can also add to remove errors and updates in the software for better use.
5.2 External API
Table 5.1 External API

List down
Name of API Description of API Purpose of usage the
function/class
name in which
it is used

This API helps to get To get prayer


Muslim Salat Prayer Timings
the prayers timings timings.
throughout the world.

34
Chapter 6

35
6. Testing and Evaluation
6.1 Manual Testing
Manual testing is a process of finding out the defects, and bugs in a software program, and this
testing verifies if all the features are working correctly or not. The tester manually executes the
test cases. Manual testing is the process of using the characteristics of an application as an end-
user. Considering the scope of the project and the time limitations, we will be performing the
following tests.

6.1.1 Authentication (Login)

Software: Android Studio


Test Description: We have a login on this system, and it authorized it successfully.
Testing Environment: Vysor

Test ID: 01

Table 6.1 Login Authentication Test Case

Preconditions The system must be connected with the database and have a stable
internet connection

Actions Enter user id and password. Expected

Expected Results The system authenticates user information with the help of a
Database.

Result You have successfully logged in to the system.

6.1.2 Authentication (Sign Up)


Software: Android Studio
Test Description: We have registered as a new user by entering a valid email address and
password.
36
Testing Environment: Vysor
Test ID: 02

Table 6.2 Sign up Authentication Test Case

Preconditions The system must be connected to the database and have a


stable
internet connection.
Enter user id and password and required details.
Actions
Expect The system authenticates credentials with the help of the
ed database.
Results
Result Successfully Sign up.

6.1.3 Logout

Software: Android Studio


Test Description: We have a logout option on this system, and it will successfully log out the user.
Testing Environment: Vysor
Test ID: 03

Table 6.3 Logout Test Case

Preconditions The user can logout.

Actions The system logout.

Expected Result Successfully logut from the account.

Result Successfully logout.

37
6.1.4 Quiz

Software: Android Studio


Test Description: We have a module “Quiz” on this system, and it will tell us whether it is
successful or not.
Testing Environment: Vysor
Test ID: 04
Table 6.4 Quiz Test Case

Preconditions The system must be connected with the database and have stable
internet connection

Actions Click on quiz button from the navigation bar. Expected

Expected Results The system will generate quiz from the data that user have learnt.
The quiz result will be according to user learning from the
application.

Result You have successfully Submit your quiz and it will give the result
to the user.

38
6.1.5 User Progress

Software: Android Studio


Test Description: We have a login on this system, and it will tell us whether the progress of
the user is saved successfully or not.
Testing Environment: Vysor
Test ID: 05

Table 6.5 User Progress Test Case

Preconditions The user must be logged in to access services.

Actions Click on the user progress button from the navigation bar.
Expected

Expected Results The system will generate User progress that what he has
learnt through the application.

Result Successfully tells the user progress.

6.1.6 Word of the Day

Software: Android Studio


Test Description: We have a login on this system, and it will tell us the word of the day with
present date.
Testing Environment: Vysor
Test ID: 05
39
Table 6.6 Word of the Day Test Case

Preconditions The user must be logged in to access services.

Actions Click on the Word of the day button then it will show it.

Expected Results The system will show the word of the day.

Result Successfully show the word of the day.

6.2 Tools Used


Table 6.6 Tools

Tools Version Rationale


Android Studio 2020.3 IDE
SQLite 3.36.0 DBMS
Tools MS Word 2016 Documentation
And MS Power Point 2016 Presentation
Technologie
s Figma 458-DX Mockups Creation
Technology Version Rationale

8.0.2910.
JAVA 10 Programming language
SQL 2019 Query Language
XML 1.1 Development

40
6.3 Mockups
Figure 6.1 Splash Screen Figure 6.2 Dashboard
Figure 6.3 Navigation Bar Figure 6.4 Words Frequency
Figure 6.5 Word Occurance Figure 6.6 Masnoon Duas
Figure 6.7 User Progress Figure 6.8 Tasbeeh Counter
Figure 6.9 Ayah of the Day
Chapter 7
7.1 Conclusion
To conclude that we have developed an android application that provides an easy way to
learn frequent words of the Quran in a super-fast way. As there are many repeating words in
the Holy Quran so there is a possibility to learn the frequent words at once. Our app will help
the user to learn the repeated word at the same time. Moreover, the app will allow the user to
check his/her progress. The user can also test his/her learning by taking quizzes. In short, this
application helps a lot to learn the Quran.

7.2 Future Work


Several functionalities can be added to this application in the future. Some of them are as
follows:
● We will store progress backup on google drive which needs the internet only when the
user wants backup.
● We will develop application for ios other than android so that more users can get
benefit from it.
● We will do voice processing so that if a user made a mistake while reading Quran, our
app will tell the mistake to the user.
● We will connect this application with server to access the data from the server
Chapter 8
8. References

[1] K. N. Mohd, A. H. Mohd Adnan, A. A. Yusof, M. K. Ahmad, and M. A. Mohd


Kamal, "Teaching Arabic language to Malaysian university students using education
technologies based on Education 4.0 principles," in Proceedings of the International
Invention, Innovative & Creative (InIIC) Conference, Series, 2019, pp. 38-51.
[2] M. Elobaid, K. Hameed, and M. E. Y. Eldow, "Toward designing and modeling of
Quran learning applications for android devices," Life Science Journal, vol. 11, pp.
160-171, 2014.
[3] W. K. Mujani, "History in the Quran according to the Risale-i Nur," Advances in
Natural and Applied Sciences, vol. 6, pp. 966-973, 2012.
[4] A. R. A. Hasan, A. R. A. Ghani, M. Jemali, N. Nasir, M. Y. M. Yusuf, and M. F. M.
Ariffin, "Learning Concepts and Educational Development of Hafazan Al-Quran in
the Early Islamic Century," International Journal of Academic Research in Business
and Social Sciences, vol. 7, pp. 628-636, 2017.
[5] S. Ilieva, P. Ivanov, and E. Stefanova, "Analyses of an agile methodology
implementation," in Proceedings. 30th Euromicro Conference, 2004., 2004, pp. 326-
333.
[6] A. Gemino and D. Parker, "Use case diagrams in support of use case modeling:
Deriving understanding from the picture," Journal of Database Management (JDM),
vol. 20, pp. 1-24, 2009.

You might also like