SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem...

66
SMART ATTENDANCE SYSTEM USING QR CODE WITH SMS NOTIFICATION FATIN NADZIRAH BINTI ABDUL KHALID@MOHAMMED BACHELOR OF COMPUTER SCIENCE (SOFTWARE DEVELOPMENT) WITH HONOURS UNIVERSITI SULTAN ZAINAL ABIDIN 2020

Transcript of SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem...

Page 1: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

SMART ATTENDANCE SYSTEM USING QR CODE

WITH SMS NOTIFICATION

FATIN NADZIRAH BINTI ABDUL KHALID@MOHAMMED

BACHELOR OF COMPUTER SCIENCE

(SOFTWARE DEVELOPMENT)

WITH HONOURS

UNIVERSITI SULTAN ZAINAL ABIDIN

2020

Page 2: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

i

DECLARATION

I, Fatin Nadzirah Binti Abdul Khalid@Mohammed (matric number: BTAL 17046392)

hereby declare that this report entitled Smart Attendance System using QR Code with SMS

Notifications is based on my original work except for quotations and citations, which have

been acknowledge. This work was done by me under the guidance of supervisor, Dr. Wan

Aezwani Binti Wan Abu Bakar from Faculty of Informatics and Computing UniSZA.

_______________________________________

Name: Fatin Nadzirah Binti Abdul Khalid @ Mohammed)

Date:

Page 3: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

ii

APPROVAL

This project report entitled Smart Attendance System using QR Code with SMS

Notifications by Fatin Nadzirah Binti Abdul Khalid @ Mohammed, matric number

BTAL17046392 has been satisfactory in terms of scope, quality and presentation a partial

fulfilment of the requirements for Bachelor of Computer Science (Software Development)

in Universiti Sutan Zainal Abidin (UniSZA).

______________________________________

Supervisor: Dr. Wan Aezwani Binti Wan Abu Bakar

Date:

Page 4: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

iii

DEDICATION

Alhamdulillah, all praise to Allah SWT for giving me the opportunity to complete my

thesis for my final year project entitles “Smart Attendance System using QR Code with

SMS Notifications”. I would like to express my deepest gratitude to my supervisor, Dr.

Wan Aezwani Binti Wan Abu Bakar for guiding me to complete my thesis and for the

kindness and motivation to this project.

I would also like to express my sincere appreciation to all lecturer that directly or

indirectly involved with my thesis writing and guide me throughout my years in UniSZA.

Last but not least, special thanks goes to my parents, family and friends for their endless

support and encouragement throughout my studies.

Page 5: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

iv

ABSTRACT

It is undeniable that expert system application is gaining popularity. Advancement in

computer technology has influence the development in many other fields including

environment security and making it easier for users to work with technology. Smart

Attendance System using QR Code with SMS Notification will be developed for helping

lecturers to manage student attendance. Nowadays, taking attendance manually by using

paper and pen was one approach used by the lecturers even they knew the process seems

slow and unproductive. Regarding this system, it will facilitate the lecturers to overcome

the issues instead of using the manual system. Besides, the system will notify the parents

weekly regarding the student attendance. It is to ensure the parents notice about student

attendance and avoid student from play truant to class. This system used Iterative model as

a guidelines for the development process. Besides, this system used PHP, MySQL and

Apache. MySQL is a center for storing the data involves while PHP language was selected

to be used for the system development. This attendance system aimed to facilitate the

lecturers whereby the student attendance record is automatically saved in database. The

lecturers, student and parent can view it anytime. Regarding the attendance record, the

lecturers need to login the system and choose the program either diploma or bachelor,

course code, class and semester and the students need to scan the QR Code that have been

set by the lecturers before the class session starts. This system will be an alternative solution

for lecturers to streamline the process of taking the student attendance in order to notify

the parents weekly via SMS notification and save the time.

Page 6: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

v

ABSTRAK

Tidak dapat dinafikan lagi bahawa aplikasi sistem pakar semakin popular. Kemajuan dalam

teknologi komputer telah mempengaruhi perkembangan dalam banyak bidang termasuklah

keselamatan persekitaran dan memudahkan pengguna untuk bekerjasama dengan

teknologi. Sistem Kehadiran Pintar menggunakan Kod QR dengan Pemberitahuan SMS

akan dibangunkan untuk membantu pensyarah dalam menguruskan kehadiran pelajar. Pada

