web-based library system - 鐘聲慈善社胡陳金枝中學 · d5 page 4 book. the library post...

40
D5 P.1 Web-based Library System

Upload: others

Post on 16-Sep-2019

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.1

Web-based Library System

Page 2: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 2

Table of Contents Chapter 1 Objective and Analysis ..........................................................................3

1.1 Background...................................................................................3 1.2 User Requirements.....................................................................................5 1.3 Benefits of the project ................................................................................5 1.4 Analysis......................................................................................................7 1.5 Feasibility...................................................................................................9

Chapter 2 Design and Implementation ................................................................... 11 2.1 Design ...................................................................................................... 11

2.1.1 Functional Specifications............................................................. 11 2.1.2 Hardware and Software Requirements ........................................17 2.1.3 Database Design...........................................................................18 2.1.5 Database Schema .........................................................................25 2.1.6 Network Diagram.........................................................................26

2.2 Implementation ........................................................................................27 Chapter 3 Testing and Evaluation...........................................................................32

3.1 Why testing is so important?....................................................................32 3.2 Testing Plan..............................................................................................32 2.2 3.2 Evaluation ..........................................................................................36

Chapter 4 Conclusion and Discussion ....................................................................38 Chapter 5 References..............................................................................................40

Page 3: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 3

Chapter 1 Objective and Analysis

1.1 Background

Our school has maintained a good reading atmosphere. Most students are eager

to learn by reading different types of books. However, the technology used in our

school library system is insufficient to meet the great demand for borrowing books of

our schoolmates. It may reduce their interest in reading because of the complicated

process of borrowing and returning.

Due to the lack of a flawless library management system, several problems arose.

Inconvenient to access information of library materials during

holidays

When students are staying in summer vacation, they don’t need to come back to

school and they can’t get the information of books in the school library unless they go

to school. It is inconvenient to students therefore further lower their interests in

borrowing books from the library.

Also, students may be required to do research for their holiday assignments and

projects. It is also another inconvenience for them to search suitable materials if the

library is opened for some days only during holidays.

Inconsistence of data

Also, the format of the transaction may be inconsistent as different librarians use

their own way to make records. It may lead to inconsistence of data. To illustrate it

with an example, some information may be recorded by librarian A but not recorded

by librarian B.

Lack of opinion exchange platform

Sometimes, students and teachers have no ideas to decide which book is suitable

for them. It is difficult to know the feelings of the previous readers as they don’t know

who had borrowed the books. On the other hand, the library doesn’t have any good

platform for students to share their reading experiences and books reviews. The

opinion users expressed can be a good reference for other user to borrow a suitable

Page 4: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 4

book. The library post the book reviews from students on the board irregularly.

Hand written transaction and long waiting time

The existing library system is relying on manpower to serve the students and to

record the daily transaction of books and serve the students. The librarians make use

of stationary and paper to record all transactions of books. Students who need to

borrow queue up in front of the counter, waiting for librarians to drop down the

transaction records in the log book. Students therefore need to wait for a long time to

borrow books.

When students return books, the librarians need to search the transaction records

page by page. It is a waste of time, inefficient and ineffective since students need to

wait so long to borrow and return books.

The inefficiency is due to the existing complicated process of transaction of

books. If the hand-writing transaction records were lost, the whole library system

would be in a mess since there are no backup of records.

Heavy burdens of librarians

Every transaction record has been recorded by librarians using paper and

stationary. It puts librarians under pressure as they have to be responsible for the

accuracy of transaction data. To avoid making serious errors, librarians should

concentrate in every moment to drop down the transaction record in a clear way. It

makes them stressful. Other than recording transaction, they also need to check books

and tidy up the bookshelves. They are bearing a huge burden.

Therefore, there is an urgent need for the use of Information Technology in our

library. Due to the inconvenience made by the old library system, it should be

replaced by a more effective system. In order to release the burden of our library

teacher, Mr. Pau, I am invited to conduct a feasibility study on the design of a

Web-based Library System for our school. To develop the new system, a numbers of

decisions have to be decided.

Page 5: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.5

1.2 User Requirements

Students For the students, they do need to bring their User ID Card to the library counter

when they borrow books. Transaction can be recorded by scanning the barcode on the

books. Then, the transaction records will be automatically sent to the database.

Students can check the records in the web-based library system.

Also, restrictions should be placed on the number of books that a student can

actually borrow. For senior form students, they can only borrow 1 books at most. For

junior form students, they can borrow 2 books in maximum since they need more

references than senior students to help them with learning.

Teachers For the teachers, they also need to bring an Identification Card when they borrow

books and have a limit (3 books at most) on the number of books they can borrow

which is more than students.

Librarians For the librarians, they need to know deeply how to use the web-based system so

that the transaction process could be rapidly done. In addition, they should have some

basic computer maintenance techniques in order to avoid the delay in helping users to

borrow books. They also need to familiarize themselves with its regulations. The

reason for inviting so many students to be our librarians is to operate our web-based

library system. Therefore, a 3-day training about the use of the system will be

provided by the library teacher for librarians to familiar with their jobs before they

serve our users. It will surely improve the effeciency of our librarian.

1.3 Benefits of the project

Information can be accessed at anytime and anywhere

Server-side programming is adopted in the website, web-based library allows

user to get information from the database in the web. That’s mean students can get

Page 6: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 6

information about books, such as the availability of the books, easily through the

Internet instead of directly going to the library.

Also, the web-based library system allows students to search for books in

different categories. Since the information about all books can be accessed at anytime

