web information management: faculty website...laman web fakulti unisza yang sedia ada tidak...

74
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

Upload: others

Post on 08-Feb-2021

3 views

Category:

Documents


0 download

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