You are on page 1of 48

FINAL YEAR PROJECT

FINAL REPORT

AI Based Testing Service App

Group Members:

Abdul Jabbar Shah

Javeria Shaikh

Arsalan Ahmed

In Partial Fulfillment
Of the Requirements for the Degree
Bachelor of Science (CS/SE)

Sukkur IBA University,


Sukkur, Sindh Pakistan
(2022)
DECLARATION

We hereby declare that this project report entitled “AI based Testing Service App” submitted to the
“Department of Computer Science Sukkur IBA University”, is a record of an original work done by us
under the guidance of Supervisor Mr. Saif Hassan and that no part has been plagiarized without citations.
Also, this project work is submitted in the partial fulfillment of the requirements for the degree of Bachelor
of Computer Science.

Team Members Signature

Abdul Jabbar Shah ______________

Javeria Shaikh ______________

Arsalan Ahmed ______________

Supervisor: Signature

Saif Hassan ______________

Date: ______________

Place: ______________

1
DEDICATION

‘They only live, who live for others’ we dedicate this work to the pioneer of
Sukkur IBA University who always lived for others and established this
meritorious institute. Our work is completely dedicated to

Mr. Nisar Ahmad Siddiqui - A Beacon of Light

2
ACKNOWLEDGMENTS

First and foremost, we would like to express our deepest gratitude towards Allah
Almighty who guided us throughout this project and helped us to complete it. He gave us
the strength and courage to continue working hard even in challenging times and at last
introduced us to success.

Thanks to our parents who always prayed for our success and supported us on every
phase of life.

Thanks to our supervisor of this project “Saif Hassan” for his continuous support and
guidance, for being a mentor and sparing his precious time for guiding and advising us
regarding the project; and all the teachers and friends who helped us in the completion of
this project in the form of motivation, inspiration, and information.

Thanks to every single soul of Sukkur IBA University.

Abdul Jabbar Shah – Javeria Shaikh- Arsalan Ahmed

3
Table of Contents
ABSTRACT ........................................................................................................................................................ 7
1. CHAPTER 01 INTRODUCTION .................................................................................................................... 7
1.1. PROJECT SCOPE ........................................................................................................................................... 8
1.2. PROJECT BACKGROUND .............................................................................................................................. 8
1.3. PROJECT OBJECTIVES .................................................................................................................................. 9
1.4. STAKEHOLDERS ........................................................................................................................................... 9
1.5. OPERATING ENVIRONMENT ....................................................................................................................... 9
1.6. SYSTEM CONSTRAINTS .............................................................................................................................. 10
1.6.1. Software Constraints ............................................................................................................................ 10
1.6.2. Hardware Constraints .......................................................................................................................... 10
1.6.3. Legal Constraints .................................................................................................................................. 10
1.6.4. Cultural Constraints.............................................................................................................................. 10
1.6.5. User Constraints ................................................................................................................................... 10
1.7. ASSUMPTIONS & DEPENDENCIES ............................................................................................................. 10
2. CHAPTER 02 LITERATURE REVIEW ........................................................................................................... 11
2.1. TOOLS AND TECHNOLOGIES USED IN OUR PROJECT................................................................................. 12
2.1.1. HAAR Cascade Classifier:...................................................................................................................... 12
2.1.2. Numpy and pyzbar Library: .................................................................................................................. 13
3. CHAPTER 03 REQUIREMENT SPECIFICATION ............................................................................................ 14
3.1. FUNCTIONAL REQUIREMENTS ........................................................................................................................... 14
3.1.1. USE CASES ............................................................................................................................................... 14
Register ................................................................................................................................................................ 14
Login .................................................................................................................................................................... 15
API Call................................................................................................................................................................. 16
Fetch Data ........................................................................................................................................................... 17
Configure CCTV Camera ...................................................................................................................................... 18
Scan Face ............................................................................................................................................................. 19
Scan QR................................................................................................................................................................ 20
Validate Data....................................................................................................................................................... 21
Store Data............................................................................................................................................................ 22
Detect Gender...................................................................................................................................................... 23
3.2. NON-FUNCTIONAL REQUIREMENT .................................................................................................................... 24
3.2.1. Performance Requirements.................................................................................................................. 24
3.2.2. Safety Requirements ............................................................................................................................ 24
3.2.3. Security Requirement ........................................................................................................................... 24
3.2.4. User Documentation ............................................................................................................................ 25
4. CHAPTER 04 PROBLEM DEFINITION......................................................................................................... 26
4.1. PROBLEM DESCRIPTION ............................................................................................................................ 26
4.2. SOLUTION.................................................................................................................................................. 26
4.2.1. STS App ................................................................................................................................................. 26
4.2.2. STS Candidate Verification Web Portal ................................................................................................ 26
5. CHAPTER 05 METHODOLOGY.................................................................................................................. 27