and anywhere by using a Web-based system. It can save time for students to search

books by referring to the books id. It facilitate schools to establish quality and

effective library catalog as a tool for accessing school learning and teaching resources,

as well as for students to master basic searching and information skills. It enables

students to be more flexible of their use of time as they don’t need to come to school

library to get information about books.

Reduced errors on transaction recording

The transaction record can be recorded in an electronic form instead of using

paper. The web-based library system support schools to implement library automation,

especially on conversion of data to electronic format. It can probably reduce the major

errors made by librarians.

Encourage sharing of book reviews and ideas exchange

A forum would be included in the web-based library system for students to share

their opinions and feelings. It encourages the opinion exchange among students.

To let students have more ideas to choose suitable, the web-based system would

set up a ranking system. Students who finished reading some books can give ranking

to those books. The ranking can be good references for other students to borrow the

books or not. In addition, it collaborates in the sharing of cataloging efforts

among teacher-librarians.

Speed up the transaction time and reduce librarians’ burden To make use of the barcode reader and computer, librarians are not required to

make hand written transaction record anymore. They can be more prompt to cater for

user’s need in a quicker manner.

Also, computerization of data reduces the stress of librarians as they don’t need

to be afraid of making wrong record.

Page 7: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.7

1.4 Analysis

Since there are so many inconvenience bought by the old library system, it

should be replaced as soon as possible. There are some ways to solve the above

problems. We should finally make an appropriate decision to deal with the problems

arisen from the old library system.

Invite more student helpers

First, we can invite more student helpers to be school librarians. The workload

can be shared among librarians. The efficiency will be sharply improved. Some

students may be afraid of shouldering heavy burdens if they become a librarian. To

attract more students to get in the Librarian Team, 2 merit points will be given to all

librarians and recorded on their school report card at the end of the school year. The

reward is used to give encouragement to students to try to be a member of Librarian

Team.

However, even the reward is so valuable; students are still not willing to take up

the responsibilities of the library. Even the promotion of recruitment of librarians has

held for three times, the enrollment of librarians is not come off. So, there are not

enough librarians to serve our students. Also, there is no guarantee on human errors in

processing the transaction records. Although student helpers can help solve the

problem of long waiting time for borrowing books, the database of library cannot be

accessed by students when they are not in school. During the summer vacation,

students still need to go to school library to get the information about books.

Therefore, inviting more student helpers is not a good approach to solve all the

problems mentioned before.

Designated period of borrowing for different users

Second, different form of students is allowed to borrow and return books in the

specific period of time; it helps regulate the flow of borrowers. But it may reduce the

interest on reading of our students as the book borrowing time has been fixed, they

can’t be so flexible to borrow books. Third, using computer to store the transaction

records but the system is not web-based. Although computerization of the whole

library system can reduce time of recording transaction record using man power. To

Page 8: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 8

avoid using too much manpower and hand-written transaction records. However, it

doesn’t allow students to get information from the web.

Computerization

Computerization is another approach to solve these problems. Computerization is

a way to equip with electronic computers so as to facilitate or automate procedures.

Transaction of books can be done more quickly once the technique is used. Saved

time can be reallocated to answering user’s queries, administrative duties and

activities for students to better administer the library. Also, librarians can avoid

repetition and misspellings in making transaction records on papers. Instead of writing

the records on the papers, frequently used format of transaction records can be stored

in the database. By adopting computerization, there would be consistencies in the

format of transaction records but they can still be modified when a bug is figured out.

Also, it is easier to maintain the confidentiality of the transaction record and

information of users by using a protective password to provide protection of access to

file on the hard disk. Ultimately, it can result in increased quality of care for the

students we serve. Although the computerization of library system can help solve the

problems of “Heavy burden of librarians”, “hand written transaction and long waiting

time” and “Inconsistence of data”, the problems of “In convenient to access

information of library materials during holidays” and “Lack of opinion exchange

platform” cannot be alleviated by computerization.

Web-based computerization

Another method which can solve all problems mentioned before is web-based

library system. The attached function on computerization is the Internet access. To

adopt web-based library system, server-side programming has been used to allow the

database and the web to update at the same time. Students can get information about

books in the web at anytime and anywhere. This can settle the problem of

“Inconvenient to access information of library materials during holidays”. Apart from

this, a sharing forum can also be set up for users to post their book reviews through

the Internet. It encourages users to share their views through a new platform.

Final decision

Finally, a web-based library system has been chosen to be the best method in

Page 9: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 9

solving all problems that old library system is facing with. It can allow faster process

of borrowing books as no more hand writing records needed to be made. It reduces

the burdens of librarians. Also, students can search books no matter where they are. In

addition, a platform is designed for students to exchange ideas and make a ranking on

books.

As the approach has already been chosen, it is also important to analyze whether

the approach is feasible to implement. An in-depth analysis will be done in the

following section.

1.5 Feasibility Computerization is a solution and it can help maintain the transaction data.

Computerization can only solve the problems of too much reliance on manpower,

transaction record in disorder and decentralization of transaction records. However,

other big problems such as inconvenient to get information from library and a lack of

platform to share book review cannot be solved. That’s the reason for choosing

web-based computerization instead of computerization.

Although web-based computerization is the most suitable approach for our old

school library system, we have to consider whether school has sufficient resources to

support the establishment of web-based system.

Web-based library system actually is an extension of the computerized system

which makes it possible to access the data on the Internet. Our school has established

a faultless Internet network using a router. Broadband access is already provided in

