EVENT TRACKING SYSTEM FOR UNIMAS
Goh Kai Ying
Bachelor of Computer Science with Honors (Software Engineering)
2020
EVENT TRACKING SYSTEM FOR UNIMAS
GOH KAI YING
This project is submitted in partial fulfilment of the requirements for the degree of Bachelor of Computer Science with Honours
Faculty of Computer Science and information Technology
UNIVERSITI MALAYSIA SARAWAK 2020
SISTEM PENJEJAKAN AKTIVITI UNTUK UNIMAS
GOH KAI YING
Projek ini merupakan salah satu keperluan untuk Ijazah Sarjana Muda Sains Komputer dan Teknologi Maklumat
Fakulti Sains Komputer dan Teknologi Maklumat
UNIVERSITI MALAYSIA SARAWAK 2020
15 July 2020
i
DECLARATION
I hereby declare that this project is my original work. I have not copied from any other student’s work or any other sources except where due to reference or acknowledgement is not made explicitly in the text, nor has any part had been written for me by another person.
………...
(GOH KAI YING)
ii
ACKNOWLEDGEMENT
I would like to express my deepest gratitude to my supervisor, Ms. Wee Bui Lin, who continuously helped me with great suggestions and guidance to complete my project, especially in writing this report.
Furthermore, I would like to thank the Final Year Project coordinator, Prof. Wang Yin Chai for providing useful guidance and tips during lectures. I would like to express my gratitude to my examiner, Sze San Nah for providing comments and feedbacks for my Final Year Project.
Finally, I would like to express my appreciation to my family and friends for their support
and encouragement.
iii
TABLE OF CONTENT
DECLARATION ... i
ACKNOWLEDGEMENT ... ii
LIST OF FIGURES... vi
LIST OF TABLES ... viii
ABSTRACT ... 1
ABSTRAK ... 2
CHAPTER 1: INTRODUCTION ... 3
1.1 TITLE ... 3
1.2 INTRODUCTION / BACKGROUND ... 3
1.3 PROBLEM STATEMENT / RESEARCH PROBLEM ... 3
1.4 SCOPE ... 4
1.5 OBJECTIVES ... 4
1.6 BRIEF METHODOLOGY ... 4
1.6.1 Requirement Analysis ... 5
1.6.2 System Design ... 6
1.6.3 Development ... 6
1.6.4 Testing ... 6
1.6.5 Implementation ... 6
1.6.6 Maintenance ... 7
1.7 SIGNIFICANCE OF PROJECT ... 7
1.8 PROJECT SCHEDULE ... 8
1.9 EXPECTED OUTCOME ...10
1.10 PROJECT OUTLINE ...10
1.11 SUMMARY ...11
CHAPTER 2: LITERATURE REVIEW ...12
2.1 Introduction ...12
2.2 Review on Existing System ...13
2.2.1 Facebook ...13
2.2.2 UNIMAS Now Application ...17
2.2.3 Eventbrite ...19
2.3 Comparison between existing systems ...21
iv
2.4 Features Adopted from Reviewed System...22
2.5 Software and Tools ...23
2.6 Summary ...24
CHAPTER 3: REQUIREMENT ANALYSIS AND DESIGN ...25
3.1 Introduction ...25
3.2 Requirement Analysis ...25
3.2.1 Functional analysis ...26
3.2.2 Use Case Diagram ...27
3.3 System Architecture Design ...28
3.4 Module design ...29
3.4.1 Use Case Description...29
3.4.2 Sequence Diagram ...36
3.4.3 Activity Diagram ...42
3.5 Database design ...52
3.6 User Interface Design ...53
3.7 Summary ...59
Chapter 4 Implementation and Testing ...60
Introduction ...60
Environment setup ...60
User Interface ...61
4.3.1 Homepage of UNIMAS Event Tracking Application ...62
4.3.2 Drawer ...64
4.3.3 Search Page ...66
4.3.4 Organizer Page ...67
4.3.5 Manage Event Pages ...74
4.3.6 Profile ...82
4.3.7 Log in ...83
4.3.8 Sign up ...84
Testing...85
4.4.1 Functionality Testing ...85
4.4.2 Usability Testing ...96
4.4.3 Efficiency Testing ...96
v
Test analysis ...99
Summary ...100
Chapter 5: Conclusion and Future Works ...101
Introduction ...101
Project achievement ...101
Project limitation ...102
Future work ...102
Conclusion ...103
Reference ...104
APPENDIX A: INTERVIEW ...105
APPENDIX B: USER TESTING SURVEY ...107
vi
LIST OF FIGURES
Figure 1.1: Waterfall Model Life Cycle (Balaji & Sundararajan Murugaiyan, 2012) ... 5
Figure 1.2: Gantt chart of Final Year Project 1 ... 8
Figure 1.3: Gantt chart of Final Year Project 2 ... 9
Figure 2.1: Facebook Create Event User Interface (Facebook, 2019) ...13
Figure 2.2: Facebook Event Page (Facebook, 2019) ...14
Figure 2.3: UNIMAS Now Application (UNIMAS, 2019) ...17
Figure 2.4: Eventbrite event editing page (Eventbrite, 2019) ...19
Figure 3.1: Use case diagram of proposed system ...27
Figure 3.2: Architecture Design of Event Tracking Application ...28
Figure 3.3: Sequence Diagram of Create User Account ...36
Figure 3.4: Sequence Diagram of Edit User Profile ...37
Figure 3.5: Sequence Diagram of Login...37
Figure 3.6: Sequence Diagram of Log Out ...38
Figure 3.7: Sequence Diagram of Search for Event ...38
Figure 3.8: Sequence Diagram of Follow Event ...39
Figure 3.9: Sequence Diagram of Manage Organizer Group ...40
Figure 3.10: Sequence Diagram of Manage Event ...41
Figure 3.11: Activity diagram of Log in ...42
Figure 3.12: Activity Diagram of Log out ...43
Figure 3.13: Activity diagram of Create Account ...44
Figure 3.14: Activity Diagram of Edit account ...45
Figure 3.15: Activity Diagram of Follow event ...46
Figure 3.16: Activity Diagram of Search for event ...47
Figure 3.17: Activity Diagram of Create event ...48
Figure 3.18: Activity Diagram of Edit event ...49
Figure 3.19: Activity Diagram of Create organizer group ...50
Figure 3.20: Activity Diagram of Manage Organizer Group ...51
Figure 3.21: Class Diagram ...52
Figure 3.22: Homepage / Event Page ...54
Figure 3.23: Event Detail Page ...54
Figure 3.24: Login Page ...55
Figure 3.25: Account Create Page ...55
Figure 3.26: Create Event Page...56
Figure 3.27: Manage Organizer Group Page ...56
Figure 3.28: Navigation Page ...57
Figure 3.29: Organizer Page ...57
Figure 4.1: Homepage of UNIMAS Event Tracking Application ...62
Figure 4.2: Event Details of Selected Event ...63
Figure 4.3: Drawer for users who are not logged in ...64
vii
Figure 4.4: Drawer for users who have logged in ...65
Figure 4.5: Search Function of UNIMAS Event Tracking Application ...66
Figure 4.6: Organizer Page of UNIMAS Event Tracking Application ...67
Figure 4.7: Manage Organization page of UNIMAS Event Tracking Application ...68
Figure 4.8: Create Organization Interface of UNIMAS Event Tracking Application ...69
Figure 4.9: Invite Member Prompt ...70
Figure 4.10: Update Organization Interface of UNIMAS Event Tracking Application ...71
Figure 4.11: Leaving Organization Prompt ...72
Figure 4.12: Make Announcement Prompt ...73
Figure 4.13: Manage Event page of UNIMAS Event Tracking Application ...74
Figure 4.14: Create Event page of UNIMAS Event Tracking Application...75
Figure 4.15: Update Event page of UNIMAS Event Tracking Application ...76
Figure 4.16: Select Date Prompt ...77
Figure 4.17: Select Tags Prompt ...78
Figure 4.18: Add New Tag Prompt ...79
Figure 4.19: Select Time Prompt ...80
Figure 4.20: Select Organization Prompt ...81
Figure 4.21: Profile Page of UNIMAS Event Tracking Application ...82
Figure 4.22: Login Page of UNIMAS Event Tracking Application ...83
Figure 4.23: Sign up page of UNIMAS Event Tracking Application ...84
Figure 4.24: Feedback from user testing ...99
viii
LIST OF TABLES
Table 2.1: Comparison between Facebook, UNIMAS Now and Eventbrite ...21
Table 3.1: Functional Requirements of Proposed System ...26
Table 3.2: Use Case Description of Log In ...30
Table 3.3: Use Case Description of Log out ...30
Table 3.4: Use Case Description of Create User Account ...31
Table 3.5: Use Case Description of Edit User Profile ...32
Table 3.6: Use Case Description of Search for event ...32
Table 3.7: Use Case Description of Follow events ...33
Table 3.8: Use Case Description of Manage event ...34
Table 3.9: Use Case Description of Manage Organizer Group ...35
Table 4.1: Functionality testing for login page ...85
Table 4.2: Functionality testing for signup page ...86
Table 4.3: Functionality testing for homepage ...87
Table 4.4: Functionality testing for event detail ...88
Table 4.5: Functionality testing for search page ...88
Table 4.6: Functionality testing for profile page ...89
Table 4.7: Functionality testing for manage organization page ...89
Table 4.8: Functionality testing for manage event page ...91
Table 4.9: Functionality testing for create organization page ...92
Table 4.10: Functionality testing for create event page ...93
Table 4.11: Functionality testing for update event page ...94
Table 4.12: Functionality testing update organization page ...95
Table 4.13: Efficiency testing ...96
1
ABSTRACT
There are a lot of events taking place in UNIMAS constantly. However, the communication between organizers and participants is lacking. Organizers have a hard time promoting events to participants and participants would miss a lot of events that might interest them. This mobile application is developed as a platform for organizers and participants in UNIMAS. The requirement is gathered through an interview of a student of UNIMAS, who is a participant and organizer of multiple events. The design is created after analyzing the requirement of the organizer and participant. There are two (2) main users in this system, organizers and participants. Organizers and participants can follow event and search for events, but only organizers can manage events and manage organizer groups. The development of this application helps participants and organizers keep track of events and create events easier.
2
ABSTRAK
Di dalam UNIMAS, terdapat banyak akitiviti yang sentiasa diadakan. Walau bagaimanapun, komunikasi antara penganjur dan perserta aktiviti adalah sedikit kurang. Penganjur mendapati bahawa mereka sukar mempromosi akitiviti kepada perserta. Peserta juga akan terlepas pelbagai aktiviti yang mungkin menarik perhatian mereka. Aplikasi mudah alih yang sedang dicipta akan digunakan sebagai platform untuk penganjur dan peserta aktiviti di dalam UNIMAS. Syarat-syarat untuk aplikasi ini dikumpul melalui sesi tanya jawab dengan seorang pelajar UNIMAS yang menjadi perserta dan penganjur pelbagai aktiviti. Reka bentuk aplikasi ini dicipta selepas menganalisis keperluan peserta dan penganjur. Dalam aplikasi ini, terdapat dua (2) pengguna utama, iaitu penganjur dan peserta. Peserta dan penganjur boleh mengikuti aktiviti atau mencari aktiviti melalui aplikasi ini, tetapi hanya penganjur aktiviti boleh mengurus aktiviti dan mengurus kumpulan penganjur. Pembangunan aplikasi ini membantu peserta dan penganjur aktiviti untuk mengemaskini aktiviti dan mengadakan aktiviti dengan mudah.
3
CHAPTER 1: INTRODUCTION
1.1 TITLE
Event Tracking System for UNIMAS
1.2 INTRODUCTION / BACKGROUND
There are a lot of events constantly prepared by UNIMAS, the faculties as well as the societies and clubs in UNIMAS. Some events use UNIMAS Now app while others are promoted at Student Pavilion, or using Facebook and notice board around UNIMAS, or by word of mouth.
1.3 PROBLEM STATEMENT / RESEARCH PROBLEM
There are many events that are being held in UNIMAS by the societies or by the university themselves, but some students do not know about the events that are happening around UNIMAS.
Students who are interested in certain events might not be informed about the last-minute changes
made by the organizers as well. Students who are interested in the event might had forgot about the
event and missed the event. The posters around UNIMAS notice boards are sometimes outdated,
leading to posters at the notice boards getting ignored by students.
4
1.4 SCOPE
The scopes of this project are:
i. This application can only be supported on an android phone.
ii. The targeted users are UNIMAS students and staff.
iii. Any type of event can be registered in the application.
1.5 OBJECTIVES
The main objective of this project is to create a mobile application for UNIMAS event organizers and participants. The sub objectives are:
i. To design and to create a platform for event organizers to promote their events ii. To assist participants in keeping track of upcoming events
iii. To provide a proper communication channel between event organizers and participants for immediate feedbacks and notifications
1.6 BRIEF METHODOLOGY
The methodology used for this project is waterfall model. This is because it is easy to
implement and the resources needed to implement the model is small (Balaji & Sundararajan
Murugaiyan, 2012). Figure 1.1 shows the different phase in a waterfall model.
5
Figure 1.1: Waterfall Model Life Cycle (Balaji & Sundararajan Murugaiyan, 2012)
1.6.1 Requirement Analysis
First, the requirements are gathered for the system. The requirements are based on problem faced by the organizers and participants. The problems faced are analyzed to determine the functions needed for the system to create the optimum platform for the users.
Analysis
Design
Development
Testing
Implementation
Maintenance
6
1.6.2 System Design
The requirements obtained are analyzed and an overall design of the system is prepared.
The functions and the interface of the application will be designed in a way that it is simple and able to overcome the problem faced by the organizers and participants of the events. Other similar application will be analyzed to create a suitable user interface and functions for our end users.
1.6.3 Development
A prototype is created according to the system design. Each function is built and tested before proceeding to the next function. The function is implemented to the user interface to ensure the functions are performing to the expectation of the end users.
1.6.4 Testing
The whole system is tested for faults after all the function has been added into the system.
If any application defects are found, the application is further improved to fix the defects before releasing to the end users.
1.6.5 Implementation
After the testing is done, the application is released to the organizers and participants.
7
1.6.6 Maintenance
If there are problem encountered by the users after the application is released, the problems are analyzed and corrected. The application is updated after known problems are fixed.
1.7 SIGNIFICANCE OF PROJECT
The purpose of this application is to notify students regarding events in UNIMAS, as well
as assisting organizers to promote their events that are held in UNIMAS. By completion of this
application, organizers have a method of effectively promoting their events to targeted users or
students. Students who are interested in participating in events will be notified about the events in
UNIMAS.
8
1.8 PROJECT SCHEDULE
Figure 1.2: Gantt chart of Final Year Project 1
Figure 1.2 shows the Gantt chart which roughly estimates the time needed to plan and complete the Final Year Project 1. The end
date of the Gantt chart is according to the deadline set by the Faculty of Computer Science and Information Technology.
9
Figure 1.3: Gantt chart of Final Year Project 2
Figure 1.3 shows the Gantt chart which roughly estimates the time needed to plan and complete the Final Year Project 2. The end
date of the Gantt chart is according to the deadline set by the Faculty of Computer Science and Information Technology.
10
1.9 EXPECTED OUTCOME
The outcome of this project is a mobile application that assists organizers in promoting their events to participants. This platform allows participants to track any upcoming events taking place in UNIMAS.
1.10 PROJECT OUTLINE
There are five (5) chapters in this Final Year Project Report.
Chapter 2: Literature Review
In this chapter, the functions of existing event tracking systems and applications are analyzed. Existing mobile application are also referred to develop a suitable user interface.
Chapter 3: Requirement Analysis and Design
In this chapter, the requirements are collected and analyzed. Based on the requirements, the overall design of the system is shown here.
Chapter 4: Implementation and Testing
This chapter shows the user interface of the application. The user interface varies
depending on the end user. Screenshots are used to show the user interface.
11
Chapter 5: Conclusion and Future Works
In this part, the strengths and weakness of the project are discussed. Lessons learnt and new ideas are taken in for any future projects.
1.11 SUMMARY
This chapter introduces the event tracking application for UNIMAS. This project is
proposed to create a platform to assist in promoting events taking place in UNIMAS and keeping
users up to date with information regarding the events.
12
CHAPTER 2: LITERATURE REVIEW
2.1 Introduction
There are a lot of events taking place in UNIMAS. There are social events held by UNIMAS and their students with their societies, national events such as Kejohanan Sukan Antara Pusat Sukan (SUPSAT) as well as international events. With so many events taking place in UNIMAS, it is hard to promote all the events to the students who might be interested in the events.
Currently, the main methods for promoting events are by Facebook, using a booth at
Student Pavilion, billboard or using the UNIMAS Now app as well as UNIMAS e-mail. This meant
that students who do not often go to Student Pavilion or scroll through Facebook usually missed
the events that are taking place in UNIMAS. At times, changes are made to the event are not known
to the participants of the events as well.