Bookshop Management System

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 59

BOOKSHOP MANAGEMENT SYSTEM

ZAINALABEDIN A. H. BARAKA

UNIVERSITI TEKNIKAL MALAYSIA MELAKA


BORANG PENGESAHAN STATUS LAPORAN

JUDUL: [BOOKSHOP MANAGEMENT SYSTEM]

SESI PENGAJIAN: [20xx / 20xx]

Saya: ____[ZAINALABEDIN A. H. BARAKA]___________________

mengaku membenarkan tesis Projek Sarjana Muda ini disimpan di Perpustakaan Universiti
Teknikal Malaysia Melaka dengan syarat-syarat kegunaan seperti berikut:

1. Tesis dan projek adalah hakmilik Universiti Teknikal Malaysia Melaka.


2. Perpustakaan Fakulti Teknologi Maklumat dan Komunikasi dibenarkan membuat
salinan unituk tujuan pengajian sahaja.
3. Perpustakaan Fakulti Teknologi Maklumat dan Komunikasi dibenarkan membuat
salinan tesis ini sebagai bahan pertukaran antara institusi pengajian tinggi.
4. * Sila tandakan ()

__________ SULIT (Mengandungi maklumat yang berdarjah


keselamatan atau kepentingan Malaysia
seperti yang termaktub di dalam AKTA
RAHSIA RASMI 1972)

__________ TERHAD (Mengandungi maklumat TERHAD yang


telah ditentukan oleh organisasi / badan
di mana penyelidikan dijalankan)

__________ TIDAK TERHAD

(TANDATANGAN PELAJAR) (TANDATANGAN PENYELIA)

Alamat tetap: _____________________ ________________________________


Nama Penyelia
________________________________
_

Tarikh: __________________________ Tarikh: __________________________

CATATAN: * Jika tesis ini SULIT atau TERHAD, sila lampirkan surat daripada pihak
berkuasa.
i

BOOKSHOP MANAGEMENT SYSTEM

ZAINALABEDIN A. H. BARAKA

This report is submitted in partial fulfillment of the requirements for the


Bachelor of [Computer Science (Software Development)] with Honours.

FACULTY OF INFORMATION AND COMMUNICATION TECHNOLOGY


UNIVERSITI TEKNIKAL MALAYSIA MELAKA

2020
ii

DECLARATION

Chapter 1:
Chapter 2:
Chapter 3:
Chapter 4:
Chapter 5: I hereby declare that this project report entitled

Chapter 6: BOOKSHOP MANAGEMENT SYSTEM

Chapter 7: is written by me and is my own effort and that no part has been plagiarized

Chapter 8: without citations.

Chapter 9:

Chapter 10: STUDENT : ______________________________________


Date : ________
Chapter 11: ZAINALABEDIN A. H. BARAKA
Chapter 12:
Chapter 13:
Chapter 14:
Chapter 15:
Chapter 16:
Chapter 17:
Chapter 18:
Chapter 19:
Chapter 20:
Chapter 21: I hereby declare that I have read this project report and found

Chapter 22: this project report is sufficient in term of the scope and quality for the

award of

Chapter 23: Bachelor of [Computer Science (Software Development)] with Honours.


Chapter 24:
Chapter 25:
Chapter 26:
Chapter 27:
Chapter 28: SUPERVISOR : ______________________________________
Date : ________
Chapter 29: ([DR RAJA RINA])
Chapter 30:
iii

DEDICATION

[To my beloved parents Alsayed Baraka and Rima Miari]


iv

ACKNOWLEDGEMENTS

[I would like to thank En. Muhammad bin Ahmad for giving assistant to complete
this project successfully…...

I would also like to thank my beloved parents who have been giving me support and
motivation throughout my project…]
v

ABSTRACT

Bookshop Management System is a tool for the bookshops that are using old
traditional ways to purchase and keep records of the books that are still available or
sold. So, by using my project the whole process of purchasing, borrowing, and
saving records will be easier.
vi

ABSTRAK

Sistem Pengurusan Kedai Buku adalah alat untuk kedai buku yang menggunakan
cara tradisional lama untuk membeli dan menyimpan rekod buku yang masih ada
atau dijual. Oleh itu, dengan menggunakan projek saya keseluruhan proses
pembelian, peminjaman, dan simpanan rekod akan lebih mudah.
vii

TABLE OF CONTENTS

PAG
E

DECLARATION............................................................................................................II

DEDICATION..............................................................................................................III

ACKNOWLEDGEMENTS..........................................................................................IV

ABSTRACT....................................................................................................................V

ABSTRAK.....................................................................................................................VI

TABLE OF CONTENTS............................................................................................VII

LIST OF TABLES........................................................................................................IX

LIST OF FIGURES........................................................................................................X

LIST OF ABBREVIATIONS......................................................................................XI

LIST OF ATTACHMENTS.......................................................................................XII

CHAPTER 1: INTRODUCTION..................................................................................1

1.1 About Chapters and First Subtitle........................................................................1

1.1.1 Second Subtitles.....................................................................................2