our school and 1 Gbps download speed is reached in our Internet network.

Our school has sufficient resources to make the web-based library system

possible. School has devoted an amount of fund for the library to establish the

web-based library system.

Also, some materials such as barcode reader and the ISBN on the books are also

ready. It is easier to complete our project. In addition, a well-equipped IT team is

ready for the establishment for the library system. They have knowledge in dealing

Page 10: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 10

with the problems the project might have. What we need is a server, and our school

has prepared a special funding to purchase a suitable server for the library system.

It is not complicated for users to use the web-based library system at home. To

get the information about books in the school library or the transaction record, users

need not to come to school to get it. Instead, they can get all information they need

through the Internet using a web browser and Internet access.

Page 11: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 11

Chapter 2 Design and Implementation

2.1 Design 2.1.1 Functional Specifications The web-based library system helps to deal with daily book transaction. The

system will store the information such as books being borrowed, books being reserved,

books left, and user’s information. It can raise the librarians’ productivity because we

can simply find all the useful information in the web-based library system and hence

save time. Apart from time saving, the online library system allows user to access

through the internet. They can take advantage of the function in the web-based library

system to facilitate their reading and save time in book searching i.e. keyword search.

Also, they can do some transaction at anytime and anywhere, such as reservation and

renewal. Other than easy access to book’s information in the library, there are other

functions which boost reading atmosphere in our school such as recommendation

board, TOP 10 popular book records. All function designed in the library system will

be explained below.

User ID Card A purely plastic card with unique member id printed would be made which will be

expired after the each school year. The members’ information is all saved in our database

system for keeping the data more confidentially. The personal data would be maintained

for concerned teachers to view, add, update and delete. When users want to borrow books,

they must bring along with their user ID card. As it is necessary to use barcode to read the

user ID card before completion of transaction, they have to bring it if they want to

borrow.

User ID card

ABC Secondary School Library

User id:S01 Name:Lee Tai Man Class:1A (1)

This card is the property of ABC Secondary School and is not transferable. If found, please return to General Office of ABC Secondary School

Figure1.1 Design of user ID card (front) Figure1.2 Design of user ID card (back)

Page 12: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 12

Ranking To maintain better understandings of books for students, the web-based library

system enables students to post their book review and rank the book. This can help

other students know more about different books when they cannot decide which book

should be chosen. Each piece of book review would also be given a unique book

review number. Also, students can rank books to express the level of

recommendations from 1 to 10. 1 mark means the least preferable while 10 marks

means the most preferable. They can get a basic understanding of the books according

to the scores given by other users. The book which gets the highest mark must be

most preferable for other users.

Borrowing Record Users who want to borrow a book from the library choose a suitable book and

take the chosen book to the borrow corner. Whenever they borrow books, the library

system will deduct one quota from which is stored in the user record. A borrowing

record will be created which store the acc_id, user_id, date of borrowing and returning

of each transaction for reference. For this function, librarians should probably need a

barcode reader to read the barcode of each book and the information of the ID card.

In User table, there is field, quota. As the borrowing quota for students from

different form are different, the quota shows their maximum quota for borrowing. It is

a fixed record which would only change once a year. The field, remaining_quota

shows the remaining quota for each user.

When the transaction record is made, some alternations can be seen in three

tables, User, Book and Borrowing_record. User’s remaining quota will be deducted

by its number of transaction record. The status of book record will be changed from

“Y” to “N”. A borrowing record will be inserted into the borrowing_record table.

Page 13: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 13

The borrowing record contains all details of books transaction including date of

borrowing and returning. When user borrows book from the library, a borrow receipt

will be given to user. The receipt is used to remind user to return books on time.

Each book can be borrowed for 1 week during each transaction. Also, users can

choose to renew the books they borrowed. Users can renew the books by using the

web-based library system online or bring the books to the library counter to renew it.

It will defer the due to date of returning by 1 week later.

No matter when users finish reading the books or not, they have to return the

books on or before the due date. If users are late for returning books, there would be a

fine ($1 per day) to warn them. It encourages users to return books to the library on

User User_id Name Remaining_quota Quota S01 Lee Tai Man 1 1

Borrowing_record Record_id User_id Acc_id Date_of_borrowing Date_of_returning 2 S0001 B00018 09/02/2008 09/09/09

User User_id Name Remaining_quota Quota S01 Lee Tai Man 0 1

Book Acc_id Title Status B00018 Chance of a lifetime N

Book Acc_id Title Status B00018 Chance of a lifetime Y

Borrow Receipt Title:XXXXXXXX User_id:XXX Date_of_borrowing: MM/DD/YYYY Date_of_returning: MM/DD/YYYY PLEASE RETURN THE LIBRARY MATERIAL ON TIME. THANK YOU.

Page 14: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 14

time.

When users return books, they should take it to the counter. For returning book,

web-based system is not useful for returning. Librarian will again use the barcode

reader to read the barcode on the books. When the barcode on books has been scanned,

the library system will add 1 to the remaining quota stored in the user table. It shows

the remaining borrowing quota of that user. The status of book will also be updated

from “N” to “Y”. It means other users can borrow that book from the library.

Reservation Reservation is a function that allows users to reserve a book which is not

available at that time. After reservation, the user who makes it can be first one to get

the book when it is available for borrowing.

There would be different approaches in different situation. As each book can be

borrowed for 1 week, the reservation period would be longer than the borrowing

period. It can ensure users who made reservation can get their book during the

reservation period. Therefore, the reservation period will be set as 2 week.

First, users may want to make reservation on books which are available in the

