19
SUPERVISOR’S DECLARATION I hereby declare that I have read this thesis and in my opinion, this thesis is adequate in terms of scope and quality for the award of the degree of Bachelor of Computer Science (Software Engineering) with Honours. _______________________________ (Supervisor’s Signature) Full Name : DR. ZAFRIL RIZAL BIN M AZMI Position : SENIOR LECTURER Date : 11 December 2018

UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

SUPERVISOR’S DECLARATION

I hereby declare that I have read this thesis and in my opinion, this thesis is adequate in

terms of scope and quality for the award of the degree of Bachelor of Computer Science

(Software Engineering) with Honours.

_______________________________

(Supervisor’s Signature)

Full Name : DR. ZAFRIL RIZAL BIN M AZMI

Position : SENIOR LECTURER

Date : 11 December 2018

Page 2: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

STUDENT’S DECLARATION

I hereby declare that the work in this thesis entitled “INTEGRATED LAB DOOR

ACCESS CONTROL” is based on my original work except for quotations and citations

which have been duly acknowledged. I also declare that it has not been previously or

concurrently submitted for any other degree at Universiti Malaysia Pahang or any other

institutions.

_______________________________

(Student’s Signature)

Full Name : CHENG WEI QUAN

ID Number : CB15137

Date : 11 December 2018

Page 3: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

ii

INTEGRATED LAB DOOR ACCESS CONTROL (iLDAC)

CHENG WEI QUAN

Thesis submitted in fulfillment of the requirements

for the award of the degree of

Bachelor of Computer Science (Software Engineering / Computer Systems &

Networking / Graphics & Multimedia Technology)

Faculty of Computer Systems & Software Engineering

UNIVERSITI MALAYSIA PAHANG

DECEMBER 2018

Page 4: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

iii

ACKNOWLEDGEMENTS

First of all, I would like to thank to the Universiti Malaysia Pahang for giving me

a chance to continue my study. Next, I want to thank all the lecturer who teaching me the

useful knowledge in my life. I would also like to express my sincere gratitude to my

supervisor, Dr. Zafril Rizal Bin M Azmi for his guidance throughout the development of

my final year project entitled “Integrated Lab Door Access Control”.

Furthermore, I would like to thank to my academic advisor, Dr. Rohani Binti Abu

Bakar for sharing her expertise, encouragement and advice to me throughout my study in

UMP. Next, I would like to thank to my friends and course mates, who had always share

me their knowledge and help me to break through difficulties.

Last but not least, I would like to extend my gratefulness to my parents who have

always support me since I was born. Without their continuous encouragement and

financial support, I could not be complete my final year project smoothly.

Page 5: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

iv

ABSTRAK

Sistem Kawalan Akses Pintu Lab Bersepadu adalah aplikasi mudah alih yang

disepadukan dengan teknologi RFID. Sistem ini dibangunkan untuk mengelakkan

masalah tiada rekod untuk masuk / keluar pengguna dari makmal, pengguna lupa

membawa kad akses, memudahkan pengguna menyerahkan borang permintaan untuk

menggunakan makmal, dan mengurangkan penggunaan masa pada kunci pintu secara

manual . Objektif projek ini adalah untuk mengkaji pelaksanaan teknologi RFID dalam

aplikasi mudah alih iLDAC. Selain itu, projek ini adalah untuk membangunkan aplikasi

mudah alih yang bersepadu dengan teknologi RFID untuk memperbaiki sistem yang sedia

ada. Objektif terakhir projek ini adalah untuk menguji fungsi dan keberkesanan teknologi

RFID dalam aplikasi mudah alih iLDAC. Sistem ini tersedia untuk Android, iOS, dan

Windows. Walau bagaimanapun, terdapat beberapa kekangan apabila menggunakan

sistem pada Windows. Sistem ini mempunyai 4 jenis pengguna, iaitu pembantu makmal,

pelajar, pensyarah, dan admin. Teknologi yang digunakan dalam projek ini termasuk

Rangka Kerja Ionic, TypeScript, CSS, HTML5, dan Arduino. Metodologi yang

digunakan dalam projek ini adalah Pembangunan Agile. Hal ini kerana metodologi ini

membolehkan perubahan dan peningkatan dapat dibuat walaupun terlambat dalam