1.1.1.1 Third Subtitles........................................................................................2

CHAPTER 2: LITERATURE REVIEW AND PROJECT METHODOLOGY.......3

2.1 About Figures.......................................................................................................3

CHAPTER 3: ANALYSIS..............................................................................................5

3.1 About Tables........................................................................................................5


viii

CHAPTER 4: DESIGN...................................................................................................7

4.1 About Table of Content........................................................................................7

CHAPTER 5: IMPLEMENTATION............................................................................9

5.1 About List of Tables.............................................................................................9

5.2 About List of Figures...........................................................................................9

5.3 About List of Figures...........................................................................................9

5.4 About List of Figures...........................................................................................9

5.5 About List of Figures.........................................................................................10

CHAPTER 6: TESTING..............................................................................................11

6.1 About References...............................................................................................11

CHAPTER 7: PROJECT CONCLUSION.................................................................12

7.1 Wrap-Up.............................................................................................................12

REFERENCES..............................................................................................................13
ix

LIST OF TABLES

PAG
E

Table 3.1: Table Example..........................................................................................5


x

LIST OF FIGURES

PAG
E

Figure 2.1: Caption Window.....................................................................................3


Figure 2.2: Caption Numbering Window................................................................4
Figure 2.3: Example Figure with citation from a book (Pike, 2008. Used with
permission)..................................................................................................................4
Figure 4.1: How to update Table of Contents in this template...............................7
Figure 4.2: Updating the whole list...........................................................................7
xi

LIST OF ABBREVIATIONS

FYP - Final Year Project


xii

LIST OF ATTACHMENTS

PAGE

Appendix A Sample of data 19


Appendix B Analysis of data collection 78
…….. …………
…….. …………
Chapter 1: INTRODUCTION

This project automates the traditional purchasing of books. Since in


traditional purchasing of books, it is difficult to keep record of available books for
sale and purchase with the customer, this project makes purchasing of books online
by reserving books for customer online which automatically keeps track of available
books for each book.

1.1 Problem statement(s)

o It’s difficult to access for this bookshop system.

o Wasting time how use the bookshop system.

o Some users are not comfortable with using the other systems

o It is not clear or not good for the background of the bookshop systems
or scatter

o Developing how to manage this bookshop for the first subtopic in


each chapter, student can use Heading 2 style for the title. Do not leave any empty
line before starting a new subtitle.

1.2 Objective

o in bookshop system most of the records are maintained on paper. It


becomes very inconvenient to modify the data manually
2

o In bookshop management system here is a possibility that same data


in different registers may have different values which means the entries of same data
don’t much. This inconsistent state doesn’t supply the concrete information related to
particular search record.

1.3 Scope

 Module to be developed

The project will focus primarily on the code of codeigniter php for admin
panel, html css for landing page and java to create the mobile app that will display
the menu of options.

 Target User

Bookshop owner, Book buyers will be benefitted from this application.

1.4 Project Significance

The Bookshop Management System is what you need to ensure easy reliable way to
manage your bookshop without stressing yourself.

1.5 Expected output

o Top Reading, Popular, New Arrival Books

o Search books and authors

o Author bio and its books

o Top Categories

o Books Collection by Categories

o List of authors

o List of Paid Books


3

o List of Free Books

o Continue Reading Books

o Book Detail & Related Books

o Awesome material Design

o Add Comments

o Sample Book for Read before Buy

o Buy Paid Book

o Paypal Payment Gateway integrated

o RazorPay Payment Gateway integrated

o UPI Payment integrated

o Support PDF / EPUB files

o PDF Horizontal view

o Free Book Direct Download

o User Purchased books Collection

o User Profile

o Add to Bookmark

o user login / registration

o Settings
4

o Enable push notification

o Share App

o Rate App

o Logout

o Share Books with others

o Download Books for offline

o Beautiful UI / UX

o Support user account

o Admob Banners and Interstitial Ads

o OneSignal Push Notification

o All Device Compatibility

o Latest UI With Material Design

o Easy to Reskin

o Easy to Customization

o Night Mode Support

o RTL Support

o Multilanguage Support

o Privacy policy page a


5

o About Us page

o Download books in private storage

Features Admin Panel:-

o Simple, Attractive & Statistical Dashboard

o Manage Books with Categories and Author

o Add/Update/Delete Categories

o Add/Update/Delete Authors

o Add/Update/Delete Books

o Manage App Setting from admin panel

o Admob on/off from backed

o Push Notification send from admin panel

o Push Notification key chage from backend

Requirements: -

o latest Android studio version & sdk

o OneSignal Account for push notification Account

o Google admob Account


6

1.6 Conclusion

Bookshop Management System will improve the management of book stores.


This system developed in order to overcome the problems faced using the manual
way.
CHAPTER 2: LITERATURE REVIEW AND PROJECT
METHODOLOGY

2.1 Introduction

The valuation of literature review must have analyzing, conclusion, collecting, and
searching from all the problems faced in the right literature. The methodology of the
project gives us the needed procedures and tools that is needed to finish up our
project. This part of the report will show us what is the used process needed to
complete the project for Bookshop Management System. The facts and findings are
resolved by knowing the goals, the current states, and the available resources.