4
5.1. PURPOSE ................................................................................................................................................... 27
5.2. SOFTWARE DEVELOPMENT METHODOLGY .............................................................................................. 27
5.2.1. Agile Methodology ............................................................................................................................... 27
5.3. USE CASE DIAGRAM ....................................................................................................................................... 30
5.4. CLASS DIAGRAM ............................................................................................................................................ 31
5.5. SEQUENCE DIAGRAM ...................................................................................................................................... 32
5.6. ER DIAGRAM ................................................................................................................................................ 34
6. CHAPTER 06 SYSTEM ARCHITECTURE ...................................................................................................... 35
6.1. SYSTEM 3-TIER ARCHITECTURE ................................................................................................................. 35
6.2. DATA FLOW DIAGRAM .............................................................................................................................. 35
7. CHAPTER 07 IMPLEMENTATION AND TESTING ........................................................................................ 36
7.1. IMPLEMENTATION .................................................................................................................................... 36
7.1.1. Font-end ............................................................................................................................................... 36
7.1.2. Back-end ............................................................................................................................................... 36
8. CHAPTER 08 RESULTS AND DISCUSSIONS ................................................................................................ 37
8.1. ADMINISTRATOR APP................................................................................................................................ 37
8.1.1. Splash Screen........................................................................................................................................ 37
8.1.2. Login Screen ......................................................................................................................................... 38
8.1.3. Signup Screen ....................................................................................................................................... 39
8.1.4. Test selection Screen ............................................................................................................................ 40
8.1.5. Statistics Screen.................................................................................................................................... 41
8.2. WEB PORTAL ............................................................................................................................................. 42
8.2.1. Welcome Screen ................................................................................................................................... 42
8.2.2. Login Screen ......................................................................................................................................... 42
8.2.3. Test selection Screen ............................................................................................................................ 43
8.2.4. Homepage Screen ................................................................................................................................ 43
8.2.5. Face Verification Screen ....................................................................................................................... 44
8.2.6. QR Validation Screen ............................................................................................................................ 44
8.2.7. Statistics Screen.................................................................................................................................... 45
9. CHAPTER 09 CONCLUSION AND FUTURE WORK ....................................................................................... 46
9.1. CONCLUSION ............................................................................................................................................. 46
9.2. FUTURE WORK .......................................................................................................................................... 46
10. CHAPTER 10 REFERENCES .................................................................................................................. 47

5
Table of Figures
Figure 1 : A sample of HAAR Features ___________________________________________________________ 13
Figure 2: System Development Methodology ______________________________________________________ 27
Figure 3: USE CASE DIAGRAM of STS Verification App ____________________________________________ 30
Figure 4: Class Diagram of STS Verification App __________________________________________________ 31
Figure 5: Sequence Diagram of Login Component __________________________________________________ 32
Figure 6: Sequence Diagram of Call API Component _______________________________________________ 33
Figure 7: Sequence Diagram of Scan QR Component _______________________________________________ 33
Figure 8: Sequence Diagram of Capture Facial Features Component ___________________________________ 34
Figure 9: ER Diagram of STS Verification App ____________________________________________________ 34
Figure 10: Architecture of STS Verification App _____________________________________________________ 35
Figure 11: Data Flow Diagram of our App ________________________________________________________ 35
Figure 12: Splash Screen of STS App ____________________________________________________________ 37
Figure 13 Login Screen of STS App ______________________________________________________________ 38
Figure 14 Signup Screen of STS App _____________________________________________________________ 39
Figure 15:Test Selection Screen of STS App _______________________________________________________ 40
Figure 16: Statistic Screen of STS App ___________________________________________________________ 41
Figure 17: Web Portal of STS Verification App ____________________________________________________ 42
Figure 18: Login Screen of Web Portal ___________________________________________________________ 42
Figure 19: Test Selection App of Web portal _______________________________________________________ 43
Figure 20: Homepage of STS Verification Web Portal _______________________________________________ 43
Figure 21: Face Detection Screen of Web Portal ___________________________________________________ 44
Figure 22:QR Validation Screen of Web Portal ____________________________________________________ 44
Figure 23: Statistics Screen of Web Portal ________________________________________________________ 45