kitaran pembangunan. Sistem Kawalan Akses Pintu Lab Bersepadu mempunyai beberapa

fungsi iaitu melihat laporan, menghasilkan laporan, mengemukakan borang permintaan,

menguruskan permintaan, mengunci pintu, membuka pintu menggunakan aplikasi, dan

memberitahu pengguna untuk meninggalkan makmal. Sistem ini telah diuji oleh klien

menggunakan Ujian Penerimaan Pengguna (UAT). Hasil yang diuji menunjukkan

bahawa sistem berfungsi dengan baik, bebas bug, dan memenuhi keperluan pengguna

seperti dinyatakan dalam Spesifikasi Keperluan Perisian.

Page 6: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

v

ABSTRACT

Integrated Lab Door Access Control system is a mobile application that integrated with

RFID technology. The system is developed to prevent the problem of no record for check-

in/out of users from lab, users forgot to bring access card, ease the users to submit request

form to use lab, and reduce the time consuming on manually lock the door. The objectives

of this project is to study the implementation of RFID technology in iLDAC mobile

application. Besides, this project is to develop a mobile application that integrated with

RFID technology in order to improve the existing system. The last objective of this

project is to test the functionality and effectiveness of RFID technology in iLDAC mobile

application. The system is available for Android, iOS, and Windows. However, there are

some constraints when use the system on Windows. The system has 4 type of users, which

are lab assistant, student, lecturer, and admin. The technology that applied in this project

include Ionic Framework, TypeScript, CSS, HTML5, and Arduino. The methodology

that applied in this project is Agile Software Development. This is because this

methodology allow the developers to make changes and improvement even though it is

late in the development cycle. This help to increase the client satisfaction since meeting

with client can be done frequently. Integrated Lab Door Access Control system have

several functions which are view report, generate report, submit request form, manage

request, lock the door, open the door using application, and notify the users to leave the

lab. This system has been tested by client using User Acceptance Test (UAT). The tested

result shows that the system is working well, bug free, and meet the user requirements as

stated in Software Requirement Specification.

Page 7: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

vi

TABLE OF CONTENT

DECLARATION

TITLE PAGE

ACKNOWLEDGEMENTS iii

ABSTRAK iv

ABSTRACT v

TABLE OF CONTENT vi

LIST OF TABLES x

LIST OF FIGURES xi

LIST OF ABBREVIATIONS xiii

CHAPTER 1 INTRODUCTION 1

1.1 BACKGROUND 1

1.2 PROBLEM STATEMENT 2

1.3 OBJECTIVE 3

1.4 SCOPE 4

1.5 SIGNIFICANCE 4

1.6 THESIS ORGANIZATION 5

CHAPTER 2 LITERATURE REVIEW 6

2.1 INTRODUCTION 6

2.2 REVIEW ON OPEN SOURCE BOARD 6

2.2.1 Arduino 6

2.2.2 Raspberry Pi 7

Page 8: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

vii

2.2.3 BeagleBoard 8

2.2.4 Comparison between Open Source Boards 8

2.3 TECHNOLOGIES USED 9

2.3.1 Radio-Frequency Identification (RFID) 9

2.3.2 Near Field Communication (NFC) 10

2.3.3 Bluetooth Low Energy Beacons 10

2.4 REVIEW ON MOBILE APPLICATIONS 11

2.4.1 Hybrid Apps 12

2.4.2 Native Apps 13

2.4.3 Web Apps 13

2.5 COMPARISON OF MOBILE APP FRAMEWORK 14

2.5.1 Ionic Framework 14

2.5.2 Xamarin 15

2.5.3 React Native 15

2.6 REVIEW ON EXISTING SYSTEM 16

2.6.1 Nitgen Fingkey Access 16

2.6.2 Zicom Proximity Access Control System 17

2.6.3 MiLocks Keyless Entry Door Lock 18

2.6.4 Comparison On Existing System 19

CHAPTER 3 METHODOLOGY 20

3.1 INTRODUCTION 20

3.2 METHODOLOGY 20

3.2.1 Agile Software Development Methodology 20

3.2.2 Agile Software Development Phases 21

3.3 HARDWARE AND SOFTWARE 26

Page 9: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

viii