library. For this case, they can directly borrow the book instead of making reservation.

Second, users may want to make reservation on books which are borrowed by

other users. In this case, they have to make a reservation in order to get the books in a

later period. They get 2 week reservation period, staring from the day they make the

reservation order. If the books are returned on time or before the due date, users who

make that reservation should go to the library counter to borrow that book. However,

if the books are returned after the due date, there will be 1 week extension of

User User_id Name Remaining_quota Quota S01 Lee Tai Man 0 1

User User_id Name Remaining_quota Quota S01 Lee Tai Man 1 1

Book Acc_id Title Status B00018 Chance of a lifetime Y

Book Acc_id Title Status B00018 Chance of a lifetime N

Page 15: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 15

reservation period. The maximum period of reservation would be 3 week. If users

can’t get the books before or on the last day of reservation, the reservation record will

be cancelled. Users can make the reservation again if they still want to get the books.

To provide welfares to students and teachers, reservation costs them zero prices.

When the reserved material is ready for the users to borrow, an email reminder

will be sent to users’ email address.

Renewal Users sometimes can not complete reading before the due date. They can renew

the material to avoid paying fines. When a renewal is made, the due date will defer to

1 week later. User can have more time to finish reading the book.

To renew the book, there are two approaches provided for users.

First, they can renew the book in the library counter. Librarians use a barcode

reader to read the barcode of each book and the information of the ID card to

complete the renewal. A renewal receipt will be given to users so as to remind them to

return books on time.

Apart from renewing books in the library counter, users can also renew the

material using web-based library system. A reminder email would also be sent to

users’ email to remind them to return books on time.

Log in Users who want to access the information of library have to login. The login

system is used for the library to identify the users. As information of library can only

be accessed by the users of our school. Before they access the information of library,

they have to input the password as an identification process. Each user gets his/her

password.

To protect the privacy of the users, a Secure Sockets Layer (SSL) is adopted. SSL is

a commonly-used protocol for managing the security of a message transmission on

Renewal Receipt Title:XXXXXXXX Uder_id:XXX Date_of_renewal:MM/DD/YYYY Date_of_returning:MM/DD/YYYY No_of_renwal:1 time PLEASE RETURN THE LIBRARY MATERIAL ON TIME. THANK YOU.

Page 16: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 16

the Internet. It ensures secure data transmission. It avoids the misappropriation of

password and the intrusion of personal information.

Top 10 All users can share their view towards the book and give a score after they read it. The

score they ranked will be organized and calculated. Finally, a list of highly scored

book will be generated i.e. TOP 10 records. The TOP 10 records will be updated by

librarians once a week posted on the board in the library and posted on the bulletin

board. It can be a good reference for other users to choose books.

Recommendation Board This recommendation board is specially designed for students. Teachers are the one

who are responsible for giving recommendation of books.

Keyword search Keyword search retrieves any and all occurrences of a given word or combination of

words, whether the words appear in the subject headings, title, or descriptions of the

article or book. It expands the search to all occurrences of a given word or

combination of words.

Email reminder Some students may forget to return their book on time. To avoid the returning date

being too late, librarians will send an email reminder to urge them to return books to

the library as soon as possible.

Bulletin A bulletin refers to a brief update or summary of current news of the library. If there

are some short term amendments in the library system, a message would be posted to

inform the users. If there are some long term changes in the library, a formal circulor

will be given to every user. The bulletin is used to enhance the communication

between administer and users. Although users cannot reply on the message, they can

still get more information from these messages and know more about the library.

Birthday gifts In the database, date of birth of all users is stored. The reason for storing their date of

birth is to give a little birthday gift to each users. The birthday gifts are different in

every year. We may send an e-card with some reading tips to show the regards from

the library. The purpose of this scheme is to spread the message of reading even when

one’s are having birthday.

Page 17: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.17

2.1.2 Hardware and Software Requirements

Software To facilitate the use of web-based library system, some hardware and software

should be adopted. The hardware and software are different for clients and server.

For the operation system of the server, we choose Linux to manage the resources

as it is a freeware. It can save cost for setting up a server. For the DBMS, MY SQL

will be used. Antivirus programs, NOD32 and firewalls are installed to ensure that the

network will not be attached by the others.

For the client side, a web browser should be used for clients to get access with

the Internet. It allows users to access to web-based library system through the Internet

and download designated file from the web server of the library. To print the receipt

for transaction, a printer will also be set up in the library. User can download

anti-virus software to avoid illegal intrusion of personal information. They can also

take an advantage of email client, Outlook express to get the email reminders from the

library.

Hardware For the server, servers are set up to responds to the requests from clients

including file server, print server. All the servers are incorporated with features

suitable for storing and allocating huge amount of data on a network, and have

fault-tolerant features that guarantee up time. Fault-tolerant means that even a part

fails, the whole system can still operate. A Redundant Array of Inexpensive Disks

(RAID) system would also be established. In a RAID system, it is a technology that

employs the simultaneous use of two or more hard disk drives to achieve greater

levels of performance, reliability, or larger data volume sizes.

Also, a switch is needed to organize connected devices by allocating them into

different Virtual LANs. At the same time, a router is also established to connect a

LAN to the Internet. Printer is needed for printing some attractive posters and

application forms for students to know more about the activities.

Network Interface Card (NIC) is needed to access to the Internet for the client

side. Besides, basic components such as monitor, mouse and keyboard are required.

Speakers are also preferable as there may be videos shown on the system.

Page 18: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.18

2.1.3 Database Design