2.2 Facts and Findings

The method that I have used to gathered information from people oh how the system
should work is interview. I have asked people who buys a lot of books and go the
library what are the difficulties that they face using a manual system, and how can
we improve that and make it easier and more convenience. So, after the interviews
has been do started thinking of what can I add to my system to make as user friendly
as possible. What was common about the things that people would change is how
purchasing a book manually takes a long process since they have to look around and
find the book, which in some cases would not be available, so they have just waisted
their time, and after that they have to wait in line to buy it. A lot of people these days
might feel uncomfortable with leaving the house and interact with people. So, my
system tries to solve most of these problems by having the ability to search and find
the wanted book with in seconds without any human interaction, and people can
8

actually request a book inside my system, which from my interviews I found that this
feature would be highly appreciated by customers.

2.2.1 Domain

So, Bookshop Management System is the ICT type of system. The technology in the
application is for providing a better management and record saving system, the goal
is to strip away from the ordinary ways used in the bookstores to manage their
systems manually.

2.2.2 Existing System

As we notice in our current time that every life trading aspect, has some sort of an
online field. So, there’s no wonder that a bookshop will also have an online field.
These are some management elements that I found online:
 Human actions and responses:
We all know that humans are most likely to make mistakes and not
doing the right thing sometimes. In each process whether it is Product
Management, Maintaining Customer Records, Payment Management,
Report Generation, user has to pay attention to a greater extent while
performing the tasks.

 New Products launched in the market:


Maintenance of Customers Payment Record

 Issue Orders for more Stock:


Maintenance of Suppliers and Staff Records and searching and answer
the query asked by other users.

 Convenience:
The system should and must result in a much better experience for the
customers when they use it by being easy to use, understand and
9

process. So, that they will see how much of an improvement it is to use
the system instead of the manual way.

2.2.3 Technique

A different approach could be done in two stages. In the first stage, data
envelopment analysis is utilized to evaluate the comparative efficiency
of bookshops. The second stage attempts to determine what drives
efficiency by using Tobit regression. The reason that I didn’t go with
this approach is that the one that I’m using is simpler.

2.3 Project Methodology

 Android Phone Application Platform

What’s important about using Android as a development environment are centered


around the Application Programming Interface (API) it provides. Android is an
application-neutral platform, which gives us the chance to build an application that
have access to the device hardware through series of APIs libraries. These are some
famous Android features:
 Free development, distribution and licensing
 Wi-Fi hardware access
 API libraries for implementing accelerometers, compass, camera, Bluetooth
and location-based services like GPS (Global Positioning System).
 Framework for localization

 Android Development Framework

Every Android application is written in the Java Programming language and run on a
different instance of a virtual machine called Dalvik Virtual Machine (DVM)
contrary to the Java Virtual Machine (JVM). The Android runtime is responsible for
the memory and process management, which kills the process when the need arises
to release memory to the Android runtime. The Android runtime and the Dalvik
10

Virtual Machine sit on a Linux Kernel that interacts with the low-level hardware. A
set of APIs is then necessary to expose the underlying hardware features and
services.

 Android Software Stack

Android applications run on top of a Linux Kernel and a collection of C/C++


libraries that provide applications with hardware functions of the device: hardware
drivers, memory management and power management. The Linux Kernel is also in
charge for process management, which starts a different process for every application
and multiple threads can execute the application in the same process.

 Android Phone Application Architecture

Android application architecture is created to promote reusability of components.


Components are the architectural cornerstones or building blocks of an Android
application securely managed by the Android runtime. Each of these components
establishes an entry point through which the Android runtime can enter into Android
applications since there is no other entry point like main () function as found in other
development platforms.

 Android Phone Application Development

Android application development practice is focused on optimum user experience.


The Android SDK (Software Development Kit) provides a set of tools and APIs
libraries to write robust and sophisticated mobile applications. The Android
application development steps revolve around four development phases:
1. The Development Environment Setup Phase:
In this stage the free-to-download Android SDK is downloaded, installed and set up
for development.
2. Project Setup and Development Phase: This stage is where the setup and the
actual development of Android Project are done.
11

3. Building, Debugging and Testing: During this stage the application can be built
into a debug gable Android package(s) that can be installed and run on an actual
Android device or the emulator.
4. Publishing: During this stage, the application is prepared for release by
configuring, building and testing it in the release mode. Thereafter, the application is
published, sold and distributed to users.

2.4 Project Requirements

2.4.1 Software Requirements

 Front End tool like Microsoft visual studio 2012:

Microsoft visual studio is designed for common language infrastructure


which consists of the executable code and runtime environment that
allows use of various high-level languages on different computer
platforms and architectures

 Sql server Management studio (20012 R2) Database:

Microsoft Structured Query Language (SQL) server is a relational


database management system (RDBMS) developed by Microsoft. This
product is built for the basic function of storing retrieving data as
required by other applications. It can be run either on the same
computer or on another across a network