3.3.1 Hardware Requirement 26

3.3.2 Software Requirement 27

3.4 GANTT CHART 27

3.5 GENERAL ARCHITECTURE AND PACKAGE MODULE 27

3.5.1 General Architecture 27

3.5.2 Package module 28

CHAPTER 4 RESULTS AND DISCUSSION 29

4.1 Introduction 29

4.2 Implementation Process 29

4.2.1 Normal Users 29

4.2.2 Admin 35

4.2.3 Lecturer and Student 40

4.2.4 Lab Assistant 48

4.2.5 Hardware Setup 55

4.2.6 Database (Firebase) 57

4.3 Testing and Result Discussion 58

4.3.1 Summary of Testing Result 58

CHAPTER 5 CONCLUSION 60

5.1 Introduction 60

5.2 Project Constraints 60

5.3 Future Work 61

REFERENCES 62

APPENDIX A GANTT CHART 64

Page 10: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

ix

APPENDIX B SOFTWARE REQUIREMENT SPECIFICATION (SRS) 65

APPENDIX C SOFTWARE DESIGN DOCUMENTATION (SDD) 99

APPENDIX D USER ACCEPTANCE TEST (UAT) 122

Page 11: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

x

LIST OF TABLES

Table 1.1 Problem statement in project 2

Table 1.2 Scope in project 4

Table 2.1 Comparison between open source boards 8

Table 2.2 Comparison between RFID, NFC, and Beacons 11

Table 2.3 Comparison between native apps, web apps, and hybrid apps. 13

Table 2.4 Comparison between 3 different types of mobile frameworks 16

Table 2.5 Comparison between existing systems with proposed system 19

Table 3.1 Hardware Requirement 26

Table 3.2 Software Requirement 27

Table 4.1 Summary result of UAT 58

Page 12: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

xi

LIST OF FIGURES

Figure 2.1 Nitgen Fingkey Access 17

Figure 2.2 Zicom Proximity Access Control System 18

Figure 2.3 MiLocks Keyless Entry Door Lock 18

Figure 3.1 Basic principles of Agile methodology 21

Figure 3.2 Phases in Agile SDLC (FORSYTH, 2013) 22

Figure 3.3 Use case of iLDAC 23

Figure 3.4 Context diagram of iLDAC 24

Figure 3.5 Architecture of system 28

Figure 4.1 Login Page of iLDAC 30

Figure 4.2 Warning message for authentication process 30

Figure 4.3 Code of authentication process (home.ts) 31

Figure 4.4 Code of authentication process (auth.service.ts) 31

Figure 4.5 Code of differentiate the pages shown to users (menu.ts) 32

Figure 4.6 Sign Up Page 33

Figure 4.7 Warning message about the Sign Up restrictions 33

Figure 4.8 Alert Message for invalid User ID and different password inserted 34

Figure 4.9 Code of Sign Up process (signup.ts) 34

Figure 4.10 Code of Sign Up process (auth.service.ts) 34

Figure 4.11 Full user information and filtered user information 35

Figure 4.12 Code of updateFilter Function (adminmain.ts) 36

Figure 4.13 User Interface of Add New User 36

Figure 4.14 Alert Message for duplicate User ID 37

Figure 4.15 Code of Add New User (addnewuser.ts) 38

Figure 4.16 Options appeared when click on the row 39

Figure 4.17 Code of show action sheet when click on the row (adminmain.ts) 39

Figure 4.18 Update User Page 40

Figure 4.19 Open Door function 41

Figure 4.20 Random code being send to users through email 42

Figure 4.21 Code of email code function (opendoor.ts) 42

Figure 4.22 Alert message for generated code expired 43

Figure 4.23 Toast message appeared when door is opened 44

Figure 4.24 Toast message appeared when press the exclamation mark 45

Figure 4.25 Action sheet appeared for user to select image source 45

Page 13: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

xii

Figure 4.26 Code of takePicture function (requestlab.ts) 46

Figure 4.27 Profile page and change password page of users 47

Figure 4.28 Code of change password (changepassword.ts) 47

Figure 4.29 “Success” notification received from lab assistant LA001 48

Figure 4.30 Code of showDetails function (notification.ts) 48

Figure 4.31 User interface of manage request 49