User

This is a table maintaining the information of users which includes students and

teachers. Users are recognized by user id. For teachers, the user id starts with letter “t”,

for students, it starts with the letter “s”.

There are two types of user, students and teachers of the web-based library

system. Information about students such as name, user id, class, and class number,

date of birth, telephone, address, e-mail address and password will be recorded. For

information of teachers, it is almost the same as the students’ one except class and

class number is not required for teachers. So these two fields would be recorded as

null. The password can be used when users make renewal and reservation of books

online.

The SQL command creating User is:

Field Type Width Dec Description Null

User_id Character 6 / Unique user id, i.e.S01 N

Name Character 30 / User’s name N

Class Character 2 / User’s class Y

Class_no Character 2 / User’s class number Y

Sex Character 1 / User’s gender, i.e. “M” or “F” N

Dob Date 8 / User’s date of birth N

Address Character 60 / User’s address N

Tel Numeric 8 0 User’s telephone number N

Email Character 40 / User’s email Y

Password Character 14 / User’s password N

Remaining_q

uota

Numeric 1 / User’s remaining quota for

borrowing

N

Create table user(user_id char(6) primary key, name char(30), class char(2) null,

class_no N(2) null, sex char(1), dob date, address char(60), tel n(8,0), email char (40)

null, password char(14), qutoa n(1,0))

Page 19: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 19

Quota Numeric 1 0 User’s quota for borrowing

Form1-3:”1”,Form4-7:”2”,Te

acher:”3”

N

Instant of data: For students

Figure2.1.1 Instant of data in entity USER for students For teachers

Figure2.1.2 Instant of data in entity USER for teachers

Book

This is a table maintaining the information of books. The user information includes a

unique book accession number (the primary key), books’ title, author of books,

publisher of books, ISBN of books, availability of books. Books are recognized by

acc_id. Status shows the availability of books. If books are available for borrowing,

“Y” will be shown. If books are not available for borrowing, “N” will be shown.

Others are the information of the books.

The SQL command creating Book is:

Page 20: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 20

Field Type Width Dec Description Null

Acc_id Character 6 / Unique book id,i.e.”B01” N

Title Character 80 / Book’s title N

Author Character 30 / Author of book N

Publisher Character 30 / Publisher of book N

Type Character 10 / Type of book N

ISBN Numeric 20 0 Book’s ISBN N

Status Character 1 / Book’s status ,i.e. Y or N N

Instant of data:

Figure2.2 Instant of data in entity BOOK Borrowing Record

The entity Borrowing Record has attributes for saving each borrowing record’s id(the

primary key), user_id, acc_id(the foreign key attributes), the date that users start

borrowing books, and returning the books, times of renewal students made

The SQL command creating Borrowing Record is Field Type Width Dec Description Null

Record_id Character 6 / Unique borrowing record id N

User_id Char 6 / User’s id, i.e.”S00001” N

Create table Borrowing_Record(record_id char(6) primary key, user_id char(6), acc_id char(6),

date_of_borrowing date, date_of_returning date, time_of_renewal char (5) null)

Create table book(acc_id char(6) primary key, title char (80), author char(30), publisher

char(30), Type char(10), ISBN N(20,0), Status char(1))

Page 21: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 21

Acc_id Char 6 / Book’s id,i.e.”B00001” N

Date_of_borrowing Date 8 / Date of borrowing N

Date_of_returning Date 8 / Date of returning N

Time_of_renewal Numeric 1 0 No of renewal Y

Instant of data:

Figure2.3 Instant of data in entity BORROWING_RECORD

Reservation

The table Reservation stores the information of reservation made by teachers and

students. The table involves a unique reservation id(the primary key), user_id,

acc_id(the foreign keys) for recognizing a reservation, start date that users made

reservation, end date that users made reservation and status of book. Start date is the

date that the user makes reservation. End date means the last day of reservation, after

that day, the reservation is invalid.

The SQL command creating Reservation is:

Field Type Width Dec Description Null

Reservation_id Character 6 / Unique reservation id N

User_id Char 6 / User’s id, i.e.”S00001” N

Acc_id Char 6 / Book’s id,i.e.”B00001” N

Create table Reservation(reservation_id char(6) primary key, user_id char(6), acc_id

char(6),start_date date, end_date date, valid char(1))

Page 22: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 22

Start_date Date 8 / Start date of reservation N

End_date Date 8 / End date of reservation N

Valid Character 1 / Y for valid. N for invaild N

Instant of data:

Figure2.4 Instant of data in entity RESERVATION

Ranking

The entity Ranking has attributes for saving book review’s id(the primary

key),user_id, acc_id(the foreign keys), content of book review, rank that users made

for that book, date of making review, time of making review

The SQL command creating Ranking is:

Field Type Width Dec Description Null

Book_review_id Character 6 / Unique book review id N

User_id Character 6 / User’s id, i.e.”S00001” N

Acc_id Character 6 / Book’s id,i.e.”B00001” N

Book_review Character 256 / Review of book N

Rank Numeric 2 0 Rank of book, i.e.1: less

preferable, 10: the most

preferable.

N

Date Date / Date of review N

Time Character 5 / Time of review N

Create table Ranking(review_id char(6) primary key, user_id char(6), acc_id

char(6),book_review char(256), rank n(2,0), date date, time char(5))

Page 23: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 23

Instant of data:

Figure2.5 Instant of data in entity RANKING

Page 24: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.24

2.1.4 ER Diagram

MUSER

1 Is recorded in

RESERVATION Make