6
ABSTRACT
The AI and Image Processing based deployable application that will help the Testing
services to recognize the candidates, validate their information and ultimately catch the
criminals/cheaters by the means of AI and Image Processing collectively.

The testing services are using manual methods to interact with the formal activities of
conducting a test, this is conventional optimal approach for small-scoped tests, but when it comes
to enlarging the domain of test to large crowd of candidates then we have need of and automated
AI based system which can be deployed on CCTV cameras to automate the formalities of any test
to be conducted.

Our system will be providing services by the means of AI, IP, and 3-tier architecture to
develop and deploy an application on CCTV hardware to detect and validate the information of
candidates appearing the test. Our System will mainly be based on following modules: Recognition
of candidates and validate the entries of candidates, catching inauthentic candidates from the large
crowd.

Also, we will deploy the project on cameras and take STS onboard.

1. CHAPTER 01 INTRODUCTION
Human behavior research is an infinite source of studies and a subject of significant scientific
interest. Several applications in this area, including video surveillance, human activity monitoring,
and physical performance assessments, have benefited from advances in computer vision
algorithms. Automated or semi-automated strategies have been used to address these issues.
However, there are other significant challenges that exist, making this topic research worthy. In
the past few years, the detection of human beings using surveillance system is getting more
attention because of its wide range of applications such as human counting, human identification,
classification of gender, human recognition etc. [1]

7
1.1. PROJECT SCOPE
The Project is used to lessen the overhead/burden the manual crowd checking in many areas of
applications, specifically the events/ tests or the programs where crowd needs to be identified and
verified, so when we see the project as a whole, we will get to know that this project is delivered
as a full-fledged implementable application based on the functionalities specified above (e.g.
Identification of Humans, Recognizing them, Authenticating them and collecting many
information about it). Thus, we can also see that every program or event that has requirement of
above functionalities to be done, we can use our system there.

1.2. PROJECT BACKGROUND


Testing service in Pakistan are at boom, there are various tests that are conducted by these
testing services such as job test, admission test etc. various testing services are there and one of
them is SIBA testing service.

In the recent previous months when STS conduct the test for PST and JEST jobs there were
very large number of applicants who appeared in the test. As STS provides transparency, merit,
and quality, they use multiple resources to identify and authenticate those candidates who appears
in the test so no impersonate or inauthentic candidate can appear in the test and do it on behalf of
another person. For authentication they have hire more employees at main entrance gate and then
after 1st checking candidates again are being checked on 2nd check point after that candidate are
again checked in the exam hall by invigilators, all this process creates discomfort, fatigue, stress
among employees as well as candidates as they first waited for long period of time and then again
and again checking of their NIC and Admit Card slip creates emotions of anger and annoyance.

In our proposed solution, we are making our efforts to automate the traditional way of
identification and authentication by developing AI Based testing service where we use advance
face verification techniques, authentication and validation using AI models and implement them
on CCTV camera at walk through gate of any testing center, this way we rid of the time
consumption by identifying candidates manually, number of invigilator will be less required,
quickly identify the impersonate and inauthentic candidates.

8
1.3. PROJECT OBJECTIVES
The objectives of project are listed below:
• To scan and validate candidates
• To show total number of candidates applied
• To show the number of candidates appeared in each center
• To show the number of approved and rejected candidates
• To detect the gender of candidate

1.4. STAKEHOLDERS
This system will be designed for testing services providers who wants to authenticate candidates
accurately by using the means of Artificial intelligence through surveillance camera, Like STS,
NTS or it can be used in events or gatherings where human recognition is required.

Admin:
• Admin will view information of centers and candidates in each center.
• Admin can add multiple test centers into system.
• Admin will add complete dataset of candidates in the system.
• Admin can view the overall statistics of every center.
Center Incharge:
• Center incharge will configure the system with cameras.
• Center incharge will handle operations executed by system.

1.5. OPERATING ENVIRONMENT

STS verification App, web-based software that will be compatible with following browsers

• Google Chrome
• Mozilla Firefox
• Safari
• Opera
• UC Browser

STS verification App Android App will be compatible with Android 4.4

9
1.6. SYSTEM CONSTRAINTS
1.6.1. Software Constraints
• Any kind of failure in operating system may cause the product to misbehave.
• An active internet connection is needed all the time to make the product work.

1.6.2. Hardware Constraints

• CCTV Surveillance Camera should be wireless and HD.

1.6.3. Legal Constraints