Figure 4.32 Code of approve the request form (managerequest.ts) 50

Figure 4.33 Code of reject the request form (managerequest.ts) 50

Figure 4.34 Lab users in the lab at the moment 51

Figure 4.35 Code of notify users (managelab.ts) 52

Figure 4.36 Code of lock/unlock lab (managelab.ts) 52

Figure 4.37 Report of check-in/out from labs 53

Figure 4.38 Success alert message pop out to lab assistant 54

Figure 4.39 Code of generate and export report 1 (report.ts) 54

Figure 4.40 Code of generate and export report 2 (report.ts) 55

Figure 4.41 Hardware Setup 56

Figure 4.42 Result of access door successfully 56

Figure 4.43 Result of failed to access door 57

Figure 4.44 Overview of database 57

Figure 4.45 Database of user information 58

Page 14: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

xiii

LIST OF ABBREVIATIONS

SDLC Software Development Life Cycle

RFID Radio-Frequency Identification

NFC Near Field Communication

BLE Bluetooth Low Energy

SASS Syntactically Awesome Style Sheets

SRS Software Requirement Specification

SDD

UMP

UAT

Software Design Document

Universiti Malaysia Pahang

User Acceptance Test

iLDAC Integrated Lab Door Access Control

Page 15: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

1

CHAPTER 1

INTRODUCTION

1.1 BACKGROUND

A laboratory is a facility that carry out scientific experimentation, observation,

practice in a field of study, or research in a controlled condition. There are many kinds of

costly apparatus, machines, equipment, chemicals, and materials in those labs. Besides,

some of the materials and chemicals is very dangerous and may cause health problem to

the human. Laboratory work is all about Research & Development (R&D), and it play an

important role in take our nation to a new heights instead of lagging behind other

countries. There are various security threats that faced by mostly laboratories included

physical attack, theft of intellectual property, and unauthorized disclosure of sensitive

information. To counter the threats faced, a high reliability access control system is

needed to control the accessibility in order to secure the laboratory.

There are two main type of access control system – biometric based and physical

based in which biometric based identify users through fingerprint, face recognition, and

other individuals characteristics where physical based identify users by ID card or enter

password. There are many existing physical access control system, for example smart

card access system, key fob access system swipe card access system, keypad access

system, mobile access system, etc. The main reasons of apply all of these system is to

prevent the unauthorized entry of persons and removal of laboratory assets.

iLDAC is a mobile application that integrate with RFID technology to control the

accessibility in/out from the laboratory no matter it is computer lab or chemical lab. A

Radio-Frequency Identification (RFID) system is made up of two parts, which are a

tag/card and a reader. With the RFID system, lab users can unlock the door easier instead

of using traditional method which consume times to find the key. Besides that, sanitation

Page 16: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

2

is an important issue for all the chemical lab since an experiment result may be altered

by unexpected matter. Since iLDAC enable only authorised persons to enter the labs, as

a result, there is no risk of contamination from outsiders to enter chemical labs. This is

also very helpful to protect the assets of laboratory since the price of some material,

apparatus, computer and machine is extremely high. Besides, the lab assistant can also

review the record of that person’s having check in/out from the laboratory, and check

whoever is inside the labs on time. Lab assistant can check the door status whether door

is locked or unlocked through iLDAC application and lock the door when it is needed.

1.2 PROBLEM STATEMENT

There are few problem statement in this project and will be listed in the Table 1.1.

Table 1.1 Problem statement in project

Problem Description Effect

Door is forgotten to be

locked.

Sometimes, the lab assistant

or student forgot to lock the

labs door after they leave

from there.

Unauthorised person

may enter the lab.

High value equipment,

apparatus and material

in lab being stolen.

Forgot to bring card There are sometimes users

forgot to bring their access

card to access the door.

Users unable to enter

the lab.

No record of users who

access the laboratory.

The users does not fill in the

check-in/out form prepared

in the lab.

No record to be

reviewed when high

value equipment,

apparatus, and material

being stolen.

It is inconvenience for users

to submit request form to

faculty.

Users want to use lab during

night time to do their tasks.

Lab is often locked after

working hours, student and

lecturer unable to access it

during night time.

Task cannot be

completed before the

due date.

Page 17: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

3

1.3 OBJECTIVE