Is for

include

RANKING M

M

Rank

Date

Time

Book_review

Book_review_id

1 1

BOOK

Author

Acc_id

ISBN Title

Status

Publisher

1

1 1 M

Reservation_id

Start_date

End_date

Valid

include

Make

M

M

Remaining_quota

NameUser_id Class

Class_no

Address

Password

Sex

Quota

DOB

Email

Tel

Date_of_borrowing

Record_id

Returned

Time_of_renewal

Fine

BORROWING_RECORD

Page 25: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.25

2.1.5 Database Schema Schema is the description of the structures and relationships of the tables in a required

database. Here is the schema of web-based library system.

Ranking Book_review_id User_id Acc_id Book_review Rank Date Time

Book Acc_id Title Author publisher ISBN status Reservation

User User_id Name Class Class_No Sex DOB Address Tel Email Password Quota Remaining_quota

Reservation Reservation_id User_id Acc_id Start_date End_date Valid

Borrowing record Record_id

User_id Acc_id

Date_of_borrowing

Date_of_returning Time_of_renewal

Returned

Page 26: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.26

2.1.6 Network Diagram

Optical Fiber Cable TV network Shielded Twisted Cable

File Server

Web Server

Server

Control Room

Computer H

Computer I

Printer C Print Server

Main Switch

……

Computer A

Computer B Computer C Computer E

Switch Switch

Firewall

Router

Router

Router

Router User 1

User 2

User N

Printer A

Printer B

Computer D Computer F

Printer

Switch

Internet

Router Router

User 3

User 4 User 5

User 6

Library Staff Room

Page 27: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.27

2.1.7 Description of network diagram All the computers in the library are connected by star topology since it is flexible

to add or remove the nodes. If a node fails, the whole network will not be affected and

it can still operate.

A group of computers is connected by a switch instead of a hub since switch is

more intelligent than hub which suits the library system more. The switch can

organize connected devices by allocating but the hub would only forward the signals

to all ports. Also, switch allows several pairs of nodes to transmit signals at the same

instant in full duplex.

There are sever, a backup sever, a print server, a web server and a web server in

the internal network. Sever is used to store huge amount of data while the backup

sever is used to prevent loss of data.

Two groups of computers are connected to switch which is also connected to the

main switch. The main switch is connected to firewall in order to prevent

unauthorized access to our school’s internal network.

Also, a router connects our LAN to the Internet so that users can access the web based

library system at home through the Internet.

Page 28: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.28

2.2 Implementation Scenario 1 As I mentioned before, students always have no ideas to choose books, they have

to spend lots of time reading the introduction of each book so as to choose the right

book to borrow. However, it is really a waste of their time for study. Therefore, the

library are not making references for students, the book in the top 10 list will be

shown. The position of the book in top 10 is based on the ranking made by users.

Students and teachers can make use of the top 10 books list to borrow some suitable

book. It can greatly reduce their time of searching.

For displaying the top 10 books, the SQL command is:

Instant of data:

Figure3.1 Instant of data in SCENARIO 1

SELECT top 10 b.acc_id,title,avg(rank) as avgrank FROM book as b inner join

ranking as r on b.acc id=r.acc id GROUP BY b.acc id ORDER BY avgrank desc

Page 29: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.29

Scenario 2 Assume the current date is 9/30/2008. Librarians are going to list all users to

have not yet returned the library books on the current date so as to remind them to

return books and fine as soon as possible.

For listing the unreturned books and users’ name, the SQL command is

Instant of data:

Figure3.2 Instant of data in SCENARIO 2

Select r.user_id, b.acc_id, name ,title,1*({09/30/2008}-date_of_returning) as fine from

book as b inner join borrowing_record as r on b.acc_id=r.acc_id inner join user as u on

r.user_id=u.user_id where returned ="N" and date_of_returning<{09/30/2008} ORDER

BY u.user_id

Page 30: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.30

Scenario 3 Also, our users do not have a proper way to search books. Therefore, the library

is going to introduce a new function for students to search books. By the function of

keyword search, users can type the keyword of a book, an author or a publisher

through the online library system, then, information of books which confirm to the

requirement will be shown.

A student likes reading books written by CABRAAL and he would like to search

books written by him in the library. However, he doesn’t know the exact spelling of

CABRAAL, what he can remember is only the first three letters of CABRAAL,”CAB.

After the function of keyword search is implemented, he tries to access the online

library system and enter the search terms “CAB” to see whether any CABRAAL’s

book is available in the library.

For listing the books written by CABRAAL, the SQL command is

Instant of data:

Figure3.3 Instant of data in SCENARIO 3

SELECT acc_id,title,publisher,type,status From BOOK WHERE author like "%CAB%" AND status="Y" ORDER BY title desc

Page 31: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.31

Scenario 4 There is a usual practice to compare whether the situation of late returning of book

is serious or not. The day of checking is the last school day in October, which is

09/30/2008. The method of checking is to calculate the percentage of the late returned

record and on time returned record of the total transaction records.

If the problem of late returning is serious, some methods should be adopted to

improve the current situation.

For listing total number of transaction record before 09/30/2008, the SQL

command is

Instant of data

Figure3.4.2 Instant of data in SCENARIO 4 Result=21

Instant of data:

Figure3.4.2 Instant of data in SCENARIO 4

Select returned, round (count(returned)/21*100,2) as percentage_of_total from borrowing_record GROUP BY returned ORDER BY returned desc

Select count(*) from borrowing_record where date_of_returning<{^2008/09/30}