masa kini, kehadiran diambil secara manual dengan menggunakan kertas dan pen

merupakan satu pendekatan yang digunakan oleh pensyarah walaupun mereka tahu

prosesnya agak lambat dan tidak produktif. Berkaitan dengan sistem ini, ia akan

memudahkan pensyarah dalam mengatasi isu-isu dan bukannya menggunakan sistem

secara manual. Selain itu, sistem akan memberitahu ibu bapa pada setiap minggu tentang

kehadiran pelajar. Ini adalah bagi memastikan ibu bapa dapat melihat kehadiran pelajar dan

mengelakkan pelajar daripada ponteng kelas. Sistem ini menggunakan model Iteratif

sebagai panduan untuk proses pembangunan. Selain itu, sistem ini menggunakan PHP,

MySQL dan Apache. MySQL adalah pusat menyimpan data yang terlibat manakala bahasa

PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk

memudahkan pensyarah, di mana rekod kehadiran pelajar disimpan secara automatik

dalam pangkalan data. Pensyarah, pelajar dan ibu bapa boleh melihatnya pada bila-bila

masa. Berkaitan dengan rekod kehadiran, pensyarah perlu memasuki sistem dan memilih

Page 7: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

vi

program sama ada diploma atau sarjana muda, kod kursus, kelas dan semester dan pelajar

perlu mengimbas Kod QR yang telah ditetapkan oleh pensyarah sebelum sesi kelas

bermula. Sistem ini adalah penyelesaian alternatif bagi pensyarah untuk menyelaraskan

proses mengambil kehadiran pelajar untuk memberitahu ibu bapa setiap minggu melalui

pemberitahuan SMS serta menjimatkan masa.

Page 8: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

vii

TABLE OF CONTENT

DECLARATION I

APPROVAL II

DEDICATION III

ABSTRACT IV

ABSTRAK V

TABLE OF CONTENT VII

LIST OF FIGURES X

LIST OF TABLES XII

LIST OF ABBREVIATIONS XIII

CHAPTER 1 1

INTRODUCTION 1

1.1 Introduction 1

1.2 Project Background 2

1.3 Problem Statement 3

1.4 Objective 3

1.5 Scope 4

1.6 Limitation of Work 5

1.7 Expected Result 5

1.8 Gantt Chart 6

Page 9: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

viii

CHAPTER 2 7

LITERATURE REVIEW 7

2.1 Introduction 7

2.2 System Problem 8

2.3 Solution Approach 11

2.3.1 QR Code Technology 11

2.4 Summary of Chapter 13

CHAPTER 3 14

METHODOLOGY 14

3.1 Introduction 14

3.2 Project Methodology 15

3.1.1 Initial Planning 16

3.1.2 Planning Phase 16

3.1.3 Analysis Phase 17

3.1.4 Design Phase 17

3.1.5 Implementation Phase 18

3.1.6 Testing Phase 18

3.1.7 Deployment Phase 19

3.1.8 Evaluation Phase 19

3.3 System Requirement 20

3.3.1 Software Requirements 20

3.3.2 Hardware Requirements 21

3.4 System Design and Modelling 22

3.4.1 Framework 23

3.4.2 Context Diagram 25

3.4.3 Entity Relationship Diagram 26

3.4.4 Data Flow Diagram 27

3.5 Database Design 37

3.5.1 Database Attendances 37

3.5.2 Table Admin 38

3.5.3 Table Student 39

3.5.4 Table Lecturer 42

Page 10: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

ix

3.5.5 Table Parent 44

3.5.6 Table attendance 46

3.5.7 Table Program 48

3.5.8 Table Course 49

3.5.9 Table Class 51

REFERENCES 52

Page 11: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

x

LIST OF FIGURES

FIGURE TITLE PAGE

2.2 Existing Application

2.3.1 QR Code Unique Structure

3.2 Iterative Model

3.4.1 Framework

3.4.2 Context Diagram (CD)

3.4.3 Entity Relationship Diagram (ERD)

3.4.4 Data Flow Diagram (DFD)

3.4.4.1 DFD Level 1 for Manage Student

3.4.4.2 DFD Level 1 for Manage Lecturer

3.4.4.3 DFD Level 1 for Manage Parent

3.4.4.4 DFD Level 1 for Manage Admin