• Government should accept this project if we make it available for public

1.6.4. Cultural Constraints

• User should have technical understanding of system

1.6.5. User Constraints

• This project is developed for management of testing services, so it may be required that the project
has more technical performance along with suitable graphics rather than textual controls

1.7. ASSUMPTIONS & DEPENDENCIES


• User should have an active internet connection all the time to respond the system

10
2. CHAPTER 02 LITERATURE REVIEW
Recognition of human facial features dis a thing that people can do easily and without any
calculated thought, but it has been problematic in the area of computer vision. [2] Face recognition
theories and algorithms have attracted a lot of attention in recent decades. Unmanned and
autonomous vehicles, video surveillance, criminal identification, building access control, and
home security are just a few examples of actual applications that are gaining popularity across
these sectors. A system that can identify people based on their biological characteristics are very
easy to use. Every human face has different structure and features and that is the reason behind
facial recognition systems to become most widely used biometric authentication system. Due to
rapid growth in technologies such as digital cameras, portable devices and increase demand of
security these human facial recognition systems become the primary biometric and authentication
technologies. [3]. Face recognition, unlike other main biometrics, has the advantage of
accessibility and universality, in that everyone has a face and presents it freely. (Fingerprints, for
example, are much more difficult to capture, and a large percentage of the population has
fingerprints that cannot be captured with a quality sufficient for recognition.) [2] Human face has
advantages, and it has made this facial recognition technology one of the primary techniques for
human identification, some of noteworthy advantages are: 1. Intrusive Character: The face is a
very realistic biometric feature used by humans in the individual’s recognition, making it possibly
the most related biometric feature for authentication and identification purposes. For example, in
access control, it is simple for administrators to monitor and evaluate approved persons after
authentication, using their facial characteristics. The support of ordinary employers (e.g.,
administrators) may boost the efficiency and applicability of recognition systems. On the other
hand, identifying fingerprints or iris requires an expert with professional competencies to provide
accurate confirmation. 2. Nonintrusive: In contrast to fingerprint or iris images, facial images can
quickly be obtained without physical contact; people feel more relaxed when using the face as a
biometric identifier. Besides, a face recognition device can collect data in a friendly manner that
people commonly accept. 3. Less cooperation: Face recognition requires less assistance from the
user compared with iris or fingerprint. For some limited applications such as surveillance, a face
recognition device may recognize an individual without active subject involvement [4]. Our
proposed solution is based on continuous observation and using face recognition on convolutional
neural networks that will overcome this disadvantage of issues in identification by taking real time

11
face verification of every candidate in walk through gate without the interfere of any invigilator it
will separate out the real candidates and warn the impersonate. Our system will be providing
services by the means of AI, IP, and 3-tier architecture to develop and deploy an application on
CCTV hardware to detect and validate the information of candidates appearing the test.

2.1. TOOLS AND TECHNOLOGIES USED IN OUR PROJECT


2.1.1. HAAR Cascade Classifier:
We have used pre trained classifier to detect the facial features of human, our goal was to detect
face from person’s image and live video streaming. This classifier works accurate in comparison
with new modern day deep learning Techniques. It has fully trained models and this algorithm is
found to be used by many systems

2.1.1.1. How it works

The goal of face detection suggests that we identify faces from a person's entire image, recordings,
or live video. The faces are recognized using the HAAR Cascade Classifier. The HAAR Cascade
classifier has four steps:

• HAAR Feature Selection


• Creating an Integral Image
• Adaboost Training
• Cascading Classifiers

Our algorithm needs both good and bad pictures for identification of faces. Positive images include
both good and bad pictures without a face. These images must be used to train the classifier. The
HAAR function at a clear window area fits the surrounding rectangle area. It determines the total
pixel strength for each domain and looks for the truths there. This algorithm uses super quick
interior images and after a lot of functionality has been done the Adaboost is used to detect the
best match. [5]

12
Figure 1 : A sample of HAAR Features

2.1.2. NumPy and pyzbar Library:


A library written entirely in Python that reads one-dimensional barcodes and QR codes utilizing
the free source zbar library, which can read barcodes from a variety of sources, including video
streams, picture files, and raw intensity sensors. It accepts numerous widely used symbology
(types of bar codes)

13
3. CHAPTER 03 REQUIREMENT SPECIFICATION
3.1. Functional Requirements
3.1.1. Use Cases
Register
<Use case Id: Register account>

Use case Id: 03

Actors: Incharge of testing center

Feature: Name, password, phone no