2.4.2 Hardware Requirements

Core i3 / Core i5 better performance.

RAM 4GB maximum.

Minimum of 250 GB or 500 GB hard disk Space needed.


12

End User requirements.

2.4.3 Other Requirements

List of other requirements needed is shown below:

• Internet Access (at least 4Mbps).

• Access to IEEE Xplore Digital Library and Google Scholar website.Project


Schedule and Milestone

There are a specific schedules and milestones that we must follow for completing
PSM I and PSM II. The introduction, literature review and project methodology,
analysis and design are the main chapters during PSM I. The milestone for PSM I is
shown below. To assure that the requirements are is finished on the final date.

Week 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Task

Project Suggestion Form


submitted to the Project Approval
Supervisor
Project introduction, literature
review and project methodology
(Chapter 1 and Chapter 2)
- Collection information
- Conduct literature reviews
- Select project methodology
Analysis (Chapter 3)
- Collection information
- Conduct problem analysis
- Conduct requirement analysis
Preliminary design of the project
(Chapter 4)
- System architecture design
- User interface design
- Database design
PSM I final reporting
PSM I presentation
REPORT SUBMISSION
13

2.5 Conclusion

I’ve talked about the methodology and planning of the project in this chapter.
I will outline the problem analysis, enhancements/solutions, functional and non-
functional requirements in the following section.
CHAPTER 3: ANALYSIS

3.1 Introduction

What we are going to discuss int this chapter is the process of analyzing the
development of Bookshop Management System Before a system is developed, it is
very important to analyze the system to be confident that the new system can meet
the weaknesses of the contemporary system. The problems of the current system will
be briefly detailed. Analysis of requirements will cover the data requirement topic,
which is the data that should be the input and output of the system and the data that
should be kept internally by the system. We have three sub-requirements in other
requirements that are specifications for software, hardware requirements, and
network requirements.

3.2 Problem Analysis

Problem analysis is explaining studying the problem with the intention of


knowing how the problem evolves and changes. To understand the standards for my
system, an analysis study will be conducted to evaluate the information captured
from the present blueprint. The research of analysis includes the business process and
the assessment of problems.

It’s difficult to access for this bookshop system. Most manually handled systems are
always falling into mistakes

Wasting time how use the bookshop system. If we think about it of how much time
we can save instead of queuing up to pick a book
15

Some users are not comfortable with using the other systems. Since they might find
other systems hard to process or understand

It is not clear or not good for the background of the bookshop systems or scatter

Developing how to manage this bookshop

3.3 Requirement Analysis

In software engineering, application developers need have to really


understand the problems so that they can solve them. And that is why it’s necessary
for a developer to properly model the scenarios that can have an effect on the
solution to the problem by gathering related information. This is what is called
requirement analysis. The requirement analysis gives the developer the opportunity
to have a better understanding of the problem. For effective design and development
of this project, the following requirements must be met

3.3.1 Data Requirement

Input requirements are the requirements a user must fulfil before having the
ability to access and use the Bookshop system. A registered user can use the
application by entering the right sign-in information. After being authorized, the user
can browse through the collection of books.

Requirements id Requirements name Requirements description


We need an interface for
Requirement 1 User Register the user to show the
registration details

Attributes: User name,


Requirement 1.1 User Details Email, Phone number,
Password

Attributes: User name,


Requirement 1.2 Email, Password

Update
16

Request and interface for


Requirement 2 login and password
recovery
Login Attributes: Email

Output requirements makes sure that the application is able to call the PayPal
API server to complete the final process of the purchase.

3.3.1.1 Context Diagram

A system context diagram in engineering is a diagram that defines the


boundary between the system, or part of a system, and its environment, showing the
entities that interact with it. This diagram is a high-level view of a system.

3.3.2 Functional Requirement

This part shows and explain different requirements that are accomplished by
the Bookshop system. If we want to accomplish the wanted goal of this project, the
functional requirements must be met.

- A new user which is not registered in the system

- Registration form must be available


17

- Details must be correct

- Books must be available

- Book categories must be available

DFD Level 0: A level 0 data flow diagram (DFD), also known as a context diagram,
shows a data system as a whole and emphasizes the way it interacts with external
entities. This DFD level 0 example shows how such a system might function within a
typical retail business.

DFD Level 1: A level 1 data flow diagram (DFD) is more detailed than a level 0
DFD but not as detailed as a level 2 DFD. It breaks down the main processes into
subprocesses that can then be analyzed and improved on a more intimate level. You
can edit this DFD level 1 template with a free Lucidchart account.
18

3.3.3 Non-functional Requirement

Non-functional requirements are requirements that do not have an impact on the


proper running of the Bookshop system. But it is important to mention and consider
these requirements for the purpose of software quality and analysis.
- Size, scalability, numbers of users

- Performance factors and response times

- Usability factors

- Existing technical operating environment

- Training and installation consultancy needs

- Applicable technical standards


19

3.3.4 Other Requirement