3.4.4.5 DFD Level 1 for Manage Attendance

3.4.4.6 DFD Level 2 for Manage Program

3.4.4.7 DFD Level 2 for Manage Course

3.4.4.8 DFD Level 2 for Manage Class

3.5.1 Database of Attendance

3.5.2 Table Admin

3.5.3 Table Student

3.5.4 Table Lecturer

3.5.5 Table Parent

3.5.6 Table Attendance

3.5.7 Table Program

Page 12: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

xi

3.5.8 Table Course

3.5.9 Table Class

Page 13: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

xii

LIST OF TABLES

TABLE TITLE PAGE

1.8 Gantt Chart

2.2 Literature Review

3.3.1 Software Requirements

3.3.2 Hardware Requirements

3.5.2 Admin Table

3.5.3 Student Table

3.5.4 Lecturer Table

3.5.5 Parent Table

3.5.6 Attendance Table

3.5.7 Program Table

3.5.8 Course Table

3.5.9 Class Table

Page 14: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

xiii

LIST OF ABBREVIATIONS

CD Context Diagram

DFD Data Flow Diagram

ERD Entity Relationship Diagram

QR Quick Response

PHP Hypertext Preprocessor

MySQL My Structured Query Language

Page 15: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

1

CHAPTER 1

INTRODUCTION

1.1 Introduction

This section is the introduction of report for the developed system. It will equip the basic

overview of the whole system. This chapter present about the project background, problem

statement, objectives, scope and limitation of works. The general information regarding

the system will be stated in background section of the report. The objectives state the main

goal of the system meanwhile the scope reveals who the user of the system and what the

users can do. Lastly, the limitation of works state the limit of the system and what is not

covered in this system.

Page 16: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

2

1.2 Project Background

Nowadays, technology is really influential and it is the core elements in almost educational

institutions. They started to initiate the organization with technology. Usually, the

institutions used manual process for recording the attendance by using paper and pen. It

was one approach that has been used in almost institutions even the process seems slow

and unproductive.

This thesis is about smart attendance system using QR code with sms notifications

which will streamline the process of taking the attendance. Despite the use of QR code in

educational institutions is not something new, but it is intended to reveal the use of

technology that can solve the daily problems.

This system will help facilitate attendance information of a particular student in a

particular class and it is under the supervision of lecturers to generate the QR Code and to

collect data of the attendance. Besides helping the educators, the system may also notify

the parents weekly regarding the student attendance and it is an alternative solutions to

avoid the students from play truant and trying to cheat on their attendance by asking friends

to put initial on the attendance sheet.

Page 17: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

3

1.3 Problem Statement

Most of the attendance system is used manually which every student needs to sign the

attendance sheet paper and the lecturer needs to print new attendance sheet every week.

Some problems with this manual system are:

I. Record of student attendance are done manually by using attendance sheet during

class session.

II. The attendance sheet could be lost and it gives opportunity for students to cheat

their attendance.

III. Students play truant and parents did not notify their children’s attendance for

classes.

1.4 Objective

The main objectives for this project are:

I. To design an efficient computerized attendance system to be used for lecturers,

students and parents.

II. To implement the system to facilitate the lecturers managing student’s attendance.

III. To evaluate the effectiveness of the system in order to notify parents regarding the

students attendance.

Page 18: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

4

1.5 Scope

The general scope for this project is to manage the process of taking attendance.

I. Admin

a. Has privileges to control and manage all lecturer, student and parent

management.

II. Lecturer

a. Lecturer may login the system which username and password provided by

admin.

b. Lecturer can edit, update and take attendance of the class.

c. Lecturer can view the attendance list of the students and generate the report.

III. Student

a. Student needs to login the system which username and password provided by

admin.

b. Student can update the profile or register their parent information.

IV. Parent

a. Parents can login to the system which username and password provided by

admin.

b. Parents may receive weekly attendance report via sms notifications and online

system.

Page 19: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

5

1.6 Limitation of Work

There are no devices provided for this system and the possibility for difficulties will occur

for the system to notify the weekly report if the parent stays abroad and not set the number

for international caller.

1.7 Expected Result

• The system able to manage student attendance record efficiently.

• The system able to facilitate lecturers to collect data and information.

• The system notifies the attendance record for parents effectively.

Page 20: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

6

1.8 Gantt Chart

Table 1.8: Gantt chart