Pre-condition: Incharge must be affiliated with testing management

Scenarios

Step# Action Software Reaction

System will check if the user is already registered


User enters Name, password, and or not
1.
contact details to register

2. User will complete registration process System will add the record in to database.

3. Registration process is completed

Alternate Scenarios:

1a:

Incharge can be changed in case if duty is assigned somewhere else.

Post Conditions

Step# Description

Incharge will be added to added to database and can login into system.

Use Case Cross referenced N/A

14
Login
The use case is about the” login” of Incharge and Administrator. This use case includes the Name
and Password features that will be used to login into the accounts that are registered already.

<Use case Id: login>

Use case Id: 04

Actors: center Incharge

Feature: Authentication

Pre-condition: User must be registered before login

Scenarios

Step# Action Software Reaction

1. User enter username and password System will validate the name and password

2. User gets login System will transfer user towards main page

Alternate Scenarios: Write additional, optional, branching, or iterative steps. Refer to specific
action number to ensure understandability.

1a:

User forgets the password: User will be asked to re-set the password by using alternative
options.

Post Conditions:

Step# Description

User will be redirected towards the user specific dashboard.

Use Case Cross referenced Register Account

15
API Call
This use case is about Calling API that contains information of all candidates.

<Use case Id: API Call>

Use case Id: 02

Actors: user

Feature: <Feature from which the use case is driven>

Pre-condition: User must login into system

Scenarios

Step# Action Software Reaction

1. User will request connection to API System will ask for Authentication details for
granting permission to access data

2.

Alternate Scenarios:

1a:

Post Conditions

Step# Description

Total candidates’ information will be retrieved from server

Use Case Cross referenced N/A

16
Fetch Data
<Use case Id: Fetch Data>

Use case Id: 05

Actors: User

Feature: databases

Pre-condition: Candidate is not detected by system but added into database

Scenarios

Step# Action Software Reaction

1. User will get connection to API System will ask for credentials

2. User will enter credentials for System will fetch data from server
tokenization

3. user will get database

Alternate Scenarios: Write additional, optional, branching, or iterative steps. Refer to


specific action number to ensure understandability.

1a:

Connection Denied: user will check for valid credentials

Post Conditions:

Step# Description

System will be able to compare databases in runtime.

Use Case Cross referenced Call API

17
Configure CCTV Camera
<Use case Id: Configure CCTV camera>

Use case Id: 06

Actors: user

Feature: id, password

Pre-condition: N/A

Scenarios

Step# Action Software Reaction

1. camera will be connected with System will show message for connection
system

Alternate Scenarios: Write additional, optional, branching, or iterative steps. Refer to


specific action number to ensure understandability.

1a:

Post Conditions:

Step# Description

Users can scan barcode and facial features are captured

Use Case Cross referenced N/A

18
Scan Face
<Use case Id: scan facial features>

Use case Id: 07

Actors: system

Feature: Authentication

Pre-condition:

Scenarios

Step# Action Software Reaction

1. System will scan the facial features Facial features are extracted.

Alternate Scenarios: Write additional, optional, branching, or iterative steps. Refer to


specific action number to ensure understandability.

1a:

Post Conditions:

Step# Description

Candidate will be validated by trained AI model

Use Case Cross referenced Configure cameras

19
Scan QR
<Use case Id: validate data>

Use case Id: 08

Actors: system

Feature: Authentication

Pre-condition:

Scenarios

Step# Action Software Reaction

1. System will validate the facial Facial features are matched, and beep sound
features will be generated

Alternate Scenarios: Write additional, optional, branching, or iterative steps. Refer to


specific action number to ensure understandability.

1a: face not recognized or validated: candidate will be checked manually

Post Conditions:

Step# Description

Candidate will be allowed to enter in test center

Use Case Cross referenced Detect Face

20
Validate Data
<Use case Id: validate data>

Use case Id: 08

Actors: system

Feature: Authentication

Pre-condition:

Scenarios

Step# Action Software Reaction

1. System will validate the facial Facial features are matched, and beep sound
features will be generated

Alternate Scenarios: Write additional, optional, branching, or iterative steps. Refer to


specific action number to ensure understandability.

1a: face not recognized or validated: candidate will be checked manually

Post Conditions:

Step# Description

Candidate will be allowed to enter in test center

Use Case Cross referenced Detect Face

21
Store Data
<Use case Id: store data>

Use case Id: 09

Actors: system

Feature: Data Transmission

Pre-condition: Data must be collected

Scenarios

