web information management: faculty website...laman web fakulti unisza yang sedia ada tidak...
TRANSCRIPT
-
WEB INFORMATION MANAGEMENT: FACULTY WEBSITE
NAJAH FASIHAH BINTI MOHD ZAINUDDIN
BACHELOR OF COMPUTER SCIENCE
(SOFTWARE DEVELOPMENT) WITH HONOURS
FACULTY OF INFORMATICS AND COMPUTING
UNIVERSITI SULTAN ZAINAL ABIDIN
2019
-
i
DECLARATION
I hereby declare that the report of the project titled Web Information Management:
Faculty Website is based on my own investigations and based on information from
sources that stated. This dissertation is submitted to the Faculty Informatics and
Computing, Universiti Sultan Zainal Abidin as partial fulfilment of the requirements
for the Bachelor of Computer Science (Software Development) with Honour. I also
declare that this thesis has been composed solely by me and it has not been previously
submitted for any other degree at Universiti Sultan Zainal Abidin.
_____________________________________
Name : Najah Fasihah binti Mohd Zainuddin
Date : 16th
May 2019
-
ii
CONFIRMATION
I have read this report and in my point of view, this project report was prepared and
submitted by Najah Fasihah binti Mohd Zainuddin (BTAL16044445) and had been
satisfactory in scope, quality, and presentation as partial fulfilment of the condition
and requirements to be awarded as Bachelor of Computer Science (Software
Development) with Honour. I also confirm that the research conducted and the writing
of this report was under my supervision.
_______________________________________
Name: Prof Dr.Mohd Nordin bin Abdul Rahman
Date: 16th
May 2019
-
iii
DEDICATION
In the name of Allah SWT, Most Gracious, Most Merciful
First of all, thanks to Allah Almighty for giving me strength and provided me with
good health throughout this project. This final year project, Android Based Real Time
Parcel Management and Tracking System with Integrated GPS is dedicated to my
beloved mother and father who is giving me a lot of moral support to complete this
project. Also, to my supervisor, Prof Dr. Mohd Nordin bin Abdul Rahman that always
support me and guides me to complete my final year project. Last but not least, my
sincere thank you goes to all lecturers and Bachelor of Computer Science (Software
Development) group members who always help me in many ways to complete this
project.
-
iv
ABSTRACT
Universiti Sultan Zainal Abidin (UniSZA) is the 18th public institution of higher
learning, located in the state of Terengganu, Malaysia. The university has four
campuses and has a total of 12 different faculties. The current website of faculty does
not provide a platform that allows user to search information about different faculty
on a single web app. This is because each faculty has their own difference website. To
find out information on different faculties, users need to access each of the related
faculty website. This causes users to take a long time to get the information they need.
The project of Web Information Management: Faculty Website proposes a web
service that will integrate information from difference faculty website at UniSZA to
help users minimize their time in searching information about the faculty. The use of
JSON techniques is one of the alternative methods works as syntax for storing and
exchanging data of the websites. Three processes involved; read data from source
data, convert into JSON format and read the JSON format.
-
v
ABSTRAK
Universiti Sultan Zainal Abidin (UniSZA) adalah institusi pengajian tinggi awam ke-
18 yang terletak di negeri Terengganu, Malaysia. Universiti ini mempunyai empat
buah kampus dan mempunyai 12 buah fakulti keseluruhannya. Laman web fakulti
UniSZA yang sedia ada tidak menyediakan platform yang membolehkan pengguna
mencari maklumat mengenai fakulti yang berbeza pada satu aplikasi web. Hal ini
adalah kerana penggunaan laman web yang berbeza-beza bagi setiap fakulti. Oleh hal
yang demikian, untuk mendapatkan maklumat berkaitan fakulti yang berbeza,
pengguna perlu mengakses setiap laman web fakulti yang berkait satu persatu. Hal ini
boleh memakan masa yang lama bagi pengguna mendapatkan maklumat yang mereka
perlukan. Projek Pengurusan Maklumat Web: Laman web Fakulti mencadangkan
perkhidmatan web yang akan mengintegrasikan maklumat daripada semua laman web
fakulti yang terdapat di UniSZA untuk membantu pengguna meminimumkan masa
mereka dalam mencari maklumat yang diperlukan. Penggunaan teknik JSON adalah
salah satu kaedah alternatif yang berfungsi sebagai sintaks untuk menyimpan dan
menukar data dari laman web. Tiga proses yang terlibat; baca data dari data sumber,
tukar ke format JSON dan kemudian baca kemabali format JSON tersebut.
-
vi
CONTENT
Page
DECLARATION i
CONFIRMATION ii
DEDICATION iii
ABSTRACT iv
ABSTRAK v
CONTENT vi
LIST OF TABLES viii
LIST OF FIGURES ix
LIST OF ABBREVIATIONS / TERMS / SYMBOLS xi
LIST OF APPENDICES xii
CHAPTER I INTRODUCTION
1.1 Background 1
1.2 Problem Statement 2
1.3 Objectives 2
1.4 Scope 3
1.5 Limitation of work 4
1.6 Expected Result 4
1.7 Conclusion 4
CHAPTER II LITERATURE REVIEW
2.1 Introduction 5
2.2 Technique 6
2.3 Summaries from the articles 10
2.4 Summary 11
CHAPTER III METHODOLOGY
3.1 Introduction 12
3.2 System Development Life Cycle (SDLC) 13
-
vii
3.3 System Development Life Cycle (V- Model) 14
3.4 System Requirement 19
3.5 System Design 20
3.6 Summary 31
CHAPTER IV IMPLEMENTATION
4.1 Introduction 32
4.2 Programming Languages 32
4.3 Interface Design 33
CHAPTER V TESTING AND RESULT
5.1 Introduction 42
5.2 Testing Analysis 42
5.3 Test Case Documentation 44
5.4 Result 55
CHAPTER VI CONCLUSION
6.1 Introduction 57
6.2 Findings/Constraint 57
6.3 Future Works 58
6.4 Conclusion 58
REFERENCES 59
-
viii
LIST OF TABLES
TABLE TITLE PAGE
2.1 Comparison between JSON and XML 8
2.2 Summaries of Articles 10
3.1 Admin 28
3.2 Staff 29
3.3 Login 29
3.4 Faculty 30
5.1 Test case Success Login 45
5.2 Test case Failed login 46
5.3 Test case Register New Staff 47
5.4 Test case Delete staff 48
5.5 Test case Update staff 49
5.6 Test case Register new faculty 50
5.7 Test case Delete faculty 51
5.8 Test case Update faculty 52
5.9 Test case Update faculty 53
5.10 Test case Change password 54
5.11 Test case Logout 54
-
ix
LIST OF FIGURES
FIGURE TITILE PAGE
3.1 Software Development Life Cycle Phase 13
3.2 V Model 14
3.3 Framework 20
3.4 Context Diagram 21
3.5 Data Flow Diagram Level 0 23
3.6 Data Flow Diagram Level 1: Manage Staff 24
3.7 Data Flow Diagram Level 1: Manage Faculty 25
3.8 Data Flow Diagram Level 1: Manage Data 26
3.9 Entity Relationship Diagram 27
4.1 Homepage 33
4.2 Login Page 34
4.3 Admin Homepage 35
4.4 Form for add and update staff 35
4.5 Delete Data 36
4.6 Form for updating profile 36
4.7 Form for Change password 37
4.8 Logout 37
4.9 Homepage for Staff 38
4.10 Form for adding/updating faculty data 39
-
x
4.11 Delete Data 39
4.12 Update Profile 40
4.13 Form for Change Password 40
4.14 Logout 41
5.1 Search Faculty 55
5.2 Search Result 55
5.3 List of Faculties 56
5.4 Faculties Page 56
-
xi
LIST OF ABBREVIATIONS / TERMS / SYMBOLS
CD Context Diagram
DFD Data Flow Diagram
ERD Entity Relationship Diagram
FYP Final Year Project
PK Primary Key
FK Foreign Key
SDLC System Development Life Cycle
-
xii
LIST OF APPENDICES
APPENDIX TITLE PAGE
A Gantt chart 60
B JSON File 61
-
1
CHAPTER I
INTRODUCTION
1.1 Background
Universiti Sultan Zainal Abidin (UniSZA) is the 18th public institution of
higher learning, located in the state of Terengganu, Malaysia.The University has four
campuses namely Gong Badak Campus, Medical Campus, Tembila Campus and the
latest is UniSZA International Campus (UIC) in Kuala Lumpur City. The university
has 12 faculties located in different campuses which offer programs in diploma,
bachelor’s and master’s level as well as doctor of philosophy.
The Web Information Management: Faculty Website is a web application that
provides the main information on all the twelve faculties available at UniSZA to users
on one web application. This web app provides the ability to store the database of
multi website. It allows user to get information faster and easier without having to
access each faculty website to find the required information.
-
2
1.2 Problem Statement
The current faculty website provided can be time consuming to find the information
needed as each faculty has their own website. Users need to click each faculty's
website one by one when they want to find information about several faculties at the
same time. It also does not provide web applications that allow users to obtain
different faculty information on a single web page.
1.3 Objectives
There are three objectives that have been identified in this project. The objectives are
as follows:
i. To design a web application that can give convenience to the user
to minimize their time in finding the information about the faculty
at UniSZA.
ii. To develop a web application that will integrate information from
different faculty websites.
iii. To test the functionality of a web app that allows user to search
information about the faculties.
-
3
1.4 Scope
In order to achieve the objective of this project, there are several scopes have been
outlined. This scope shows about the user who will use this system and how it can be
established later.
1.4.1 User
Users able to access the information about the faculties at UniSZA by searching on the
search box without logging in to the system
1.4.2 Admin
For this system, the admin is a responsible person who can control and manage the
staff that manages this system. Admin can login to the system, manage staff and
logout.
1.4.3 Staff
Staffs are the ones responsible for controlling and managing this system's data. Staff
can login to the system, manage faculty data and logout.
The scope for this project is:
i. The system focuses on web information management of faculty website.
ii. The system will integrate the information from the existing faculty website and
provide the information to the users.
iii. The target user of this system is for everyone who wants to find information
about the faculty especially for the staff and students of Universiti Sultan
Zainal Abidin.
-
4
1.5 Limitation of work
This web application does not provide all faculty-related information but only
provides information on main information such as vision, mission,
background, programs and lecturer for each faculty.
1.6 Expected Result
The users will be able to search information about the twelve faculties of
UniSZA on a web application provided without having to direct access to each
faculty website.
1.7 Conclusion
As a conclusion, chapter 1 explains about the overview of this system, problem
statement, objectives of the project, scopes, limitation of work and lastly
expected result.
-
5
CHAPTER II
LITERATURE REVIEW
2.1 Introduction
Along with the rapid development of technology, many efforts have been
made to ensure the technology used in Malaysia is in line with world development.
Regardless of Government or Non-Governmental Organizations, they try to replace
the latest technology with more sophisticated, fast and easy-to-use technology.
As we know, literature review is important before developing new
technologies as it identifies the methods used in previous studies on the topic and also
provide comparisons for your own research findings. To understand more about this
project, some research on existing systems has been created.
-
6
2.2 Technique
2.2.1 JSON Technique
JSON is designed to be a data exchange language which is human readable
and easy for computers to parse and use them. In fact, there are many systems that use
the JSON approach as well as the XML language. JSON is known as JavaScript
Object Notation that represents a simple data structure and recently all modern
browsers can support JSON.
JSON is used for transmitting the data over a network connection that connects
between the server and a web application. This technique is an alternative way
compare to XML techniques. By using JSON, data sources will be integrated into one
application.
Meaning that, all the data sources have own database, so to create an
application with multiple databases, it will be easy by using JSON as it allows
different databases to access data sources from other applications. Then it also
provides better and good performance for database integration collection.
-
7
2. XML technique
XML is known as Language Markup eXtensible and is not tied to any
programming language as it can use to construct other language for defining new
document formats for the World Wide Web (www). This XML make use of elements
and attributes to describe data and in XML, each element contains number of
attributes.
It differences with the JSON because the data that get from the database is
converting into XML format then it will load and give the customer as HTML format.
XML also can create human-readable structure of data and as self-describing
documents that can conform to a set of rules.
In other word, XML is a platform-independent complex and more complex
rather than JSON in integrate of the database. Then for querying in XML may present
issues because parsing XML can be costly in term of parsing time.
-
8
3. Differences between JSON and XML approach
Technique Speed Fetch data
from server
Verbose Array
of
Usage
Coding
XML Slower Use XMLHttp
Request to
fetch data
from server
More
verbose
Not
include
array
Safee
Sali
Sapiq
Rahim
JSON Faster Can fetch data
from server
with and
without
XMLHttp
Request in
AJAX, it also
uses
JSONRequest.
Not
verbose
Include
an
array
{“players”:[
{“firstName”:”Safee”,
“lastName”: “Sali”}
{“firstName”:”Sapiq”,
“lastName”:
“Rahim”}
]}
Table 2.1: Differences between JSON and XML
-
9
4. Advantage of JSON
There are four (4) advantages of JSON. Firstly, JSON has a smaller message size.
Besides, JSON is more structural information in the document. It can easily
distinguish between the numbers 1 and the string “1” as a number, strings (and
Booleans) are represented differently in JSON. It can also distinguish between single
items and collections of size one by using JSON arrays. Next, JSON can easily
represent a null value and the last, JSON is more compact and can be easily loaded in
JavaScript
-
10
2.3 Summaries from the articles
Title/Author/Year System Strength Weakness
A comprehensive
analysis of XML
and JSON web
technologies
- Zia Ul Haq,
Gul Faraz
Khan, Tazar
Hussain
- 2015
Using the
HTML,
JavaScript, ASP,
JSP, XML,
JSON and etc on
web
technologies to
represent the
information on
the internet.
- The ultimate
compression
ratio, with a
tiny
negligible
performance
overhead
- A minified
JSON message
is a better
alternative to
using traditional
XML messages,
or specialized
XML
compression.
Automated web
usage data mining
and
recommendation
system using K-
Nearest
Neighbor(KNN)
classification
method
- D.A.
Adeniyi, Z.
Wei, Y.
Yongquan
- 2014
Using the
HTML,
JavaScript, RSS,
KNN
- Automaticall
y discover
and extract
useful
information
from a
particular
web site
- Identify
visitors click
stream data
matching it
to a
particular
user group
- RSS is
essentially just
plain-text XML
A web service
based on RESTful
API and JSON
Schema/JSON
Meta Schema to
construct
knowledge graphs
- Adam
Agocs
- 2018
Using the
HTML,
JavaScript,
RESTful API,
JSON
- Be able to
create the
elements of
knowledge
graph(s) and
validate the
uploaded
data together
with the
elements
- Development of
the validation
code required
for JSON-LD
would call for a
substantial
amount of work
in comparison
with the gain in
expressiveness
Table 2.2: Summaries of Articles
-
11
2.4 Summary
As the summary of this chapter 2, it shows that the Literature Review is giving
a good effect about the research. From that, we can get more knowledge about the
research that we search for.
In the other word, review is look again at what others have done in areas that
are similar, though not necessary identical to, one’s own area of investigation and it
can show how others have handled methodological and design issues in studies
similar.
-
12
CHAPTER III
METHODOLOGY
3.1 Introduction
This chapter discusses the methodology that was used during the system
development project. The flow of the project will discuss briefly to give more
understanding of design and develop of this project. There are many method can be
used for developing this project. One of the methodologies that suitable for this
project is System Development Life Cycle (SDLC). In this methodology is based on
phases for each development process.
-
13
3.2 System Development Life Cycle (SDLC)
System Development Life Cycle(SDLC) contain of detailed plan describing to
develop a system or web services, maintain and replace specific software. This
methodology is for improving the quality of software and the overall development
process which have a beginning of the operation and end of the operation. SDLC
consists of six phases which is Planning, Analysis, Design, Implementation, Testing
and Integration and maintenance.
Figure 3.1: SDLC Phase
-
14
3.3 System Development Life Cycle (V- Model)
Figure 3.2 show the V- model that is chosen in in developing this project. The
V-Shaped model focused on the importance of testing during all stages of
development. Each phase in V-Shaped model has to be evaluated by the client with
review and verified by specific deliverable before proceeding to the next phase.
Furthermore, this model has a number of advantages such as earlier receipt user
feedback, earlier review and evaluation of requirements which helps in developing
additional requirements and upfront monitoring of quality. This is one of the few
available ways to generate a quality software product.
Figure 3.2: SDLC (V-Model)
Requirement Analysis
System Design System testing
User Acceptance
Testing
Architectural Design
Module Design
Integration Testing
Coding
Unit Testing
Verification and
Validation
-
15
3.3.1 Verification Phases
3.3.1.1 Requirements analysis
In this phase, the requirements of the proposed system are collected by analyzing user
requirements. This phase is concerned about creating an ideal system to implement it.
Usually, the users are interviewed and a document called the user requirements
document is generated. The user requirements document will typically describe the
system’s functional, physical, interface, performance, data, and security requirements
as expected by the user. It is a way that business analysts use to communicate their
understanding of the system to the users. The users carefully review this document as
this document will be the guideline for the system designers to design the system. The
user acceptance tests are designed in this phase.
3.3.1.2 System Design
System engineers analyze and understand the proposed system business by reviewing
user requirements documents. They figure out possibilities and techniques by which
the user requirements can be implemented. If any of the requirements are not feasible,
the user is informed of the issue. A resolution is found and the user requirement
document is edited accordingly.
The software specification document which serves as a blueprint for the development
phase is generated. This document contains the general system organization, menu
structures, data structures etc. It may also hold example business scenarios, sample
windows, reports for the better understanding. Other technical documentation like
entity diagrams, data dictionary will also be produced in this phase. The documents
for system testing are prepared in this phase.
-
16
3.3.1.3 Architecture Design
This phase can also be called as high-level design. The baseline in choosing the
architecture is that it should realize all which typically consists of the list of modules,
brief functionality of each module, their interface relationships, dependencies,
database tables, architecture diagrams, technology details etc. Integration testing
designs are conducted within this phase.
3.3.1.4 Module Design
This phase can also be called as low-level design. The designed system is broken up in
to smaller units or modules and each of them is explained so that the programmer can
start coding directly. The low level design document or program specifications will
contain a detailed functional logic of the module, in pseudo code - database tables,
with all elements, including their type and size - all interface details with complete
API references- all dependency issues- error message listings- complete input and
outputs for a module.
-
17
3.3.2 Validation phases
In the V-model, each stage of verification phase has a corresponding stage in the
validation phase. The following are the typical phases of validation in the V-Model.
3.3.2.1 Unit testing
In the V-Model, Unit Test Plans (UTPs) are developed during module design phase.
These UTPs are executed to eliminate bugs at code level or unit level. A unit is the
smallest entity which can independently exist, e.g. a program module. Unit testing
verifies that the smallest entity can function correctly when isolated from the rest of
the codes/units.
-
18
3.3.2.2 Integration Testing
Integration Test Plans are developed during the Architectural Design Phase. These
tests verify that units created and tested independently can coexist and communicate
among themselves. Test results are shared with customer's team.
3.3.2.3 System testing
System Tests Plans are developed during System Design Phase. Unlike Unit and
Integration Test Plans, System Test Plans are composed by client's business team.
System Test ensures that the expectations of the develop application are met. The
whole application is tested for its functionality, interdependency and communication.
System Testing verifies that the functional and non-functional requirements have been
met. Load and performance testing, stress testing, regression testing, etc., are subsets
of system testing.
3.3.2.4 User acceptance testing
User Acceptance Test (UAT) Plans are developed during the Requirements Analysis
phase. Test Plans are composed by business users. UAT is performed in a user
environment that resembles the production environment, using realistic data. UAT
verifies that delivered system meets user's requirement and system is ready for use in
real time.
-
19
3.4 System Requirement
The requirement of the software and hardware for developing this project is
needed in order to develop system successfully.
3.4.1 Hardware Requirement
i. Acer’s Laptop
ii. Pendrive: used to backup data and small storage in order to transfer the file
iii. Printer
3.4.2 Software Requirement
i. Eclipse
ii. Xampp: as the platform for testing the database of the system.
iii. MySQL
iv. Drop box: used to share and backup data.
v. Google Chrome
vi. Microsoft Word
vii. Microsoft Power Point
-
20
3.5 System Design
3.5.1 Framework
A framework is conceptual structure to serve as a guide for the building of
something that expands the structure into something useful. A framework is for a set
of function within a system and how they related to each other, and how
communication should be standardized at some level of a network.
Figure 3.3, shows how the data from the faculties’ website will be integrated to
provide information to the users. Initially, data sources will be extracted from some
website and parsed using Jsoup in html text. After that, all the data that has been
integrated will be converted into JSON format. Lastly the data will be sent to the
server to provide the information to users
Figure 3.3: Framework
[Ty
-
21
3.5.2 Process Model
3.5.2.1 Context Diagram
Context diagram is a high level view of a system, and a diagram that defines
the boundary between the system, or part of a system, and its environment, showing
the entities that interact with it.
Based on figure 3.4, there are three entities that interact with the system which
are Admin, Staff and User. First, the user is one of the important users in this system
because of the required requirements. Second is the administrator who can register the
staff who will manage this system. And the third is the staffs which are their task are
more to update the information and control this system properly.
Figure 3.4: Context Diagram
https://en.wikipedia.org/wiki/Systemhttps://en.wikipedia.org/wiki/Diagramhttps://en.wikipedia.org/wiki/System
-
22
3.5.2.2 Data flow diagram
A data flow diagram (DFD) is a graphical representation of the flow
of data through an information system and it is another way of showing the
information flow of the process. DFD consist of four major components; entities,
processes, data stores and data flows. DFD are important to reveals relationship
between component in the system and for modelling a system’s high level detail by
showing how input is being transformed to output result through sequence of
functional transformations.
Figure 3.5 shows the DFD level 0 which is the main data process of this
system that involves six processes which are login, manage staff, manage faculty, data
verification, search info and lastly generate report.
-
23
Faculties’
information
Faculties’
information
manage data
login
staff details
staff
faculty info
Admin details
Login
authentication
Login
authentication
login
faculty info
Report
Verify data
Faculties’
information
staff details
JSON
Figure 3.5: Data Flow Diagram (DFD) level 0
2.0
Manage staff
faculties 3.0
Manage faculty
5.0
Search info
USER
Search info
D2
D3
6.0
Generate Report
STAFF
1.0
Login D1 admin
ADMIN
4.0
Data Verification
-
24
Staff details
Staff details
Staff details
3.5.2.3 Data Flow Diagram (DFD) level 1
i. Manage Staff
Figure 3.6 shows the DFD level 1 for manage staff. In this process, only admin
will be able to use this function. There are four processes which are add staff, update
staff, views staff and delete staff. While there are one data store involved to this
function which is admin.
Figure 3.6: DFD level 1 for manage staff
2.4
Delete staff Staff details
2.2
Update staff
Admin Staff details 2.1
Add staff
2.3
View staff
Staff details
Staff details
Staff details
Admin D4
-
25
Faculty details
Faculty details
ii. Manage Faculty
Figure 3.7 shows the DFD level 1 for manage faculty. In this process, only
staff will be able to use this function. There are four processes which are add data,
update data and delete data. While there are one data store involved to this function
which is faculty.
Figure 3.7: DFD level 1 for manage faculty
3.3
Delete data
Faculty details faculty details
3.2
Update data
Staff
Faculty details
3.1
Add data
Faculty details
Faculty details
faculty D3
-
26
JSON
iii. Data verification
Figure 3.8 shows the DFD level 1 for data verification. In this process, only
staff will be able to use this function. There are two processes which are adding and
update data. All the information stored in JSON format.
Figure 3.8: DFD level 1 for data verification
Faculties’ data
3.3
Delete
3.2
Update Staff
Faculties’ data Faculties’
information
Faculties’ information
-
27
3.5.3 Data Model
3.5.3.2 Entity Relationship Diagram (ERD)
An entity relationship model, also called an entity-relationship (ER) diagram,
is a graphical representation of entities and their relationships to each other. An entity
is a piece of data-an object or concept about which data is stored. ERD show how
data will be represented and organized in the various components of the final
database.
Figure3.9 shows the ERD for the web application of Web Information Management.
The entities for the system are ADMIN, STAFF, LOGIN and FACULTY.
Figure 3.9: Entity Relationship Model (ERD)
http://www.webopedia.com/TERM/O/object.html
-
28
3.5.3.3 Data dictionary
Database system is used to stores data in systematically and organized so that it can
be easily accessed by an authorized user. There are four tables that are involved in this
system. The following figures show the specification table that involved in this
project.
Column Type Null Key Description
adminD Varchar(20)PK No PK
staffD Varchar(20) No FK
ICNumber Varchar(20) No
fName Varchar(20) No
lName Varchar(100) No
email Varchar(50) No
tel Varchar(20) No
Table 3.1: Admin
Based on the table 3.1, table Admin has seven attributes, which are adminID,
staffID, ICNumber, fName, lName, email and tel. The primary key in this table is
userID and foreign key is staffID from table staff.
-
29
Column Type Null Key Description
staffD Varchar(20)PK No PK
adminD Varchar(20) No FK
facultyID Varchar(20) No FK
ICNumber Varchar(20) No
fName Varchar(20) No
lName Varchar(100) No
email Varchar(50) No
tel Varchar(20) No
status Varchar(20) No
Table 3.2: Staff
Based on the table 3.2, table Admin has 8 attributes, which are adminID,
staffID, ICNumber, fName, lName, email and tel. The primary key in this table is
staffID while there are two foreign key in this table which are adminID from table
admin and facultyID from table faculty.
Column Type Null Key Description
adminID Varchar(20) No FK
staffID Varchar(20) No FK
facultyID Varchar(20) No FK
password Varchar(20) No
level Varchar(20) No
Table 3.3: Login
Based on the table 3.3, table Login has 5 attributes, which are staffID,
adminID, facultyID, ICNumber and level. The foreign key in this table is staffID,
adminID and facultyID. Every time admin need to access the system, he/she need to
enter staffID/adminID and ICNumber at login interface.
-
30
Column Type Null Key Comments
facultyID Varchar(20) No PK
staffID Varchar(20) No FK
fName Varchar(100) No
fLinks Varchar(100) No
noTel Varchar(12) No
fax Varchar(12) No
campus Varchar(100) No
Table 3.3: faculty
Based on table 3.3, table faculty has seven attributes which are facultyID,
userID, fName, fLinks, noTel, fax and campus. The primary key for this table is
facultyID while the foreign key is userID from table login.
-
31
3.6 Summary
As an overall, this chapter gives details about project methodology which is
about the steps using in make sure that the proposed project had been followed the
actual procedure. This process is good in ensuring that the prototype is working
properly based on the requirements. This chapter also gives details about how to
model the data that being used in a project. Starting from the process of identified the
related entities that are involved in this system.
-
32
CHAPTER IV
IMPLEMENTATION
4.1 Introduction
This chapter explain the implementation of JSON in the project of Web Information
Management. There are three categories of users who can access these web
applications: users, staff and admin.
4.2 Programming Languages
For this Final Year Project (FYP) Web Information Management: Faculty Website is
developed using java programming by using Java Server Page (JSP). In addition,
Asynchronous JavaScript (Ajax) is also used to read data from web servers.
-
33
4.3 Interface Design
4.3.1 Main Interface
Figure 4.1: Homepage
Figure 4.1 shows the homepage of web application for the project of Web Information
Management: Faculty Website. To find out information about the faculty provided,
users need to search the faculty name in the search box. After clicking the search
button, information about the faculty will be displayed to the user. The information is
read from a JSON file and the information has been integrated and extracted from
several faculty websites.
-
34
Figure4.2: Login Page
Figure 4.2 shows the login page for staff and admin. To access the system, staffs need
to login first. After the staffs enter their details in login page, the system will verify
the type of staff, whether the admin or the staff.
-
35
4.3.2 Admin Interface
Figure 4.3 Admin Homepage
Figure 4.3 shows the main page for the admin menu that displays the lists of the staff.
This page allows admin to manage staff data where admin can register new staff,
update staff and delete staff.
Figure 4.4: Form for add and update staff
-
36
Figure 4.5: Delete Data
Figure 4.5 shows the list of the staff that has been registered. If the admin wants to
remove the staff from the list, the data can be deleted by clicking on the trash bin icon
on the right of the list and the status of staff will automatically turn into inactive.
Figure 4.6: Form for updating profile
-
37
Figure 4.7: Form for Change password
Figure 4.7 shows the interface for admin to change their password. Admin required
entering their old password which is IC Number and need to have set the new ones
and verify the password.
Figure 4.8: Logout
-
38
4.3.3 Staff Interfaces
Figure 4.9: Homepage for Staff
Figure 4.9 shows the homepage for the staff. After login as staff, staff will be
navigated to staff homepage that displays the lists of the faculty. This page allows
staff to manage faculty data where staff can register new faculty, update faculty data
and delete the data.
-
39
Figure 4.10: Form for adding/updating faculty data
Figure4.11: Delete Data
Figure 4.11 shows the list of the faculty that has been registered. If the staff wants to
remove the faculty from the list, the data can be deleted by clicking on the trash bin
icon on the right of the list.
-
40
Figure 4.12: Update Profile
Figure 4.12 show the form for the staff to updating their profile. By clicking on update
profile menu on the navigation bar, staff can update their first name, last name, email
and phone number.
Figure 4.13: Form for Change Password
-
41
Figure 4.13 shows the interface for staff to change their password. Staff required
entering their old password which is IC Number and need to have set the new ones
and verify the password.
Figure 4.14: Logout
-
42
CHAPTER V
TESTING AND RESULT
5.1 Introduction
This chapter will describe more on testing of the web application. System
testing is the testing behaviour of a complete and integrated system based on
requirements. The goal of this testing is to ensure that all requirements of this system
are met. The results are discussed after system testing is completed.
5.2 Testing Analysis
Test closure activities are done when software is delivered. To complete this
testing need to be implement in stage by stage. A good test plan goes a long way in
ensuring that the testing activities are adhered to what the testing is trying to achieve.
In testing process, there are four stages which are unit testing, integration testing,
system testing and acceptance testing.
-
43
5.2.1 Unit Testing
This testing will be focus on specific units or components in this system. Each
function in this system will be test to ensure that function in this system will be test to
ensure that function operate correctly. Each component is tested independently
without other system components. As example, when the users want to find
information about faculties, the functionality of application in this system can work
completely.
5.2.2 Integration Testing
This testing level is designed to find interface defects between the
modules/functions. It will give beneficial in this system because it can determine how
efficiently the combination of units that are running together. But unfortunately, if
there are not integrate properly it will affect the functionality of this system. For
example, for the login module, staffs need to login before manage the web application.
Of course before that, they need to be registered first by admin. If there is an error in
registration module, the coding of registration will be repaired and test again for
another time.
5.2.3 System Testing
System testing is the testing of the complete and full integrated of the system.
The main goal at this level is to evaluate whether the system has complied with all of
the outlined requirements and to see that it meets Quality Standards. The users are
-
44
allowed to do all process in this system without follow the correct flow of the system.
Example, the users can try to search information about the faculties without having to
login first to find out whether the system is work functionality or not.
5.2.4 Acceptance Testing
This is final stage before the system will be accepted for operational use. This
testing may reveal errors and omissions in the system requirements definition because
the real data exercises the system in different ways from the test data. So the users can
use this web application properly without an error or mistakes.
5.3 Test Case Documentation
Test Case is a set of condition or variables under which a tester will determine
whether a system under test satisfies requirement or work correctly. The process of
developing test can also help find problems in the requirement or design of an
application. The test case for the web application will be shown below.
-
45
Table 5.1: Test case Success Login
Test Case Success Login
No Testing Procedure Expected Result
1 Go to Homepage View Homepage
2 Click “Staff Login” Login Page loaded.
3 Enter the following details:
Staff ID
Password
4 Click “Login” button Login successful.
If level of staff equal
to 1, page for admin
displayed else if level
of staff equal to 2, page
for staff displayed
-
46
Table 5.2: Test case failed login
Test Case Failed Login
No Testing Procedure Expected Result
1 Go to Homepage View Homepage
2 Click “Staff Login” Login Page loaded
3 Enter the following details:
Staff ID
Password
4 Click “Login” button Login failed.
Login interface is
loaded.
-
47
Table 5.3: Test case Register New Staff
Test Case Register New Staff
No Testing Procedure Expected Result
1 Go to admin Homepage
2 Click on the “Manage Staff” menu Staff list is
displayed
3 Click “Register New Staff” button to register new staff Form for register
new staff displayed
4 Enter the following details:
Staff ID
IC Number
First Name
Last Name
Email
4 Click “Submit” button Register successful.
Page of manage
staff loaded
-
48
Table 5.4: Test case Delete staff
Test Case Delete Staff
No Testing Procedure Expected Result
1 Go to admin Homepage
2 Click on the “Manage Staff” menu Staff list is displayed
3 Click on “trash icon” to delete the staff from the list Alert Message “Are
sure want to delete?”
4 Click Yes to proceed Data successfully
deleted!
The status of the
deleted staff changes to
inactive.
Page of manage staff
loaded
-
49
Table 5.5: Test case update staff
Test Case Update Staff
No Testing Procedure Expected Result
1 Go to admin Homepage
2 Click on the “Manage Staff” menu Staff list is displayed
3 Click on “edit icon” to update staff information Form for updating
staff displayed
4 Update the following details:
Staff ID
IC Number
First Name
Last Name
Email
5 Click “SAVE” button Data successfully
updated!
Page of manage staff
loaded
-
50
Table 5.6: Test case register new faculty
Test Case Register New Faculty
No Testing Procedure Expected Result
1 Go to staff Homepage
2 Click on the “Manage Faculty ” menu
The list of faculties is
displayed
3 Click on the “Register New Faculty” button
Form for register new
faculty displayed
4 Enter the following details:
Faculty ID
Faculty Name
Faculty Link
Phone Number
Fax Number
Campus
4 Click “SAVE” button
Data successfully
registered!
Page of manage
faculty loaded
-
51
Table 5.7: Test case delete faculty
Test Case Delete Faculty
No Testing Procedure Expected Result
1 Go to staff Homepage
2 Click on the “Manage Faculty ” menu
List of faculties is
displayed
3
Click on “trash icon” to delete the faculty from the
list
Alert Message “Are sure
want to delete this
item?”
4 Click Yes to proceed
Data successfully
deleted!
Page of manage faculty
loaded
-
52
Table 5.8: Test case update faculty
Test Case Update Faculty
No Testing Procedure Expected Result
1 Go to staff Homepage
2 Click on the “Manage Faculty ” menu
List of faculties is
displayed
3 Click on “edit icon” to update faculty information
Form for update faculty
displayed
4
Update the following details:
Faculty Name
Faculty Link
Phone Number
Fax Number
Campus
5 Click “SAVE” button
Data successfully
updated!
Page of manage faculty
loaded
-
53
Table 5.9: Test case update faculty
Test Case Update Profile
No Testing Procedure Expected Result
1 Click on the “My Account ” menu
2 Choose “Update profile” Form for update profile
displayed
3 Update the following details:
First Name
Last Name
Email
4 Click “SAVE” button to save the details Data successfully
updated!
5 Click on the “My Account ” menu
-
54
Table 5.10: Test case change password
Table 5.11: Test case Logout
Test Case Change Password
No Testing Procedure Expected Result
1 Click on the “My Account ” menu
2 Choose “Change Password” Form for change
password displayed
3 Enter the following details:
Old Password
New password
Confirm Password
4 Click “SAVE” button Password successfully
changes!
Test Case Logout
No Testing Procedure Expected Result
1 Click on the “ Setting Icon ”
2 Click “Logout” Logout successfully!
Homepage is displayed
-
55
5.4 Result
Figure 5.1: Search Faculty
Figure 5.1 shows a search box that allows users to search information about the
faculty provided by searching using a faculty name.
Figure 5.2: Search Result
Figure 5.2 shows the result of data search. The information displayed is about the
mission, vision, background, list of programs and lecturer list. All the information was
extracted from Pharmacy faculty’s website that has been stored in a JSON file.
-
56
Figure 5.3: List of Faculties
Faculty 5.4: Faculties Page
Figure 5.3 shows a list of all faculties that have been registered by the staff. This page
is available for access by all types of users. To know detailed information about the
faculty, users can click the link provided to access directly to the faculty's website.
-
57
CHAPTER VI
CONCLUSION
6.1 Introduction
This chapter concludes the final year report and outline the future works for the Web
Information Management project. In this report, the prototype of Web Information
Management system is proposed and develops to meet three objectives mention in a
chapter 1.
6.2 Findings/Constraint
Based on developed web application, there are findings that can be found.
Users can search faculty information on one web application without having to search
at each faculty website. It will save time and users can easily get faculty information
easily and quickly.
While there are some constraint and limitations arising from this project during
the implementation of value added in this project which is JSON approach. It is a bit
difficult to understand the processes involved in developing this project. Then, another
limitation of this web application is that users can only use the faculty name as
keywords to find the information provided. This web application also provides 5
-
58
categories of information only. To know the faculty information in detail, the user
need to access directly to the faculty's website.
6.3 Future Works
Every system that has been build must have some weakness. That is why
improvement is needed from time to time in order to overcome those weaknesses. For
this system, there are some enhancements that can be made for the future such as
adding a web search query into the system that can help user to search the information
more easily. Besides, the interfaces of this system also can be improved by make it
more attractive and user friendly.
6.4 Conclusion
For the conclusion, this web application aimed to help user to get information about
the faculty at UniSZA. By using this web app, users can access faculty main
information more easily and quickly. For the technique implementation, JSON has
been used as the data exchange format for this web app to store the faculty
information and the information has been extracted and integrated from difference
faculty’s website using Jsoup. The methodology that has been used is V-model.
Besides, data flow diagram (DFD) and Entity Relationship Diagram (ERD) also
included in this report to explain more details about the system. Hopefully this web
application will be useful for those who want find information about the faculty at
UniSZA.
-
59
REFERENCES
1. Haq, Z. U., Khan, G. F., & Hussain, T. (2015). A Comprehensive analysis of
XML and JSON web technologies. New Developments in Circuits, Systems,
Signal Processing, Communications and Computers, 102-109.
2. Adeniyi, D. A., Wei, Z., & Yongquan, Y. (2016). Automated web usage data
mining and recommendation system using K-Nearest Neighbor (KNN)
classification method. Applied Computing and Informatics, 12(1), 90-108.
3. Agocs, A., & Goff, J. M. L. (2018). A web service based on RESTful API and
JSON Schema/JSON Meta Schema to construct knowledge graphs. arXiv
preprint arXiv:1804.03887.
4. Yusof, M. K., & Man, M. (2016). Efficiency of JSON approach for data
extraction and query retrieval.
5. Peng, D., Cao, L., & Xu, W. (2011). Using JSON for data exchanging in web
service applications. Journal of Computational Information Systems, 7(16),
5883-5890.
6. Crockford, D. (2006). The application/json media type for javascript object
notation (json) (No. RFC 4627).
7. Reimer, M.-L. (2018). Building RESTful Web Services with Java EE.
Birmingham: Packt Publishing Ltd.
-
60
Appendix A: Gantt chart
-
61
Appendix B: JSON File