Page 21: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

7

CHAPTER 2

LITERATURE REVIEW

2.1 Introduction

In order to understand more about this system, readings involving related literature

was done. The source of references were important to classify the problems and to gain

possible solutions to the problems. The aims are to find, understand and master the related

approaches to the project and therefore article, journal and existing system are referenced.

The technology that will be used will be discussed briefly in this chapter.

Page 22: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

8

2.2 System Problem

The system problem is revealing the comparison between the existing system or

applications with its strength and limitation.

Currently in University Sultan Zainal Abidin (UniSZA) is using manual method in

managing the student attendance while in University of Mara Technology (UiTM) used

mobile application to record the attendance. The system is focus on recording attendance

for class, test and event. The users will be notified for any new activity that has been

updated and can be set for any five languages.

Figure 2.2: Existing Application

Page 23: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

9

Table 2.2: Literature Review

CITE AUTHOR/YEAR OBJECTIVES/

METHOD

STRENGTH WEAKNESS/

LIMITATION

[1] Md Rizal Md

Henry, Mohd Noah

A.Rahman &

Afzaal.H.Seyal

(2017)

• The

proposed

attendance

system by

scanning the

QR Code on

the student

card using a

webcam and

attached to a

computer

system.

• The QR

Codes has

ability to

remain

function

when a part

of QR

Code is

broken.

• The loss of

student card

brings

difficulties

to take

attendance.

[2] Xiong Wei,

Anupam Manori,

N..,N.. & Vivek

Kumar

(2017)

• QR Code

system is

used to

computerize

the

traditional

way of

recording

attendance

and provide

efficient

method to

track

attendance.

• All process

of

managing

the student

attendance

record and

report are

performed

online and

can be

viewed via

mobile

phones.

• The teacher

needs to

scan the QR

Code of the

particular

student in

order to

confirm

their

attendance.

Page 24: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

10

• An Android

app is

developed to

take

attendance

& generate

student

attendance.

[3] Nabeel Salih Ali,

Ali Al Farawn,

B.., Haider

Alsharqi

(2018)

• It focuses on

proposing a

RFID based

on

Attendance

Management

System &

information

service

system for

an academic

domain.

• Student no

need

connected

to the

internet as

RFID is a

wireless

technology.

• This system

cannot be

performed if

student lose

their student

card.

[4] Arpankumar

Patel, Ansel

Joseph,Shubham

Suravase &

Rohini Nair

(2019)

• The

proposed

system use

QR Code by

using

android

application.

• The lecturer

does not

have to

maintain

any record

as data get

stored in

database.

• The system

is solely

based on

strong

internet

connectivity.

Page 25: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

11

2.3 Solution Approach

Solution approach part explained about the possible approach that will be applied in this

system. Thus, the technique that we will be used is QR Code.

2.3.1 QR Code Technology

QR Code, stands for Quick Response Code, is a two dimensional code used to record

thousands of characters and numbers in a small image created by Denso-Wave Corporation

of Japan in 1994. The QR Code is arranged in columns and rows of black and white colors

designed to be read by smartphone users. Users utilize the QR Code can simply use the

software decode built-in into the applications to convert scanned code images into the

coded information and save it into the database. [1] QR Code systems have been used

widely in many application areas, such as transport ticketing, entertainment, commercial

tracking or product labeling, etc. In this system, the users will scan the QR Code that

generates by the lecturer. The system records the attendance based on user information

extracted from the QR Code. The code that will be used here is to read the data and store

it into the database so that the system could retrieve it from the database.

Page 26: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

12

Figure 2.3.1: QR Code Unique Structure

• Position patterns- It helps scanner find the edges of QR Code.

• Version information- It is directly connected with their dimensions and the amount

of data which should be encoded.

• Timing patterns- It enables the scanning software to understand the width of a

single module.

• Format Information- It helps the scanning device to define the data format, encoded

in the QR code.

• Alignment patterns- It allows the scanning device to define the possible perspective

distortion of the QR code image.

• Data and error correction keys- It has a capability to remain scan able even if it

damaged.

Page 27: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

13

2.4 Summary of Chapter

This section summarizes related papers or techniques for the proposed system. The

knowledge, ideas and information from the review could help the development of the

proposed project.

Page 28: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

14

CHAPTER 3

METHODOLOGY

3.1 Introduction