Step# Action Software Reaction

1. System will store that data --------------------

Alternate Scenarios: Write additional, optional, branching, or iterative steps. Refer to


specific action number to ensure understandability.

1a: if data is not validated: user will manually validate data and store in database

Post Conditions:

Step# Description

Admin can view the data of candidates

Use Case Cross referenced Validate data

22
Detect Gender
<Use case Id: Detect Gender>

Use case Id: 10

Actors: system

Feature: ------

Pre-condition: Camera must scan and extract facial features

Scenarios

Step# Action Software Reaction

1. Camera will extract features System will identify gender of candidate

Alternate Scenarios:

1a: if gender is not correctly identified

Post Conditions:

Step# Description

-----------------

Use Case Cross referenced Scan facial features

23
3.2. Non-Functional Requirement
3.2.1. Performance Requirements

AI based testing service application will be used by testing services to validate the candidates with
the help of AI and Machine learning, therefore it is necessary that the verification algorithms used
in system can achieve accuracy score as high as 99% on assessments

• The system will be able to validate the candidates by extracting their features and match with database with
maximum accuracy.
• The system will save time and will use resources efficiently.
• The system will be able to handle modifications if required in future.
• The user interface of the system will be easy to use and simple and easy to learn.

3.2.2. Safety Requirements


• Database Crash: Due to a virus or an operating system malfunction or any other issue, the database
could crash at any time, as a result database backup is essential to ensure that the database is secure.
• Incorrect Input: The system will notify to correct input.
• Incorrect Data Format: Incorrectly formatted will not be stored. And guides user to accurately
format data.
• Malicious Users: The system can also be harmed by malicious users who hacks the system for any
purpose, so the system must verify the user before giving access to particular features or services.
Also, the user should not be allowed to change databases

3.2.3. Security Requirement


• The system must contain different type of user to define access constraints.
• The system should use secure database which everyone cannot access so proper authentication of
users is needed.
• The users except Admin can only just read related information they should not be allowed to edit
and modify the anything except their own personal and other information.
• Only admin should be allowed to update the database.

24
3.2.4. User Documentation
We will provide users with user’s manual and our contact details inside the application if they
need any help then we will be available for them.

25
4. CHAPTER 04 PROBLEM DEFINITION
4.1. PROBLEM DESCRIPTION
In less crowded area it is easier to identify and recognize humans and its actions and activities but
Human detection in dense crowds is a major issue, as it is a prerequisite to many other visual tasks,
such as tracking, counting, recognizing actions, or detecting anomalous behaviors, exhibited by
individuals in a dense crowd. This problem is challenging due to large number of individuals,
severe occlusions, and perspective distortion that we have observed in testing services where the
problem of authentication of candidates manually by testing services to test a large crowd affects
various things. Management must authenticate every single candidate to make sure that there is
not any impersonate candidate who enters into test centers. Checking ever single candidate
manually creates discomfort, fatigue, and stress among employees. Besides that, this manual
process affects many things such as cost of time, resources, budget, and efforts done by
management.

The objective of our idea is to make an automated AI and Image Processing based system which
can be deployed on CCTV cameras to automate the process of detection, recognition,
authentication, and validation of candidates. This system will help testing services in minimizing
the efforts to identify any suspicious/impersonate candidate to be entered in test centers.

4.2. SOLUTION
4.2.1. STS App
A mobile application will be provided to administrators of STS. Administrators can login to
App by creating an account and can check statistics of all Test Centers, i.e., Number of candidates
appeared, Number of accepted candidates, Number of male and female candidates.

4.2.2. STS Candidate Verification Web Portal


AI based STS verification web portal will be provided on each test center where test
incharge can login to system and then verify the candidates by face Recognition using CCTV
camera and QR validation will be done to ensure that every individual is having their original Slip.
this system will count every accepted and rejected candidate and will also detect their gender.

26
5. CHAPTER 05 METHODOLOGY
5.1. PURPOSE
This chapter is about defining and describing the design methodology we followed while making our STS
Verification App. This section will also provide a list of requirements to test the final product to determine
whether we are successful in implementing the system according to the proposed design.

5.2. SOFTWARE DEVELOPMENT METHODOLGY


5.2.1. Agile Methodology
AI based testing service assistance app is designed and developed by using the agile methodology.
With this strategy, it is possible to divide major projects into smaller sprints and thoroughly
examine the processes as they are being developed. Additionally, many tools were utilized to
manage, develop, and debug the project at various stages of its development. Following are the
different phases of agile methodology and different activities are performed during these phases.

