csf35104 final year project 1 - myfik.unisza.edu.my · csf35104 final year project 1 supervisor...
TRANSCRIPT
1 | P a g e
CSF35104 FINAL YEAR PROJECT 1
SUPERVISOR
PROF MADYA DR MOKHAIRI B MAKHTAR
NAME AND MATRIC NUMBER
NURUL NABILAH BT ALIAS 043689
COURSE AND FACULTY
INFORMATICS AND COMPUTING (INTERNET COMPUTING)
TITLE
SCHEDULED TASK ALERT SYSTEM IN HYBRID MOBILE APPLICATION
2 | P a g e
CONTENTS
CHAPTER I INTRODUCTION
1.1
1.2
Project Introduction
Background project
5
6
1.3 Problem statement 7
1.4 Objectives 7
1.5 Scopes
1.5.1 scopes user
1.5.2 scopes system
8
1.6
1.7
Limitation of works
Milestone/Gantt chart
9
9
1.8
1.9
1.10
Expected result
Structure Thesis
1.9.1 Chapter 1 : Introduction
1.9.2 Chapter 2 : Literature Review
1.9.3 Chapter 3 : Methodology
1.9.4 Chapter 4 : Design and project modeling
1.9.5 Chapter 5 : Implementation and testing
1.9.6 Chapter 6 : Results and discussion
Summary
10
11
11
11
11
12
12
12
12
CHAPTER II LITERATURE REVIEW
2.1 Introduction 13
2.2 Heuristic algorithm 13
2.3 Hybrid Mobile application 14
2.4 Existing System 15
2.5 Summary 16
3 | P a g e
CHAPTER III
METHODOLOGY
3.1 Introduction 17
3.2 System development Methodology 18
3.2.1 Requirement gathering 18
3.2.2 Quick Design 19
3.2.3 Building prototype 19
3.2.4 Customer / Supervisor evaluation 19
3.2.5 Refining prototype 20
3.2.6 Engineer product 20
3.3 System Development Environment 20
3.3.1 Software Requirement 21
3.3.2 Hardware Requirement 22
3.4 System Design 23
3.4.1 Framework design 23
3.4.2 Process Model 24
3.4.2.1 Context Diagram (CD) 24
3.4.2.2 Data Flow Diagram (DFD Level 0) 26
3.4.2.3 Data Flow Diagram (DFD Level 1) 27
3.4.2.3 Entity Relationship Diagram 35
3.5 Proof of concept 36
3.6 Summary 41
4.0 Conclusion 41
5.0 References 41
4 | P a g e
CHAPTER 1
INTRODUCTION
1.1 Project Introduction
In general, Scheduled Task Alert System involves the process of
arrangement and planning to finish the assignment that has been provided
until achieve the goal. The arrangement of scheduled will be based on
duration of the assignment provided and the priority for subject that need
more time to finish it. The planning process is important to make the
scheduling more organized and efficient way.
Scheduled Task Alert System is an application that allow both
student and lecturer to update their task in this system. Student need to generate
their own schedule through the scheduled that admin provided for them.
This method can make student schedule their assignment organized
according to the provided time and duration to finish it. The main data of
the system is about the arrangement of the schedule. Lecturer input the
assignment that student need complete it. This system can remind student a
5 | P a g e
few days before assignment need to submit by notification via email that
student register. Lecturer also get notification when student has sent their
assignment. Besides, this system ease student to submit their assignment
through the link that provided.
This chapter presents an introduction of the proposal project,
Scheduled Task Alert System. Chapter one contains five sections. Firstly,
the background of the project described. The second section is the problem
statement about this project. In third section is the objectives of the
project. In the next section is the scopes that will covered through this
project. The limitation of work of the project will be discussed in section
five. Last but not least, in the sixth section there will be the milestone or
the Gantt chart that indicates the planning outlined throughout the project.
1.2 Background Project
Nowadays, students always lack of time to complete their assignment and
always do their assignment last minute. When students need to submit
assignment, they do not need to ask their friend about the due date of the
assignment. Scheduled Task Alert System using hybrid mobile application.
Student can access the system using android mobile application. They can jot
down their assignment in the schedule through their phone but to submit their
assignment they need to use web based application. Other than that, this system
also use heuristic algorithm where it use when there are a few assignment that
6 | P a g e
need to be sent at the same date and the priority of time to complete that
assignment. This system develop to ensure student can arrange their time to
complete their assignment organized and remind student when they forget to
submit their assignment.
1.3 Problem Statement
The problem of the current situation are student has a lot assignment that
they need to complete before their due date and because of that, when they do not
arrange their assignment organize, they lack of time to do a lot of assignment in
one time. In addition, students always forget about their assignment due date and
need to ask others about the due date of assignment. Lastly, students need to open
another browser when they need to send their assignment. This can consume a bit
of time.
1.4 Objectives
The main objective of this project are develop is :
i. To proposed the system that will help the student arrange their schedule
organize.
ii. To design and develop a scheduled task alert system by using hybrid
mobile application.
iii. To implement the system by using heuristic algorithm.
7 | P a g e
1.5 Scopes
The scopes of this project are divides by two which are scope user and
scope system.
1.5.1 Scope User
The user scopes of this project will be used by student, lecturer and admin.
The main user for this system is student because this system was developed for
student to generate their own schedule using the schedule that has been provided
to them. Lecturer also allow to access this system for create, view, update and
delete the assignment that need to give to the student. Admin allow to add, view,
update and delete schedule.
1.5.2 Scope System
The system scope is able to generate report about the latest schedule and
display it. The system also will prioritize the assignment if there is any
assignment that need a lot of time to complete it.
8 | P a g e
1.6 Limitations of Works
This system only focus on generate new schedule of assignment. The
system does not require the payment because it’s only generate schedule from the
existing schedule that provided to student. If there are two assignment that need to
send at the same date, the system will give priority to the assignment that need to
consume a lot of time to complete it. This situation will be selected by heuristic
algorithm. The system does not help student to authenticate to the web that
student need to send assignment. They need to authenticate the page before
sending the assignment.
1.7 Milestone / Gantt Chart
Gantt chart mean a chart in which series of horizontal lines shows the amount of
work done or production completed in certain periods of time in relation to the
amount planned for those periods.
Table 1.1 : Gantt chart for Scheduled Task Alert System
9 | P a g e
1.8 Expected Result
From this project of Scheduled Task Alert System, there are several
expected result.
a. Hybrid mobile application system
b. Help student to arrange their schedule organize
c. Remind student about submission of project
d. Help student to send their assignment
e. Remind lecturer when assignment has been sent
10 | P a g e
1.9 Structure Thesis
A structure thesis of Scheduled Task Alert System Using Hybrid Mobile
Application project concisely describing the content in this project for each
chapter.
1.9.1 Chapter 1: Introduction
In the first chapter, the contents are consists of project introduction,
background project, problem statement, objective, project scope, limitation of
work and Gantt chart.
1.9.2 Chapter 2: Literature Review
Chapter two is about literature review. In this chapter, it will be
discussing and analysing the problem towards the existing systems. Heuristic
Algorithm that will be used in the system will be discussed.
1.9.3 Chapter 3: Methodology
Chapter three will be described the methodology of the research used in
the system. The detailed explanations about every phase are stated.
1.9.4 Chapter 4: Design and Project Modeling
Chapter four discuss about design and data modelling comprises of a
context diagram, data flow diagram, framework, and database design. Besides,
more details will be describes about the design of the model.
11 | P a g e
1.9.5 Chapter 5: Implementation and Testing
Chapter five consist of the explanation about implementation of Heuristic
Algorithm and hybrid mobile application technique for this system.
1.9.6 Chapter 6: Results and Discussion
In chapter six, there are several elements discussed which project
achievement, project limitation and some improvements will be discussed.
Finally, the conclusion for the project will be conclude.
1.10 Summary
In chapter 1, the purpose of the project of the system is identified to
overcome the problems that occur in the current system. Also, the function and
limit of the project are stated. Besides, the brief about every chapter was stated in
this chapter.
12 | P a g e
CHAPTER II
INTRODUCTION
2.1 Introduction
Literature review is made research about the critical points of current
knowledge on a specific topic and describes how this research relates to existing
works on scheduled task alert system. The purpose is to justify the choice of
research questions, theoretical or conceptual framework, and the method. In this
chapter consist of system review and method review. System review is about the
comparison for the existing system whereas the method review is study and
analyze about the technique and methodology that suited for the system.
2.2 Heuristic Algorithm
Heuristic algorithm to minimise the sum of the total flow-times, a criterion
which at the same time minimises the average processing time. This is a sensible
target in applications such as agile manufacturing where jobs are constantly added
to the job list. When evaluated over a large number of problems of various sizes,
the heuristic is found to be very effective in yielding near-optimal solutions. In
13 | P a g e
this system, I used this algorithm when there is two assignment that need to be
send at the same date but need to organize according to the priority of consuming
time to complete the assignment.
2.3 Hybrid Mobile Application
A hybrid application is one that combines elements of both native and
Web applications. Native applications are developed for a specific platform and
installed on a computing device. Web applications are generalized for multiple
platforms and not installed locally but made available over the Internet through a
browser. Hybrid application are often mentioned in the context of mobile
computing. Hybrid application features which can function whether or not the
device is connected. Other than that, integration with a device’s file system and
integration with Web-based services. An embedded browser to improve access to
dynamic online content. The device capabilities are exposed to the hybrid
application through an abstraction layer. The abstraction layer exposes the devices
capabilities. In this system, to use hybrid mobile application for web based
application I used Laravel and to convert it into mobile application I used
Cordova to build apk and then install apk-debug in android mobile.
14 | P a g e
2.4 Existing System
AUTHOR/TITLE/Y
EAR
DESCRIPTION ADVANTAGES DISADVANTAGES
Lina Ni, Jinquan
Zhang, Chungang
Yan,Changjun Jiang,
A Heuristic
Algorithm for Task
Scheduling Based on
Mean Load.
Efficient task scheduling is
critical to achieving high
performance on
grid computing
environment. A heuristic
task scheduling algorithm
satisfied
resources load balancing
on grid environment is
presented in this paper.
Manage the
scheduled organize
and according to
prioritize of the
consuming time.
Need internet
connection
Masoomeh sanei and
Nasrollah
Moghaddam
Charkari, Hybrid
Heuristic-Based
Artificial Immune
System For Task
Scheduling,
November 2011
Task scheduling problem
in heterogeneous systems
is the process of allocating
tasks of an application to
heterogeneous processors
interconnected by high-
speed networks, so that
minimizing the finishing
time of application as
much as possible.
It can used in web
based application
and mobile
application. Other
than that it can
saving time to find
solution.
Need active internet
connectivity
15 | P a g e
Dan Caligor, New
York, NY (US) /
Calendar Based Task
And Time
Management System
And Methods / 2017
A software solution for
managing, sorting and
ranking lists of tasks and
integrating task and time
management, such that
tasks can be automatically
or manually assigned to
specified time blocks.
A software-based
system that uses
computers and
handheld devices
to facilitate the
improved
management,
prioritization,
scheduling and
tracking of tasks
and projects by
individuals or
groups.
Tasks may or may not
be associated with a
specified duration, and
may or may not have a
specified start time.
Geoffrey G. Stahl,
San Jose, CA (US);
Teck Yang Lee,
Cupertino, CA (US)/
Dynamics Alert For
Calendar Events
/2013
A computing device can
access a calendar entry
having an associated
location, in a calendar
application. The computing
device can dynamically
determine an estimated
travel time to the location
associated with the
calendar entry.
Can be a mobile or
non-mobile
computing device,
can dynamically
determine an
estimated travel
time to the
location associated
with the calendar
entry.
Need an internet
connection to access
it.
16 | P a g e
2.5 Summary
From this chapter, the main function of the project have been explained
specifically like the function of Heuristic algorithm and hybrid mobile
application. After that, the analysis from the existing project that had a similar
function are made as a reference and guidance about how to develop this project.
There are some helpful information that can be used for the developing phases.
17 | P a g e
CHAPTER III
METHODOLOGY
3.1 Introduction
Software development methodology is the important fundamental part in
determining the success of the project. The development of various aspects of the
system can make it more comprehensive and complete. All elements associated
with the system such as understanding of existing systems, data analysis, process
design of new systems and processes to implement and maintain the system are
included. Proper methodology can make the system more systematic and
effective. The Prototyping Model is selected as a guideline help to develop the
system in the required time.
18 | P a g e
3.2 System Development Methodology
The selected methodology that used in develops of Scheduled Task Alert
System is Prototyping Model. This model uses to build a prototype with minimum
requirement analysis. If the actual requirement are collected and understood, then
the actual system will develop with much knowledge of user requirement. There
are six phases are involved in this model such as requirement gathering or
collection, quick design, build prototyping, user evaluation, refine prototyping,
and final product.
Figure 3.1: Prototyping Model
3.2.1 Requirement Gathering
Discuss with user to identify and collect the objectives, requirements and
specification about schedule information in Scheduled Task Alert System for the
prototype system. The schedule information such as subject id, subject name, start
time, end time, date, and due date of assignment are collected as a main data.
19 | P a g e
3.2.2 Quick Design
A sketch or quick design of the prototype also framework, context
diagram (CD), data flow diagram (DFD), and entity relationship diagram (ERD)
allow user participant to evaluate what and how the real prototype works.
Graphical user interface also being made in this phase to deliver a more clear
picture of how the system look.
3.2.3 Building Prototype
A prototype is built based on user requirement that are evaluated by user.
The prototype is developed in accordance to the requirements gathered in Quick
Design phase. The prototype is developed using PHP Programming Language,
MySQL database and XAMPP server. It is built as hybrid mobile application as
what is proposed in the proposal.
3.2.4 Customer / Supervisor Evaluation
In this phase, supervisor are evaluates the prototype. The prototype is test
to see and feel how satisfy the requirement to supervisor. Once supervisor agreed
and satisfied with the prototype, this prototype will be terminated and continues to
the other phase.
20 | P a g e
3.2.5 Refining Prototype
In this phase, refinements of requirements such as add new requirement or
delete unnecessary requirement are made to the prototype so that supervisor are
satisfy and comfortable with the new system. After refining, the prototype is once
again built and evaluates by supervisor.
3.2.6 Engineer Product
Finally, the prototype is built. The design of the prototype helps to
skeleton and guideline to the outline of the real system. Product of this phase is
one fully functioning system that meets the user requirement and is ready to be
delivered to the client.
3.3 System Development Environment
System requirement consists of two components such as software
requirement and hardware requirement. Both components are essential elements
for successful software development process and mutually interdependent. The
performance of the system application is based on the integration between
software and hardware used. Without those requirements, system may
malfunction and does not work properly.
21 | P a g e
3.3.1 Software Requirement
Software requirements deal with defining software resource requirements and pre-
requisites that need to be installed on a computer to provide optimal functioning of an
application. These requirements or pre-requisites are generally not included in the
software installation package and need to be installed separately before the software is
installed
Software Type Description
Operating System - Windows 7 Professional x64
Web Browser Used to view and test the code
- Google Chrome
- Mozilla Firefox
Diagramming vector graphic application Used to draw a flow of data such as DFD
or ERD
- Microsoft Word 2010
- Edraw Max 9.3
Documentation Software To make a guideline of how system work
- Microsoft Office 2013
File Management Software Used to store file and share among the
group member in cloud storage. It also
works as online backup storage.
- Dropbox
22 | P a g e
Text Editor Text editor is to write and edit a source
code such as HTML or PHP.
- Laravel
- Notepad++
PHP Development Environment Used for website development
- XAMPP
TABLE 3.1: Software Requirement
3.3.2 Hardware Requirement
The most common set of requirements defined by any operating system or
software application is the physical computer resources, also known as hardware.
Item Name Quantity Description
Laptop (Asus) 1 - Processor : Inter Core i5
- Operating System : Windows 7
Professional 64bit
- Memory : 6GB RAM
- Hard Drive : 500GB
Wireless Network 1 - UniSZA-Hotspot
Physical Backup Storage 1 - Pendrive 32GB
TABLE 3.2 : Hardware Requirement
23 | P a g e
3.4 System Design
In the system design, the flow of the system is organized to enable the system
development will progress smoothly. The details of the framework, context diagram, data
flow diagram (DFD) and also the entity relationship diagram (ERD) will be explain in
detailed in this chapter. The way of the system functionality is drawn in the diagram to
make clear the understanding of the each process of the system and facilitating the
interaction between the system designer, programmer and also the end-users.
3.4.1 Framework
FIGURE 3.2 : System framework for system
The framework are indicating on what kind of programs should be build and how
they would interrelate. In the figure 3.2, student need to register into the system and
generate their own schedule. Admin can manage information about lecturer and provide
schedule to student. Lecture need to input the assignment into the system that the student
24 | P a g e
need to complete it. Other than that, lecturer also can add new subject or update it in this
system. The application of the scheduled task alert system act as the interface to the user
and the system which retrieves and send data to the system database.
3.4.2 Process Model
3.4.2.1 Context Diagram
FIGURE 3.3 : Context Diagram
25 | P a g e
From the context diagram above, there are three entities involved in the
Scheduled Task Alert System which are student, lecturer and admin. The main user is
student and lecturer because they are user that will use this system. In addition, data flow
from student to system is student add a few information about them and about the
schedule. While data flow from the system to student it can be student view the scheduled
that they need to update and get notification from the system that they need to complete
their assignment.
For lecturer, data flow from the lecturer to the system showed that lecturer need to
login the system and add, update or delete assignment. While data flow from the system
to the lecturer is to notified lecturer that student has sent their assignment.
For admin, the data flow coming to the system is login process, manage lecturer
and manage schedule. Admin will provide course schedule to the student.
26 | P a g e
3.4.2.2 Data Flow Diagram level 0
Figure 3.4: Data Flow Diagram Level 0
Figure 3.4 represent the overall function and process for Schedule Task Alert
System. There are twelve overall process that is manage admin, manage lecturer, manage
subject, manage schedule, verify login, manage register, view schedule, get notification,
manage task, view task, manage submission and lecturer get notification about the
submission from system. DFD level 0 shows relationship between entity, process and
data store.
27 | P a g e
3.4.2.3 Data Flow Diagram Level 1
3.4.2.3.1 Manage Admin
Figure 3.5: Data Flow Diagram Level 1 for Manage Admin
Based on the above data flow diagram level 1 for manage admin, admin can
register account and admin can update their information into the system. Other than that,
admin need to verify login details when they need to enter the system.
28 | P a g e
3.4.2.3.2 Manage Lecturer
Figure 3.6: Data Flow Diagram Level 1 for Manage Lecturer
Figure 3.6 show that admin need to register and update about the information of
lecturer to the system in order to use the system. The data that flows in two process are
the details of the lecturer. Then the latest details will be stored in the data store D1 of
User file.
29 | P a g e
3.4.2.3.3 Manage Subject
Figure 3.7: Data Flow Diagram Level 1 for Manage Subject
Based on the above data flow diagram level 1 for manage subject process, there
are create subject and update subject. Lecturer can create subject and update the latest
subject in the system. the details of the subject that lecturer add into the system will be
stored in data store D2 of manage subject.
30 | P a g e
3.4.2.3.4 Manage Schedule
Figure 3.8: Data Flow Diagram Level 1 for Manage Schedule
Based on the above data flow diagram level 1 for manage schedule, there are two
entities are involved which are admin and student. There are create schedule, view
schedule and update schedule. For student, they can update schedule to the latest. The
details of the schedule will be stored in data store D3 of schedule file.
31 | P a g e
3.4.2.3.5 Manage Register
Figure 3.9: Data Flow Diagram Level 1 for Manage Register
Based on the data flow diagram level 1 for manage register, there are two process
and one entity. The process are register information and register subject. Student need to
register their information to the system to be user of the system. Other than that, student
need to choose their subject. The details of students will be store in the data store D1
which is data store user while the selected subject that student choose will be store in the
data store D2 which is data store subject.
32 | P a g e
3.4.2.3.6 Manage Task
Figure 3.10: Data Flow Diagram Level 1 for Manage Task
Based on the above data flow diagram level 1 for manage task process, there are
three process which are create task, view task and update task. For this process, lecturer
need to add and update task and send to the system for student complete it. The
information about the task will be stored in data store D4 of the task file.
33 | P a g e
3.4.2.3.7 Manage Submission
Figure 3.11: Data Flow Diagram Level 1 for Manage Task
Based on the above data flow diagram level 1 for manage task process, there are
create submission, view submission and update submission. In this case, student need to
create submission, and edit it if there is any changes. The details of the submission will
be stored in data store D5 which is in Kelip.
34 | P a g e
3.4.2.3.8 Verify Login
Figure 3.12: Data Flow Diagram Level 1 for Verify Login
Based on the above data flow diagram level 1 for verify login process, there are
two entities that involved in this process which are lecturer and student. Student and
lecturer need to login the system before using it. After that, student also can reset their
password to the new one. The details of verify login will be stored in the data store D1
which is data store user file.
35 | P a g e
3.4.3.3 Entity Relationship Diagram (ERD)
Figure 3.13: Entity Relationship Design (ERD)
The figure above shows an entity relationship diagram (ERD) for scheduled task
alert system. There are student, lecturer, admin, subject, task, and schedule entity. They
are connected to each other.
36 | P a g e
3.5 Proof of Concept
Homepage
37 | P a g e
Admin (optional to use mobile or web application)
- Login page - Manage Lecturer
- Manage schedule
38 | P a g e
Student
- Manage register - Login student
- Manage schedule
39 | P a g e
- Manage submission
For manage submission on mobile application just design. Student need to use
web based application to submit the assignment. It is because mobile application does not
support to upload the assignment.
40 | P a g e
Lecturer
- Login page - Manage subject
- Manage task
41 | P a g e
3.6 Summary
From this chapter, the framework, context diagram (CD), data flow diagram
(DFD) level 0 and level 1, and entity relationship diagram (ERD) has been presented.
The framework and context diagram will be the general function while the details are on
data flow diagram level 0 and level 1.
4.0 Conclusion
Scheduled task alert system for student and lecturer UniSZA is important to make
student aware with their assignment deadline while it also benefit for lecturer about
submission assignment of their student.
5.0 References
1) Stahl, G. G., & Lee, T. Y. (2013). U.S. Patent No.8,423,288. Washington, DC:
U.S. Patent and Trademark Office.
2) Alameh, R. M., Alberth, W. P., & Dickinson, T. (2014). U.S. Patent No.
8,766,805. Washington, DC: U.S. Patent and Trademark Office.
3) Caligor, D. (2017). U.S. Patent No. 9,659,260. Washington, DC: U.S. Patent
and Trademark Office.
4) “What Is Hybrid Application (Hybrid App)? - Definition from WhatIs.com.”
SearchSoftwareQuality, searchsoftwarequality.techtarget.com/definition/hybrid-
application-hybrid-app.
5) An Introduction to Biometric Recognition - IEEE Journals & Magazine, Wiley-
IEEE Press, ieeexplore.ieee.org/document/8704/authors#authors.