Methodology is a specific procedure used to complete the project. The main function of

the methodology is to ensure the project can meet user requirements and the system could

be run smoothly. In this chapter, it also explains the justifications for the use of methods

or approaches during the design and implementation of this system and as well as hardware

and software requirements. This system development life cycle used Iterative model and

this chapter also discuss about the technique to express, visualize, analyze and transform.

Page 29: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

15

3.2 Project Methodology

In this method, there are a few phases of software development. Each phase has its own

specific task and purpose. The explanation of each phase are described in the following

subsection.

Figure 3.2: Iterative Model

Page 30: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

16

3.1.1 Initial Planning

In this phase, it begins with brainstorming session with the supervisor to come up with

the idea and the title for the proposed project. The proposed project were listed and

finally title have been decided which is Smart Attendance System using QR Code with

SMS Notifications. During this phase, the problem of the system was identified before

proceed to next phase.

3.1.2 Planning Phase

This phase is the first stage where the specific goals were identified. This planning

process includes the detailed overview of each goal, including the reason for its

selection and the outcomes of goal system. Then, the discussion continues with the

supervisor in order to reveal the problem statements, objectives and the scope based on

user requirements.

Page 31: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

17

3.1.3 Analysis Phase

During analysis phase, all the requirements was analyzed and the problems fully

understood. The information from related journal, papers and existing system was

gathered to have a better understanding in developing the system. This phase does not

include any building or prototyping. All the questions were attempted to ask and

answered by the supervisor in order to have a secure product requirements.

3.1.4 Design Phase

In this phase, Context Diagram (CD), Entity Relationship Diagram (ERD), Data Flow

Diagram (DFD), interface and database was designed to know more details about the

system. ERD is a data modeling technique that graphically illustrates an information

system’s entities and the relationships between those entities. DFD is graphical

representation of the flow of data through an information system, modelling its process

aspects.

Page 32: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

18

3.1.5 Implementation Phase

In this phase, it takes the prototype from the design phase and converts in working

model. The decisions from the previous phases will influence how the implementation

phase will be actually carried out. The system is a web based system and will be

developed using Programming Language Hypertext Preprocessor (PHP) which is used

for coding the system meanwhile PHPmyadmin is used to code the database.

3.1.6 Testing Phase

In this phase, the system is tested and bugs is corrected to determine whether the system

meets the specified requirements and find any errors occur in the coding before the

system can be used by the users. Finally, the system needs to be repeated if there is any

bugs or errors occur.

Page 33: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

19

3.1.7 Deployment Phase

The system is ready to be used by the user. Once the system is stable, it is reviewed

that the system meets all the goals in the project plan for their satisfaction.

3.1.8 Evaluation Phase

In evaluation phase, the effectiveness of program operations, implementation, and

service delivery were analyzed. It helps to determine the effectiveness of program

management and determine either the system meets all the requirements or not.

Page 34: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

20

3.3 System Requirement

The types of system requirements that have to be fulfilled during the development

process are software and hardware requirements. The details are as follows:

3.3.1 Software Requirements

Table 3.3.1: Software Requirements

NO. SOFTWARE DESCRIPTION

1 Microsoft Office 2013

Microsoft Word 2013

Microsoft Powerpoint 2013

Tools for creating and

editing the document,

slides and Gantt chart.

2 Web Browser

Google Chrome

Google Scholar

Used to gather

information related to the

project.

3 Local Web Server

Xampp(PHPMyAdmin)

Act as platform to create

database and also as a

server to the system.

4 Open source

Windows 8

Use to develop the project

5 Scripting using Notepad++ Used to write code script

for development system.

6 Drawing using draw.io Tools for creating CD,

DFD and ERD

Page 35: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

21

3.3.2 Hardware Requirements

Table 3.3.2: Hardware Requirements

NO. HARDWARE DESCRIPTION

1 Laptop OS: Windows10

Processor: Intel inside Core i5 up to

2.8GHz

RAM: 2GB

Function: To develop system

2 Printer CANON iP2700 series

3 Pendrive Color Turn (8GB)

Function: For transferring data

4 Projector Connector Function: Intended for outputting user

generated content such as presentations

and work documents.

Page 36: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

22

3.4 System Design and Modelling

The design for Smart Attendance System using QR Code such as framework, context

diagram (CD), data flow diagram (DFD) and entity relationship diagram (ERD) are