Figure 2: System Development Methodology

27
Requirement
In this phase, requirements are gathered from stakeholders and these written requirements are used
to explain each stage of the project, including the expenses, assumptions, risks, dependencies, success
metrics, and dates for completion. These requirements are typically provided in a single document

Design

Here, software designers create scenarios, layouts, and data models to implement a technical
solution to the issues outlined in the product requirements. A higher-level or logical design that outlines the
project's goals, scope, general traffic patterns for each component, and interconnection points is first
produced. Once this is completed, it is converted using particular hardware and software technologies into
a physical design. The tools which were used in this phase are:

• Figma: Figma is a user interface designing tool. It was used to design the interfaces of web application and
mobile application (Expert4You).
• Star UML: Star UML is an open-source software modeling tool for designing system and software models.
The flowcharts and other diagrams for the projects, it was used to develop the diagrams for our project like
database diagram, class diagram, entity relation diagram, and so on.

28
Development

Technical development begins when the design is finished. Because design have already been
completed, this stage of the Waterfall process may be the fastest. This phase includes some testing and
implementation as well as the coding of applications based on project specifications and requirements.
Going back to the design phase may be necessary if substantial adjustments are needed during this stage.
• Visual studio code IDE: This code editor was used to develop the frontend of web applications,
since it is user-friendly and offers features and extensions like IntelliSense, debugging, snippets,
etc. and to develop backend of the project as it provides smart coding assistance for efficient
development.
• MongoDB Atlas:
MongoDB Atlas is Database Management Software, helped us to create, update, set permissions, and
connect the database with GUI based features. So, we used it while sending data and receiving from the
MongoDB Database.

• Android Studio:
Android Studio provides the complete development environment to develop ready-to-
run Android application, so we used it to make the analytic application for administrator
to show the analysis and stats
• Heroku:
Heroku helped us to deploy the application on live server to be used from every part of the world, so
we deployed our APIs and Database onto the Heroku with its supported libraries.

Verification and Testing

Testing is necessary before a product is made available to users to make sure there are no
flaws and that all requirements have been met, resulting in a positive user experience with the
software. The testing team will base their test cases on the personas, user case scenarios, and
design papers provided by the product manager.
• Postman: It is a tool to test the APIs. It presents a user-friendly interface to set test and
see if the created APIs passes those tests.
Maintenance

Once the software has been deployed in the market or released to customers, the maintenance
phase begins. As defects are found and change requests come in from users, a team will be
assigned to take care of updates and release new versions of the software.
5.3. Use Case Diagram

Figure 3: USE CASE DIAGRAM of STS Verification App


5.4. Class Diagram

Figure 4: Class Diagram of STS Verification App


5.5. Sequence Diagram
LOGIN

Figure 5: Sequence Diagram of Login Component


CALL API

Figure 6: Sequence Diagram of Call API Component

SCAN QR

Figure 7: Sequence Diagram of Scan QR Component


CAPTURE FACIAL FEATURES

Figure 8: Sequence Diagram of Capture Facial Features Component

5.6. ER Diagram

Figure 9: ER Diagram of STS Verification App


6. CHAPTER 06 SYSTEM ARCHITECTURE
6.1. SYSTEM 3-TIER ARCHITECTURE
Figure 10 shows the architecture of our proposed system. It is three-tier architecture including
a presentation tier (user interface), an application tier where data is processed, and a data tier or
back-end where data is stored and managed (database).

6.2. DATA FLOW


DIAGRAM

Figure 10: Architecture of STS Verification App

Figure 11: Data Flow Diagram of our App

The given figure is an abstract view of the architecture of the system we developed. In our
system we have a web-based portal which is developed on React js and one android application
and one server which is hosted remotely. The two main apps web app and mobile app are
responsible of validating candidates through facial recognition and QR code validation.
7. CHAPTER 07 IMPLEMENTATION AND TESTING
7.1. IMPLEMENTATION
7.1.1. Font-end
• React JS: React JS is a Library Used for frontend web-based pages and routing, created
pages like dashboard, face/QR verification, also analytics for showing data to web-view.
• Android: Used to develop android application for the administrators, to analyze and watch
the data of each test center along with statistics etc.
• Flask: Used to integrate AI based Algorithm to Web, like face-recognition HAAR cascade
algorithm to show on web view and same goes for QR validation algorithm