Page 32: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 32

Chapter 3 Testing and Evaluation

3.1 Why testing is so important? Even the most clear and careful design may have defects. To ensure the web-based

library system survives in the event of a real disaster, testing the recovery plan should

be required. It often takes several plans testing to identify and resolve potential

problems.

Testing is a procedure for critical evaluation and a mean of determining the

presence, quality or truth of something.

Testing allows the system users to ensure the function of system is workable and

practicable. Since it is a trial period for the use of web-based library system, some

function may not be as feasible as we expected. We can spot the problems during the

testing. After spotting the mistake, we should try to fix the potential problems before

putting the system in use officially. It reduces the disordered situation when the system

is run.

Also, testing is a good mean to see whether the system is user-friendly or not.

When it is in use, the function designed for users can be checked.

Therefore, a testing is necessary before the system is really put in use.

3.2 Testing Plan Purpose: To check whether the system can handle book renewal

Situation: A student with USER_ID “s14” wants to renew a book with ACC_ID “B20”

on 09/08/2008

Test case1: The book is not reserved by other student and this is the first time the

student renew the book.

Expected

result:

The renewal is accepted. The field DATE_OF_RETURNING is set to

15/09/2008 and the field NO_OF_RENEWAL is set to 1

Test case2: The book was reserved by another student with STUD_ID “s01” on

05/09/2008.

Expected

result:

The renewal is rejected and the students is not allowed to renew it..

There is no change in the field DATE_OF_RETURNING.

Test case3: The book in not reserved by other student and this is the third time the

student renew the book.

Page 33: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 33

Expected

result:

The renewal is rejected as he can only renew a book for 2 times only.

There is no change in the field DATE_OF_RETURNING.

Purpose:

Assume a reservation record is existed, to check whether the teacher can get the

reserved materials.

Situation:

A teacher with USER_ID “T08” wants to borrow a book with ACC_ID”B12”. However,

the book is borrowed by others and will be returned on 09/22/2008. Therefore, the

teacher makes a reservation successfully on 09/20/2008. A reservation period is set to 2

week which the end date of reservation would be 10/06/2008. If the reserved materials

has not returned within the reservation period, the reservation will be extend to 1 week

Test case1: The book is returned on 09/22/2008.

Expected

result:

As the book is returned within the reservation period of

teacher“T08”, the book “B12” is reserved for the teachers. The teacher

is able to borrow that books on 09/22/2008-10/20/2008’.

A new borrowing record is inserted into the database when the

teacher borrows the reserved book on 09/22/2008. The field

DATE_OF_BORROWING is set to 09/22/2008 and the field

DATE_OF_RETURNING is set to 09/29/2008. Also, the valid of the

field RESERVATION will be set to “Y” and the status of the field

BOOK will be updated from “Y” to “N”

Test case2: User “S19” returned the book later that the date of returning on

09/28/2008.

Expected

result:

Although the book is late for returning, it is returned within the

reservation period of teacher”T08”, the book “B12” is reserved for the

teachers. The teacher is able to borrow that books on

09/28/2008-10/06/2008’.

A new borrowing record is inserted into the database when the

teacher borrows the reserved book on 09/29/2008. The field

DATE_OF_BORROWING is set to 09/28/2008 and the field

DATE_OF_RETURNING is set to 10/06/2008. Also, the valid of the

field RESERVATION will be set to “Y” and the status of the field

BOOK will be updated from “Y” to “N”

Page 34: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 34

Test case3: User “S19” returned the book later that the date of returning on

10/07/2008.

Expected

result:

Although the book is returned later than the due date for more than 2

weeks. However, there will be 1 week extension of reservation period

from 10/06/2008 to 10/13/2008 if reserved book is returned after the

due date. The book is returned within the extended reservation period

of teacher”T08”, the book “B12” is reserved for the teachers. The

teacher is able to borrow that books on 10/07/2008-10/14/2008’.

A new borrowing record is inserted into the database when the

teacher borrows the reserved book on 10/08/2008. The field

DATE_OF_BORROWING is set to 10/08/2008 and the field

DATE_OF_RETURNING is set to 10/15/2008. Also, the valid of the

field RESERVATION will be set to “Y” and the status of the field

BOOK will be updated from “Y” to “N”

Test case4: The book is returned on 10/17/2008.

Expected

result:

The book is returned too late that excess the already extended

reservation period of teacher. Therefore, the reservation will be

automatically cancelled. No more extension will be made for the

reservation period. No borrowing record will be inserted into the

database. This valid of the field RESERVATION will be set to “N”. If

the teacher still wants to reserve the book, he/she has to make a new

reservation record.

Test case5: The teacher tries to get the reserved book on 07/10/2008.

Expected

result:

The book is returned within the extended reservation period of

teacher”T08”, the book “B12” is reserved for the teachers. The teacher

is able to borrow that books on 09/22/2008-10/06/2008’. However, the

teacher comes to library to get the book on 10/07/2008. The reservation

record will be cancelled and the book will not be reserved for the

teacher after 10/06/2008. This valid of the field RESERVATION will

be set to “N”.

Test case6: The book is returned on 09/22/2008. However, it is damaged.

Expected

result:

Although the book is returned within the reservation period of the

teacher, the book is broken already. It will be repaired by librarians.

The reservation record will be cancelled as there is uncertain when the

Page 35: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 35

book will be recovered. This valid of the field RESERVATION will be

set to “N”.

Test case7: The due date of book borrowed by user “S19” is 09/22/2008.

However, he/she makes a renewal to extend the due date from