Software requirement: The Bookshop project, much like other projects, needs well
defined specifications that must meet the software environments needed to achieve
the desired goal of the project.
Hardware requirement: In the process of building this application, some specific
hardware requirements and specifications are considered in order for the application
to be functional and result oriented. This application is built for Android-based
phones and tablets.

3.3.5 Conclusion

This part explains the process of the present system issue assessment, information
requirement, functional requirement, non-functional requirement, and other
specifications. Problem analysis is tested for the present system and there is a chance
to locate the request for a brand-new system to be built. The data requirement is to
locate the data needed in the database. A functional requirement marks the systems
benefits, how the data is stored, computed, transformed and transmitted. The non-
functional requirement gives us the idea of what can the new system do with the
tasks. The next chapter will cover more of the system design.
CHAPTER 4: DESIGN

4.1 Introduction

We are going to discuss the system development design. The system flow
overall will be described here. To design a system, we must collect all the
information we need from the analysis chapter. System architecture and levels of
design will be talked about in here. For user interface design, it will show the user's
system interface that has another level of connectivity to the system. So, to show the
process of the user’s activities like clicking on any part of the system navigation
design will be covering that. To make sure that all the information saved in the
database is real we have to have some kind of validation. For the data to be turned
into valuable information we need to check the output design.

4.2 High-level Design

This part which is called High-level Design will give as an idea of how things
work in the system. In this part we will focus on a high-level Bookshop Management
System and see some parts of the system structure and the interior of the system. The
architecture of the system helps with understanding a network or system's general
design and structure.

4.2.1 System Architecture

The system is a 3-tier mobile client server system. User will proceed with the
book searching and maybe buying through the application. The client-based online
21

bookstore system will search books from bookstore database and proceed with the
payment process. All the user’s profiles and purchase history will be saved in the
online-bookstore database.

4.2.2 User Interface Design

The user interface is the way that makes it easy for the user to interact with the
application. The interface will show the user the screen which from that screen they
can access the systems features, click on buttons, and see or store their information to
the database. A good user interface design is the design which is appealing, easy to
understand, and doesn’t cause confusion.

4.2.2.1 Navigation Design

This type of design explains and shows how to navigate through the entire
system. The way that the system navigate must be accurate so that after the user
interact with the system in some type of way, the user doesn’t get confused about
their next step into the system.
22

4.2.2.2 Input Design

This type of design is the type for the user interface input. You may ask what
types of inputs. These are some examples text, numbers, alphabet, symbol, etc. Some
entry is essential and validation is necessary to ensure that the information is stored
in the database.
23

Login interface Data dictionary


Input Field Type Data Type Validation
email Text field Varchar Required field
Password Text field Varchar Required field

Sign up interface Data dictionary


Input Field Data Validation
Type Type
Name Text field Varchar Required field
Email Email Varchar Required field
Contact number Number Numbe Required field
r
Password Text field Varchar Required field
24

Forgot Password Data dictionary


Input Field Type Data Validation
Type
Email Text field Varchar Required field

4.2.2.3 Output Design

These are some of the outputs that will be seen by the users
25

4.2.3 Database Design

4.2.3.1 Conceptual and logical Database Design

In this stage the conceptual design uses data styling or modeling to build
some kind of an abstract design that gives us an illusion about the real-world object.
Usually this kind of model should have or include a very easy explanation of the
system and its functional areas.

 ERD
26

 Business Rules

 Each user makes one or many book purchases

 Each book purchase is made by a user

 Admin handles one or many categories

 Each category is handled by admin

 Many products belong to only one category

 Category can have zero or many products


 Data Dictionary and normalization

A logical database design helps us to analyze the structure of an information


system, independent of any specific physical database implementation. Entity
Relationship model & Diagram An entity- relationship diagram (ERD) is a graphical
representation of an information system that shows the relationship between people,
objects, places, concepts or events within that system. The ER model is expressed in
term of entities in the organization environment, the entities and their relationship.
27

Name Data Type Length Constraint NULL


PK/FK
Admin-id Int 11 Pk NO
username Varchar 100 YES
password Varchar 255 YES
email Varchar 200 YES
image Varchar 255 YES

Name Data Type Length Constraint NULL


PK/FK
contact_id Int 11 Pk NO
Contact_title Varchar 255 YES
Contact_email Varchar 255 YES
Contact_msg Varchar 300 YES

Name Data Type Length Constraint NULL


PK/FK
raiting_id Int 11 Pk NO
Book_id int 11 Fk YES
User_id int 11 Fk YES
ip Varchar 40 YES
rate int 11 YES
Dt_rate timestamp 3 YES

Name Data Type Length Constraint NULL


PK/FK
cid Int 11 Pk NO
Category_name Varchar 255 YES
Category_image Varchar 255 YES
status int 11 YES

Name Data Type Length Constraint NULL


PK/FK
Sub_category_id Int 11 Pk NO
cid inr 11 Fk YES
Sub_category_nam Varchar 255 YES
e
Sub_category_ima Varchar 255 YES
ge
status int 11 YES

Name Data Type Length Constraint NULL


28