7.1.2. Back-end
• Node JS: It is used for Backend REST APIs development, with supported libraries like
express, mongoose, JWT. The REST APIs for GET/POST/PUT/DELETE Methods are
made by using this.
• Flask-Backend: Face Recognition algorithm has to send the data to the database so for
this purpose we used Flask Backend Server-Side language to make APIs and send the data
to be fetched by the Android and centralized Backend System
• DLIB: DLib is the set of development tools supports the facial recognition algorithms
and provide support to run seamlessly onto the web. With other dependent libraries.
• CMake: CMake allows us to install and use DLib Development tools as well as C++
dependencies
• Pillow: Pillow is also one of the Dependency to use DLIB and CMAKE development
environment and its libraries to be loaded with no Warnings or errors
• Open CV: Open CV natively supports Image Processing, its role is at high rate in our
application, it is used to load images and provide to algorithm and return us back to show,
also helped us to convert QR code and decode it.
• Mongo Db MongoDB is no SQL database, it is fast and efficient, so we used it to send
and receive our data onto the server.
8. CHAPTER 08 RESULTS AND DISCUSSIONS
8.1. ADMINISTRATOR APP
8.1.1. Splash Screen

Figure 12: Splash Screen of STS App


8.1.2. Login Screen

Figure 13 Login Screen of STS App


8.1.3. Signup Screen

Figure 14 Signup Screen of STS App


8.1.4. Test selection Screen

Figure 15:Test Selection Screen of STS App


8.1.5. Statistics Screen

Figure 16: Statistic Screen of STS App


8.2. WEB PORTAL
8.2.1. Welcome Screen

Figure 17: Web Portal of STS Verification App

8.2.2. Login Screen

Figure 18: Login Screen of Web Portal


8.2.3. Test selection Screen

Figure 19: Test Selection App of Web portal

8.2.4. Homepage Screen

Figure 20: Homepage of STS Verification Web Portal


8.2.5. Face Verification Screen

Figure 21: Face Detection Screen of Web Portal

8.2.6. QR Validation Screen

Figure 22:QR Validation Screen of Web Portal


8.2.7. Statistics Screen

Figure 23: Statistics Screen of Web Portal


9. CHAPTER 09 CONCLUSION AND FUTURE WORK
9.1. CONCLUSION

STS Verification App and Web Portal is to create to help STS administrators to manage the
verification process efficiently with the help deep learning algorithm.

This App will help the administrators in reducing overhead and burden of manual process that
is done at test centers.

Moreover, this app is not limited to be used by testing services only, but it can be used and
implemented by various same-domain based organizations, they can verify and validate the
candidate just by giving one single picture as dataset and all other things will work
automatically so it is multi-purpose app to be used by many organizations.

9.2. FUTURE WORK

Recently, a lot of FinTech companies like SadaPay and NayaPay are introducing and using
Image Processing based fingerprint scanning to verify the user directly from the NADRA
Database, as our project is extendable, this approach can be used in our project to enhance the
accuracy of validation and verification.

Moreover, we can also link NADRA Images database to verify the candidate with Both
Sources, one is STS Provided Picture and other is NADRA one. So, it can also make the
accuracy at next level.

As we have used HAAR Cascade that uses advanced Pattern recognition but even if someone
provides too old picture, then we can use other AI and Deep Learning techniques to predict the
newer version of picture.

That’s it, we are providing Ready-to-use Plug and Play Product here. Extend if you want.
10. CHAPTER 10 REFERENCES

[1] M. Paul, Haque, Shah M. E. and C. S. , "Human detection in surveillance videos and its
applications," EURASIP Journal on Advances in Signal Processing, 2013.

[2] A. W. senior and R. . M. Bolle, "Face Recognition and its Applications," The Springer
international series in Engineering and Computer Science, p. 15.

[3] Y. Kortli, "facial recognition systems," Sensor(Basel), 2020.

[4] A. Insaf, O. Abdeldjalil and B. Amir, "past,Present and Future of Face Recogniton: A Review,"
Electronics, 2020.

[5] M. Anup, S. F.M. and R. Rumesh, Human face Recognition Applying HAAR Cascade Classifier,
2022.

[6] S. B. M. M. Pallavi Choudekar, "REAL TIME TRAFFIC LIGHT CONTROL USING IMAGE
PROCESSING," Indian Journal of Computer Science and Engineering, 2011.

[7] Maheswari_2020, "An Efficient Number Plate Detection System Based on Indian Traffic Rules,"
{IOP} Conference Series: Materials Science and Engineering, vol. 993, p. 012100, 2020.

You might also like