09/22/2008 to 09/29/2008. The book is returned on 09/29/2008.

Expected

result:

Although the book is renewed to defer the due date, it is returned

within the reservation period of teacher”T08”, the book “B12” is

reserved for the teachers. The teacher is able to borrow that books on

09/29/2008-10/06/2008’.

A new borrowing record is inserted into the database when the

teacher borrows the reserved book on 09/29/2008. The field

DATE_OF_BORROWING is set to 09/29/2008 and the field

DATE_OF_RETURNING is set to 10/06/2008. Also, the valid of the

field RESERVATION will be set to “Y” and the status of the field

BOOK will be updated from “Y” to “N”

Purpose: To check whether user can borrow books

Situation: A student with USER_ID “S11” wants to borrow a book with ACC_ID”B12”

on 09/22/2008.

Test case1: The book is borrowed successfully

Expected

Result:

A new borrowing record is inserted into the database when the

teacher borrows the reserved book on 09/22/2008. The field

DATE_OF_BORROWING is set to 09/22/2008 and the field

DATE_OF_RETURNING is set to 09/27/2008. The status of the

field BOOK will be updated from “Y” to “N”

Test case2: The borrowing quota is full.

Expected

Result:

No borrowing record will be inserted into the database unless the

users return books to vacate the borrowing quota.

Test case3: User forget to bring his/her user ID card

Expected

Result:

No borrowing record can be inserted into the database. Since the

user ID card is necessary for the borrowing process.

Page 36: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

P.36

3.2 Evaluation Aims

The aims I established the web-based library system is to provide availabilities of

information in different places and also in different formats. Also, it is less

dependence upon the librarians for getting the required information as well as to

improve the efficiency of completing each transaction. The purposes of establishing

the web-based library system have almost achieved. However, there are still some

minor problems needed to be fixed.

Evaluation on function of system

In the whole, the functions are able to meet the need of users. However, there are

still minor shortcomings in the system.

First, the function of keyword search may retrieve much more than users want. It

can not give the exact information that users want.

Second, the function of making comments cannot support the interactive reply in

the comment record. Each user can only make their comment and no reply can be

given from other users. The read-only comment system reduces the changes of

interchange ideas. No feedback concerning the comment can be received for the

comment writer.

Since the system is newly established, it is normal to have minor mistakes in the

system. After the probation and opinion given from users, the function of the system

will be upgraded in order to strive for perfection.

Evaluation on table structure

The overall structure of the system is well-established because it is free of data

redundancy and the users can freely insert, modify or delete the rows in a table

without errors and inconsistencies. The structure of the table has also been normalized.

Normalization is a database design technique based on analyzing relations among key

and non key attributes of database tables. It is used to improve a logical database to

make it simple and flexible. It can reduce data redundancy, inconsistency and

anomaly

However, there is a problem with the ranking table. In the ranking table,

“character” is set for the field “Book_Review”. “Character” can only support 256

Page 37: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 37

words in each record. Actually, it is a bit insufficient for users to express their feelings

towards the books they read. When they get a lot of things to share with others, the

type “Character” cannot cater for their need at this time.

Page 38: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 38

Chapter 4 Conclusion and Discussion Suggestion

A method to improve the keyword search engines is to post a “Keyword Search

Guidelines” to guide students to search for more accurate results.

To tackle the problems about the Book Review Board which cannot reply on

user’s review. To resolve the problem, I am trying to invite a computer expert to

tackle the problem. It will be soon to get the function of reply in the library system.

To resolve the problem of inadequate word space for users to express their book

review, a memo form will be used for the type of book_review in the ranking table.

As a memo type allows unlimited word space for users to write comment, it is good to

encourage users to write more about the book they read.

With the collective measures carried out, I am sure that it will help the library to

improve. Conclusion To conclude, the newly designed system can mostly cater my need. The

objectives of designing this system are that to raise the efficiency of transaction, to

avoid manual error, to release the librarians’ burden, to allow access the library’s

system at anytime and anywhere and to provide a platform for user to share their book

reviews. Mostly, those objectives can be fulfilled.

Self-reflection With the collective measures carried out, I am sure that it will help the library to

improve. This is my first time to deal with a very demanding project with a qualitative

requirement in research, formatting and content. At first, I could not find the right

direction to the project. With the help of teachers and classmates, I gradually perceive

what I should do in the project.

Although there are lots of difficulties when I am doing the project and I am not a

member of the outstanding classmates, I finally overcome the difficulties by my

perseverance and hard work. It is thankful and appreciated to see my project done

with a clear structure.

Page 39: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 39

It is really a good experience to push me to step forward to try a new thing that I

had never tried it before.

I would like to show my appreciation to my Computer teacher Mr YYY who gives me opinion and encouragement to drive me to work harder.

Page 40: Web-based Library System - 鐘聲慈善社胡陳金枝中學 · D5 Page 4 book. The library post the book reviews from students on the board irregularly. Hand written transaction

D5

Page 40

Chapter 5 References Hyperlink

1. Answers.com

http://www.answers.com/

2. Cyber Campus

http://www.hkcampus.net/

3. Wikipedia

www.wikipedia.com

Book

1. Raymond W.N. Chan, Computer concept for A/AS level, Hong Kong: Radian Pulishing,2005

2. Raymond W.N. Chan,

Data Communication& Networking for A/AS level, Hong Kong: Radian Pulishing,2005

3. Raymond W.N. Chan,

Database for A/AS level, Hong Kong: Hong Kong Radian Pulishing,2005