explained in the details to ensure the development process is easily done. Based on the

system, the framework shows the system flow, the Context Diagram (CD) and Data

Flow Diagram (DFD) shows the physical design of the system while the Entities

Relationship Diagram (ERD) act as the logical design of the system.

Page 37: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

23

3.4.1 Framework

Figure 3.4.1: Framework of the system

Figure 3.4.1 shows the framework of the system that involves admin, student, lecturer

and parent. The student needs to scan the QR Code before the class session starts. They

may also login to the system by entering the username and password that have been

provided by the admin in order to view their previous attendance list. Then, the

Page 38: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

24

lecturers need to login into the system by entering the username and password. They

able to choose program code, course code and the time to record the attendance for the

course. The result of the attendance will be automatically save in the database. Besides,

the admin has privileges to control all user. They can login into the system to edit,

delete and update information in the system.

Page 39: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

25

3.4.2 Context Diagram

Figure 3.4.2: Context Diagram

The context diagram for the Smart Attendance System using QR Code with SMS

Notifications is shown in the figure above. There are three users for this system which

consists of admin, lecturer, students and parents. The users can login to the system by

entering the username and password. The lecturer need to program code, course code

and class code as the starter of attendance process. Admin can update any information

related to the lecturer and student details meanwhile the student can login to the system

only for viewing their attendance or update profile.

Page 40: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

26

3.4.3 Entity Relationship Diagram

Figure 3.4.3: ERD of Smart Attendance System

Figure 3.4.3 shows the ERD of the system that illustrates system’s entities information

and entities relationship. ERD consists of 3 components such as identifying and

defining the entities, determine entities interaction and the cardinality of the

relationship.

Page 41: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

27

3.4.4 Data Flow Diagram

Figure 3.4.4: Data Flow Diagram (DFD)

Page 42: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

28

Figure 3.4.4 shows the Data Flow Diagram of the system. The DFD has four entities which

are ADMIN, LECTURER, STUDENT and PARENT. There are nine(9) main process

involved in this system which is Manage Student, Manage Lecturer, Manage Parent,

Manage Admin, Manage Attendance, Manage Program, Manage Course, Manage Class

and Generate Report. There are eight (8) data store in this system which are student,

lecturer, admin, parent, attendance, program, course and class.

Page 43: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

29

Figure 3.4.4.1: DFD Level 1 for Manage Student

Figure 3.4.4.1 shows DFD Level 1 for Manage Student. There are four small process

which includes Add student, Update student, Delete student and View student. All the

data involved in the process will be store in the data store Student Record.

Page 44: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

30

Figure 3.4.4.2: DFD Level 1 for Manage Lecturer

Figure 3.4.4.2 shows DFD Level 1 for Manage Lecturer. There are four small process

which includes Add lecturer, Update lecturer, Delete lecturer and View lecturer. Admin

can edit the details information about lecturers. . All the data involved in the process

will be store in the data store Lecturer Record.

Page 45: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

31

Figure 3.4.4.3: DFD Level 1 for Manage Parent

Figure 3.4.4.3 shows DFD Level 1 for Manage Parent. There are four small process

which includes Add parent, Update parent, Delete parent and View parent. Admin can

edit the details information about parents. All the data involved in the process will be

store in the data store Parent Record.

Page 46: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

32

Figure 3.4.4.4: DFD Level 1 for Manage Admin

Figure 3.4.4.4 shows DFD Level 1 for Manage Admin. There are also four small

process which includes Add admin, Update admin, Delete admin and View admin. All

the data involved in the process will be store in the data store Admin Record.

Page 47: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

33

Figure 3.4.4.5: DFD Level 1 for Manage Attendance

Figure 3.4.4.5 shows DFD Level 1 for Manage Attendance. There are also three main

process in this level which are Manage Program, Manage Course and Manage Class.

Page 48: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

34

Figure 3.4.4.6: DFD Level 2 for Manage Program

Figure 3.4.4.6 shows DFD Level 2 for Manage Program. There are also four small

process which includes Add program, Update program, Delete program and View

program. All the data involved in the process will be store in the data store Program

Record.

Page 49: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

35

Figure 3.4.4.7: DFD Level 2 for Manage Course

Figure 3.4.4.7 shows DFD Level 2 for Manage Course. There are also four small