The goal of this project is to develop an android mobile application that integrated

with access control system to improve the security level of lab with the following

objectives:

i. To study the implementation of RFID technology in iLDAC mobile application.

ii. To develop a mobile application that integrated with RFID technology in order to

improve the existing system.

iii. To test the functionality and effectiveness of RFID technology in iLDAC mobile

application.

Page 18: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

62

REFERENCES

(21 11, 2017). Retrieved from altexsoft: https://www.altexsoft.com/blog/mobile/pros-and-cons-of-

xamarin-vs-native/

Advantages of RFID | Disadvantages of RFID. (2012). Retrieved from RF Wireless World:

http://www.rfwireless-world.com/Terminology/Advantages-and-Disadvantages-of-RFID.html

AltexSoft. (19 2, 2018). Retrieved from altexsoft:

https://www.altexsoft.com/blog/engineering/xamarin-vs-react-native-vs-ionic-cross-platform-

mobile-frameworks-comparison/

Blaz. (13 3, 2015). Indoor Positioning, Tracking and Indoor Navigation with Beacons. Retrieved

from locatify: https://locatify.com/blog/indoor-positioning-systems-ble-beacons/

Boriev, Z. V., Sokolov, S., & Nyrkov, A. (2015). Review of modern biometric user authentication and

their development prospects. IOP Conference Series: Materials Science and Engineering.

CASTLE, A. (4 12, 2013). Everything You Need to Know about The Beaglebone Black. Retrieved

from Tested: http://www.tested.com/art/makers/459278-everything-you-need-know-about-

beaglebone-black/

Chou, J. (15 6, 2016). Retrieved from konkakt: https://kontakt.io/blog/extensive-guide-to-bluetooth-

beacons/

DiCola, T. (6 5, 2014). Embedded Linux Board Comparison. Retrieved from adafruit:

https://learn.adafruit.com/embedded-linux-board-comparison/overview

Duroc, Y., & Tedjini, S. (2018). RFID: A key technology for Humanity. Comptes Rendus Physique,

64-71.

Farrell, A. (2007). Selecting a Software Development Methodology based on Organizational

Characteristics.

Page 19: UMP Thesis Templateumpir.ump.edu.my/id/eprint/27147/1/Integrated lab door access cont… · request, lock the door, open the door using application, and notify the users to leave

63

FingerTec. (19 10, 2017). Retrieved from FingerTec: http://www.fingertectips.com/2017/10/nfc-vs-

beacon-which-is-right-for-you.html

FORSYTH, A. (Feb, 2013). My Global IT. Retrieved from

http://www.myglobalit.com/blog/waterfall-vs-agile-models-software-development

George, N. (28 8, 2017). Strengths and Weaknesses of Hybrid Mobile Applications. Retrieved from

projectmates: https://www.projectmates.com/blog/blog-2017-strengths-and-weaknesses-of-

hybrid-mobile-apps.aspx

Gupta, A., & Gaffar H., A. (2016). Hybrid Application Development using Ionic Framework &

AngularJS. International Journal of Innovative Research in Computer Science & Technology

(IJIRCST).

Jobe, W. (2013). Native Apps vs. Mobile Web Apps.

Jobe, W. (2013). Native Apps vs. Mobile Web Apps . International Journal of Interactive Mobile

Technologies.

Meike, R. (24 10, 2012). Raspberry Pi vs. Arduino Vs. BeagleBone – What’s The Difference?

Retrieved from Makezine: https://makezine.com/2013/04/15/arduino-uno-vs-beaglebone-vs-

raspberry-pi/

Osetskyi, V. (2017). SDLC Models Explained: Agile, Waterfall, V-Shaped, Iterative, Spiral.

Pandit, V., & Lao, T. (2015). Applying Agile Software Principles to the Medical Device Life Cycle.

redhat. (n.d.). Retrieved from opensource.com: https://opensource.com/resources/raspberry-pi

Rouse, M. (4, 2017). IoTAgenda. Retrieved from TechTarget:

https://internetofthingsagenda.techtarget.com/definition/RFID-radio-frequency-identification

Utsav Jambusariaa, N. K. (2015). Secure Smartphone Unlocking using NFC. Procedia Computer

Science 45, 465 – 469.