PK/FK
book_id Int 11 Pk NO
cid int 11 Fk YES
Sub_category_id int 11 Fk YES
featured int 1 YES
Book_title Varchar 255 YES
Book_price int 11 YES
book_description  int 130 YES
book_cover_img  Varchar 255 YES
book_file_type  Varchar 255 YES
book_file_url  Varchar 255 YES
total_rate  int 11 YES
rate_avg  Varchar 255 YES
book_views  int 11 YES
status  int 1 YES

Name Data Type Length Constraint NULL


PK/FK
comment_id Int 11 Pk NO
book_id  int 11 Fk YES
user_name  Varchar 255 YES
comment_text  int 300 YES
dt_rate  Timestamp YES

Name Data Type Length Constraint NULL


PK/FK
user_id Int 11 Pk NO
Name Varchar 255 YES
email Varchar 255 YES
password Varchar 255 YES
phone Varchar 255 YES
total_hints  Varchar 25 YES
status Varchar 255 YES

Name Data Type Length Constraint NULL


PK/FK
settings_id Int 11 Pk NO
App-name Varchar 255 YES
app_logo  Varchar 255 YES
app_email  Varchar 255 YES
app_version  Varchar 255 YES
app_contact  Varchar 255 YES
app_website  Varchar 255 YES
app_description  Varchar 300 YES
api_all_order_by  Varchar 255 YES
api_latest_limit  int 11 YES
29

api_cat_order_by  Varchar 255 YES


api_cat_post_order Varchar 255 YES
_by 
api_sub_category_ Varchar 255 YES
order_by 
api_sub_category_ Varchar 255 YES
post_order_by 
app_publisher_id  Varchar 255 YES
app_ads_txt_id  Varchar 255 YES
app_interstital_ad  Varchar 255 YES
app_interstital_ad_i Varchar 255 YES

app_interstital_ad_ Varchar 255 YES
click 
app_banner_ad  Varchar 255 YES
app_banner_ad_id  Varchar 255 YES
app_add_video_id  Varchar 255 YES
onesignal_app_id  Varchar 255 YES
onesignal_rest_key  Varchar 255 YES

4.3 Detailed Design

The detailed design follows a process that requires conceptual design,


implementation of the design and details of the design, and in the professional
execution, will eventually be accurately designed solutions.
30

4.3.1 Software Design


31

4.3.2 Physical Database Design

What’s going to happen is this stage is that the logical design of the database
will change to the goal DBMS software file in this design. To create a database and a
database objects, Data Definition Language is the key.

 DDL

This language is known for building and controlling objects from


databases all together. These objects from the database include system,
tables, opinions, sequences, and indexes. Database administrators use
this DDL when it’s time to setup or remove parts of objects from
databases. DDL statement is created and compiled. DDL is also
recognized for identifying data structures as a computer language.

4.4 Conclusion

So, to conclude the Bookshop management system design chapter, the designs and
structures have been explained briefly. This chapter showed us some of the system’s
interfaces for users and admin. It mentions the design of navigation, input design,
output design and other output from this stage can be used as an appropriate
reference for the system execution stage. Since we are done with the designs we are
going to talk next about implementation.
CHAPTER 5: IMPLEMENTATION

5.1 Introduction

When we say we want to implement our project it’s like saying we want to
see how it’s going to be like if our system was used in a day to day activities. The
execution stage is developed by the design phase diagram specification. In this phase
we will be dividing the excitation into four main parts which are software
development environment setup, database implementation, software configuration,
and implementation status. What we are trying to achieve in this phase is to deploy
and enable operations of the new information system in the production environment.
The coding should be done during this phase, and detection of errors in the software.
The testing process starts with a test plan that recognizes test-related activities, such
as test case generation, testing criteria, and resource allocation for testing. The code
is tested and mapped against the design document created in the design phase. The
output of this phase is a test report containing errors that occurred while testing the
application

5.2 Software Development Environment setup

Book Management System is using Windows 10 to build up a software development


environment, and MySQL is used for the system as a Database Management System
(DBMS), and android studio to build up the application. This system was also
associated with the single PC and used a client-server network due to the
development of this system using a web-based system. The system has two levels of
user-system interaction, user interface as level one, and coverage of system-database
communication as the second level.
33

Book Management System software development environment setup uses three-


tiered architecture consisting of client tier, middle tier, and database tier. The client
must use a web browser to get to the system for the client tier. After that, the
middle tier of the application server allows the client to retrieve or manipulate the
data with the database server. All levels should work better together to ensure that
the system can run smoothly.

5.3 Software Configuration Management

5.3.1 Configuration environment setup

 Server Configuration:

For server configuration, the internet is used to connect the web site to
the database thoroughly. And I have used ngrok to open up the
application.

 Database Configuration:

Firebase is used for database configuration and MySQL is used for the
database.

5.3.2 Version Control Procedure

Folder Name Data modify Version


Backup-FYP-V1 22 / 3 / 2020 1
Backup-FYP-V2 27 / 4 / 2020 2
Backup-FYP-V3 06 / 6 / 2020 3
34