process which includes Add course, Update course, Delete course and View course.

All the data involved in the process will be store in the data store Course Record.

Page 50: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

36

Figure 3.4.4.8: DFD Level 2 for Manage Class

Figure 3.4.4.8 shows DFD Level 2 for Manage Class. There are also four small process

which includes Add class, Update class, Delete class and View class. All the data

involved in the process will be store in the data store Class Record.

Page 51: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

37

3.5 Database Design

Database design is used to keep related data in database. There are eight tables together

that has been used in generating the system which include table admin, student,

lecturer, parent, program, course, classes and attendance.

3.5.1 Database Attendances

Figure 3.5.1: Database of attendances

Page 52: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

38

3.5.2 Table Admin

Figure 3.5.2: table admin

Table 3.5.2: admin table

ATTRIBUTE DESCRIPTION DATA TYPE KEY NULL

Admin_id ‘admin_id’

represents the

unique id that holds

by admin. It will be

used when new

admin registered

into the system.

Varchar (10) PRIMARY -

Admin_name ‘Admin_name’

represents full name

as in identity card, to

show the registered

admin that can

manage the system.

Varchar (30) - -

Page 53: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

39

Username ‘Username’

represents the

nickname that use

for login process.

Varchar (20) - -

Password ‘Password’ is

representing the key

for an authorized

admin to login the

system.

Varchar(20) - -

3.5.3 Table Student

Figure 3.5.3: table student

Page 54: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

40

Table 3.5.3: student table

ATTRIBUTE DESCRIPTION DATA TYPE KEY NULL

Student_id ‘Student_id’ represents

the unique id that holds

by student. It will be used

when new student

registered into the system

Varchar (12) PRIMARY -

Student_gender ‘Student_gender’

represent the gender of

the student either male or

female.

Varchar(10) - -

Student_address ‘Student_address’

represents the address of

the student.

Varchar(100) - -

Student_phone ‘Student_phone’

represents the phone

number of the student.

Varchar(15) - -

Student_semester ‘Student_semester’

represents the current

semester of the student.

Varchar(10) - -

Page 55: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

41

Username ‘Username’ represents

the nickname that use for

login process.

Varchar(20) - -

Password ‘Password’ is

representing the key for

an authorized student to

login the system.

Varchar(20) - -

Program_code ‘Program_code’

represents the student’s

program.

Varchar(10) FOREIGN

KEY- a

primary key

from table

program.

-

Admin_id ‘admin_id’ represents the

unique id that holds by

admin. It will be used

when new admin

registered into the

system.

Varchar(10) FOREIGN

KEY- a

primary key

from table

admin.

-

Page 56: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

42

3.5.4 Table Lecturer

Figure 3.5.4: table lecturer

Table 3.5.4: lecturer table

ATTRIBUTE DESCRIPTION DATA TYPE KEY NULL

Lecturer_id ‘lecturer_id’

represents the unique

id that holds by

lecturer. It will be

used when new

lecturer registered into

the system.

Varchar (10) PRIMARY -

Page 57: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

43

Lecturer_name ‘lecturer_name’

represents full name

as in identity card, to

show the registered

lecturer that can

manage the system.

Varchar (40) - -

Lecturer_phone ‘lecturer_phone’

represents the phone

number of lecturer.

Varchar(15)

Username ‘Username’ represents

the nickname that use

for login process.

Varchar (20) - -

Password ‘Password’ is

representing the key

for an authorized

admin to login the

system.

Varchar(20) - -

Admin_id ‘admin_id’ represents

the unique id that

holds by admin. It will

be used when new

admin registered into

the system.

Vachar(10) FOREIGN

KEY- a

primary key

from table

admin.

-

Page 58: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

44

3.5.5 Table Parent

Figure 3.5.5: table parent

Table 3.5.5: parent table

ATTRIBUTE DESCRIPTION DATA TYPE KEY NULL

Parent_id ‘parent_id’ represents

the unique id that

holds by parent. It will

be used when new

parent registered into

the system.

Varchar (10) PRIMARY -

Parent_name ‘parent_name’

represents full name

as in identity card, to

show the registered

parent that can

manage the system.

Varchar (40) - -

Page 59: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

45

Parent_address ‘parent_address’

represents the address

of the parent.

Varchar(100) - -

Parent_phone ‘parent_phone’

represents the phone

number of parent.