Backup-FYP-V4 23 / 7 / 2020 4
Backup-FYP-V5 09/ 8 / 2020 5

5.4 Implementation Status

 Table Admin
CREATE TABLE `admin` (
`id` int(11) NOT NULL,
`username` varchar(50) NOT NULL,
`password` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

 Table User
CREATE TABLE `blood_donor` (
`User_ID` int(11) NOT NULL,
`email` varchar(100) NOT NULL,
`password` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

 Table request_book
CREATE TABLE `request_book` (
`ID` int(11) NOT NULL,
`NAME` varchar(150) NOT NULL,
`User_ID` int(11) NOT NULL,
`email` varchar(100) NOT NULL,
`password` varchar(100) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=latin1;

5.5 Conclusion

Looking back at the chapters, all the actualized stages are essential. This part
explains the system execution and includes setup of the software development
setting, implementation of databases, and management of configuration software. For
example, there is no real way to miss or repeat one of those steps in the software
development setup that included the procedure for making a database connection.
The database will be unsuccessfully linked if at least one stage is forgotten about.
35

This will cause problems to stack up. Some more, the database will not continue to
run properly. Chapter 6 will cover the system testing stages.
CHAPTER 6: TESTING

6.1 About References

One of the purposes of this phase is to determine whether the automated


system/application software developed or acquired. Another important purpose is to
run the program and executed with the intention to find any errors the system might
has. The system will go through a number of tests to make sure that it is the expected
system that we wanted. Testing actually has been done through out the making of the
project by using various types of inputs. The importance of the testing phase is to
make sure that through out the process of building the project the system doesn’t
have any little errors that could affect the making of the project in the long run.

6.2 Test Plan

The goal of the test plan is to have an idea of how it supposed to be structured
and defined. It’s separated into three main factors. Firstly, who will be involved in
the test, secondly, what environment should be set up to accomplish the test and
lastly check the time frame for the test to be executed.

6.2.1 Test Organization

Test organization is a set of people who are responsible for the testing
process. Those people have some knowledge, backgrounds, features, and experience
in IT to be able to produce ideas that will be helpful and useful information for the
results of system testing. This useful information includes system power, weakness,
restriction, and access for the system the customer. System Developer and the
customer will test the system.
37

6.2.2 Test Environment

6.2.2.1 Location/environment of testing

The importance of this stage is to make sure that the system runs properly.
Environment specification Description
Operating system Windows 10
Processor core i7
(RAM) 10.00 GB
Database MySQL

6.2.2.2 System hardware

This system development involves system hardware.

1. Hard disk, RAM, processor, monitor,


System Hardware and keyboard personal computer
installed on it.
2. Toshiba Satellite C850-B907

6.2.2.3 Preparations and training prior to testing

The preparations and training prior to testing describe all content or


application in the Book Management system. The following displays all the
associated implementation in this system:

1- Login as an admin from the website

2-Register / login as User from the App

3- Update profile

6.2.3 Test Schedule


38

Module Activity Duration


System login Test unit integration, 5/10 days
testing and user acceptance
Online Ordering Test unit integration, 3/10 days
testing and user acceptance
Add, update, delete Test unit integration, 2/5 days
testing and user acceptance
Order Confirmation Test unit integration, 5/15 days
testing and user acceptance

6.3 Test Strategy

The strategy that I have decided to go with is the bottom up strategy. In


bottom up testing, each module at lower levels is tested with higher modules until all
modules are tested. The primary purpose of this integration testing is, each
subsystem is to test the interfaces among various modules making up the subsystem.
This integration testing uses test drivers to drive and pass appropriate data to the
lower level modules. The advantage of using bottom up strategy is that no stubs are
required, and that several disjoint subsystems can be tested simultaneously.

Black-box testing White-box testing


Testing the system based on its behavior Testing the application by using internal
structure of the coding of application
Also known as “Behavioral Testing” Also known as “Structural Testing” or
“Glass Box Testing”
Testers involve in this type of testing Developer and testers will involve in this
type of testing

6.3.1 Classes of Test

I. Output Correctness Test: This test is done by going through the


specification in question. Making the sequence of cases match the
sequence of statements in the unit specification under test is often
practical.

II. Security Test: The system's quality, reliability, and safety are tightly
aligned. System safety issues are becoming even more serious with
the fast growth and strength of security. The aim of security testing is
39

to identify any faults that may lead to security breaches and to identify
any system vulnerability threats.

III. Stress Test: is a type of Software Testing that verifies the stability &
reliability of the system. This test mainly measures the system on its
robustness and error handling capabilities under extremely heavy load
conditions.

6.4 Test Design

6.4.1 Test Description

 Login Module:

Test case ID Description Expected output Result


Test_ ospes1 Invalid Ok
Invalid Email Email
Message will be
displayed
Test_ ospes2 Email blank/ ‘‘please fill out this Ok
Password blank filed’’ Message will be
displayed
Test_ ospes3 Valid User ID and User can login Ok
Password successfully

 Change Password Module:

Test case ID Description Expected output Result


Test_ ospes4 password does not ‘Password and Ok
match with the new Confirm Password
password Field do not
match !!’ message
will be displayed
Test_ ospes5 All fields are blank ‘please fill out this Ok
filed’ message
will be displayed
Test_ ospes6 New valid password ‘Password Changed Ok
40

Successfully !!’
message will be
displayed

 Add Category:

Test case ID Description Expected output Result


Test_ ospes9 ‘‘please fill out this Ok
All fields are blank
fields’’ Message will
be displayed
Test_ ospes10 New Category added Product Inserted Ok
Successfully !!

 Delete Category:

Test case ID Description Expected output Result


Test_ ospes11 Not select any Does not display any Ok
product data
Test_ ospes12 Select product Product deleted Ok

6.4.2 Test Data

 Test Data for Login:

Column name TD_ OSPES01 TD_ OSPES02 TD_ OSPES03


TEST Case ID Test_ ospes1 Test_ ospes2 Test_ ospes3
Email Zain15fifa@gmail.com zain@gmail.com
Password 763112 12345
Result Test Date Login failed. Login failed. login
User ID and successfully.
Password are
required to
access
the system.

 Test Data for Changing the Password:


41

Column name TD_ OSPES04 TD_ OSPES05 TD_ OSPES06


TEST Case ID Test_ ospes4 Test_ ospes5 Test_ ospes6
Email mosas@gmail.com mosas@gmail.com
Current 12345 12345
Password
New Password 15643 15643
Confirm 7878 15643
Password
Result Test Date Password and Confirm Login failed. Password
Password Field do not Changed
match !! Successfully!

 Test Date for adding category:

Column name TD_ OSPES07 TD_ OSPES08


Test Case ID Test_ ospes9 Test_ ospes10
New Category Politics related books
Result Test Data A value is required Category Inserted
Successfully !!

6.5 Test Results and Analysis

The test findings and evaluation of the online Book Management


System are the inputs for testing the system and the anticipated
outputs from these inputs if the system works well. The success and
failure of using the real information for testing can be an appropriate
variable in measuring the system whether the system can function
well or needs to be fixed for subsequent testing until the user satisfies
with the system.

 Test Results and Analysis for Login:

Test Case ID Test Data ID Description Ok failed


Test_ ospes1 TD_ ospes1 Wrong username and 
password
Test_ ospes2 TD_ ospes2 Username and 
password field blank
Test_ ospes3 TD_ ospes3 Valid username and 
password
42

 Test Results and Analysis for changing the password:

Test Case ID Test Data ID Description Ok failed


Test_ ospes4 TD_ ospes4 Password does not 
match
Test_ ospes5 TD_ ospes5 Password field blank 
Test_ ospes6 TD_ ospes6 Valid new password 

 Test Results and Analysis for adding a new category:

Test Case ID Test Data ID Description Ok failed


Test_ ospes9 TD_ ospes9 All fields are blank 
Test_ ospes10 TD_ ospes10 Valid input at the field 

6.6 Conclusion

In this chapter we have addressed how this project is going to be executed in the
testing stage. The purpose of doing the testing in this stage is to avoid or find out any
errors or mistakes. All test result and description were identified and documented
throughout the development of this project as proof of the correctness. This stage
will ensure that we will have a quality project. User acceptance test, however, also
ensures that the system is created in accordance with user needs. The conclusion of
this project will be clarified in Chapter 7.
CHAPTER 7: PROJECT CONCLUSION

7.1 Observation on Weaknesses and Strengths

Online Book Management System is made to be easy to process and it is developed


to store the database using PHP and MySQL. It is a mobile application system that
includes characteristics of order process control and management. This system's
weakness and strength have been identified from system observation. By using the
computerized system, the administrator can handle system information. It is simple
to handle, access and manipulate the information stored in the database. Customer
can also order, search for the required book. The administrator can also check, and
respond to customer orders and update the book information. This system lacks
security in terms of password format. This system enables the user to set their
password in their own format without requesting them to make their password
characteristic mix of numbers and alphabet. Also, the system lacks of Special Offers
such as promoting special offers like order discounts, coupon codes, free shipping
and gift cards and wish list which is to allow customers to save items. The result of
having these kinds of features will lead your customers to higher satisfaction.

7.2 Propositions for Improvement

The system performance needs to be enhanced. Firstly, the performance of the


database that affects the performance of the system has to be reliable and quick and
the redundant data must be normalized as much as possible. The system is currently a
mobile application, so the system's security should always be at the elevated stage.
The system's password must be set in a particular and complicated format.
44

7.3 Project Contribution

The system developed will contribute for the book shops as its reference for
improving this project. This system enables customers to place online orders within
or without working hours from anywhere and at any time. This system also enables
administrators to update book data.

7.4 Conclusion

In conclusion, this system is made to fulfill the goals, scope and still has to be
enhanced to accomplish the tasks. Extra time and effort are needed to make the Book
Management System a real system that can be used by all user levels and properly
fulfill the goal. Book Management System will be improved and enhanced by time to
meet the business requirements needs and pursue technology advancement.

You might also like