Varchar(15) - -

Username ‘Username’ represents

the nickname that use

for login process.

Varchar (20) - -

Password ‘Password’ is

representing the key

for an authorized

parent to login the

system.

Varchar(20) - -

Page 60: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

46

3.5.6 Table attendance

Figure 3.5.6: table attendance

Table 3.5.6: attendance table

ATTRIBUTE DESCRIPTION DATA TYPE KEY NULL

Student_id ‘Student_id’ represents

the unique id that holds

by student. It will be

used when new student

registered into the

system.

Varchar (10) FOREIGN

KEY- a

primary key

from table

student.

-

Class_code ‘Class_code’ represents

the unique code that

holds the class.

Varchar(15) FOREIGN

KEY- a

primary key

from table

class.

-

Page 61: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

47

Course_code ‘Course_code’

represents the code for

the subject.

Varchar(30) FOREIGN

KEY- a

primary key

from table

course.

-

Lecturer_id ‘lecturer_id’ represents

the unique id that holds

by lecturer. It will be

used when new lecturer

registered into the

system.

Varchar(10) FOREIGN

KEY- a

primary key

from table

lecturer.

Course_session ‘Course_session’

represents the session for

the course.

Varchar (20) - -

student_semester ‘Student_semester’

represents the current

semester of the student.

Varchar(10) - -

Program_code ‘Program_code’

represents the student’s

program.

Varchar (12) FOREIGN

KEY- a

primary key

from table

program.

Page 62: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

48

3.5.7 Table Program

Figure 3.5.7: table program

Table 3.5.7: program table

ATTRIBUTE DESCRIPTION DATA TYPE KEY NULL

Program_code ‘Program_code’

represents the student’s

program.

Varchar (12) PRIMARY -

Program_name ‘Program_name

represents the full name

of the program.

Varchar(30) - -

Program_post ‘Program_post’

represents the program

either diploma or

bachelor program.

Varchar(10) - -

Page 63: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

49

3.5.8 Table Course

Figure 3.5.8: table course

Table 3.5.8: course table

ATTRIBUTE DESCRIPTION DATA

TYPE

KEY NULL

Course_code ‘Course_code’ represents

the the code for the

subject.

Varchar (12) PRIMARY -

Course_name ‘Course_name’

represents the name of

the subject.

Varchar(30) - -

Credit_hours ‘Credit_hours’ represents

the credit per subject.

double - -

Page 64: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

50

Course_session ‘Course_session’

represents the session for

the course.

Varchar(20) - -

Program_code ‘Program_code’

represents the student’s

program.

Varchar(12) - -

Page 65: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

51

3.5.9 Table Class

Figure 3.5.9: table class

Table 3.5.9: class table

ATTRIBUTE DESCRIPTION DATA TYPE KEY NULL

Class_code ‘Class_code’ represents

the unique code that

holds the class.

Varchar (15) PRIMARY -

Days ‘Days’ represents the

days

Date - -

Start_time ‘Start_time’ represents

the time class started.

Datetime - -

End_time ‘End_time’ represents

the time class ends.

Datetime - -

Course_code ‘Course_code’

represents the the code

for the subject.

Varchar(12) - -

Page 66: SMART ATTENDANCE SYSTEM USING QR CODE WITH ......PHP dipilih bagi pembangunan sistem. Sistem kehadiran adalah bertujuan untuk memudahkan pensyarah, di mana rekod kehadiran pelajar

52

REFERENCES

[1] Hendry, M. R. M., Rahman, M. N. A., & Seyal, A. H. (2017). Smart attendance

system applying QR code. In 12th International Conference on Latest Trends in

Engineering and Technology (ICLTET'2017) May (pp. 22-24).

[2] Wei, X., Manori, A., Devnath, N., Pasi, N., & Kumar, V. (2017). QR Code

Based Smart Attendance System. International Journal of Smart Business and

Technology, 5(1), 1-10.

[3] Rjeib, H. D., Ali, N. S., Al Farawn, A., Al-Sadawi, B., & Alsharqi, H. (2018).

Attendance and information system using rfid and web-based application for

academic sector. International Journal of Advanced Computer Science and

Applications, 9(1).

[4] Patel, A., Joseph, A., Survase, S., & Nair, R. (2019). Smart Student Attendance

System Using QR Code. Available at SSRN 3370769.