• No results found

Library Management System Project Report

N/A
N/A
Protected

Academic year: 2021

Share "Library Management System Project Report"

Copied!
112
0
0

Loading.... (view fulltext now)

Full text

(1)

Library Management System Abstract

III

Abstract

This report is all about the development of Library Management System for the website part. It develop use to convince the member to search the book and also ease of borrowing books from the library.

This website mainly use by member and staff. It allow member to search and reserve book. Member allows search the book and knows what book contain in the library. Other than that, member allows to see the book detail and also comment on the book. Member also allow reserve the book via website so that they can save their time and cost to travel from their destination to library. Member also can view current book they are borrowed and also history of the book they have borrowed. For staff user, they are able to add news and also view report with several criteria. Staff allows to add, edit and delete the news. When new news added, the homepage news tab will be shown the new data.

The methodology used by me is waterfall model. The report’s chapter was included system planning, requirement analysis, system design, programming, system testing, and evaluation of the project.

(2)

Library Management System Table Of Contents

Table of Contents

Declaration...II Abstract...III Acknowledgment...IV 1. System Planning ... 1‐18 1.1 System Planning...2

1.2 Project Aims and Objectives...2

1.3 Background of Project...2

1.4 Project Scope...4

1.5 Project Schedule...13

1.6 Outline of Approach/ Methodology Used...14

1.7 Operation Environment...17 1.8 Summary...18 2. Requirement Analysis... 19‐40 2.1 Requirement Analysis...20

2.2 Software Requirement Specification (SRS)...20

2.3 Data Flow Diagram (DFD)...33

2.4Summary ... 40

3. System Design... ... 41‐67 3.1 System Design...42

3.2 External Interface Requirements...42

3.3Entity Relationship Diagram (ERD) ... 57

3.4Normalization ... 58 3.5Data Dictionary ... 61 3.6Summary ... 67 4. Programming ... 68‐84 4.1 Programming...69 4.2 Coding...69

(3)

Library Management System Table Of Contents 4.3 Summary...84 5. Software Testing... 85‐90 5.1 Software Testing...86 5.2 Test Plan...86 5.3 Summary...90 6. Conclusion... ... 91‐97 6.1 Introduction...92 6.2 Linkage to seminar...92

6.3 Evaluation of Project Objective...93

6.4 Project Management Issues...93

6.5 Evaluation of Project Strengths and Weakness...94

6.6 Suggestion for Future Enhancement...95

6.7 Personal Reflection...96 7. References ... 98‐99 8. Appendices ... 100‐141 User Manual ... 101 Project Specification ... 123

(4)

Library Management System Chapter 1: System Planning

1

Chapter 1

(5)

1.1 System Planning

The developing website of the Library Management System will be carried out in this chapter as well as the website objectives, scope and schedules.

1.2 Project Aims and Objectives

The project aims and objectives that will be achieved after completion of the website were carried out in this sub chapter. The succession of the system also will be evaluated through this sub chapter.

The project objectives are:

- To allow user to reserve book via online

- To convenience user borrow book by searching online

- To implement E-mail technologies into the website.

- To implement SMS technologies into system.

- To design a user friendly graphical user interface which suit the users

- To complete the website according to project schedule

1.3 Background of Project

Library Management System is an application refer to other library system and it is suitable to use by small and medium size library. It has divided into online and offline. In this document will only mention about online which is website and a small part of offline system. It use by librarian and also normal user. The website develop to help convince the normal member to allow the library facility. Example, To know this book currently exist in library or not. For admin users they can implement the website. They can update the news for the website and also can see some report.

SMS(Short Message Service) is implement in to the system. The user allow to sms the message by connecting a GSM(Global System For Mobile Communication) phone. The SMS module is created for sending message to the people who has borrow the book over the due date. It convenience the user by clicking one button and it will send to all user.

(6)

Staff and member maintenance module also included in Library Management Website. Users can edit the information of their profile. The staff and member also able to get back lost password. By matching the ID and E-mail, they will get a E-mail with their password written.

In additional, comment module also included inside. So each member can comment the books which contain in the library. This module helps to recommend the book for users which is good or bad. The comment can be delete by the member who comment it and also any admin user.

Other than that, report module also implement inside Library Management Website. It only can view by admin users. It has two type of report which is book comment report and also member expired report. Book comment report allow librarian to know the popularity of the report. So if the book is popular, the librarian may order more books. Member expired report allow to see who is expired. It may see the member popularity of the library of current year or month is decreasing or increasing.

Reserve module also implement in the website. Reserve module is allow user to reserve book online so that they can borrow the book if they are far from the library. But in this reserve, member needed to get the book in 2 week period or else the reservation will be cancel.

All these modules are able to help librarian to manage the library more convenience and efficiency compare to those library without computerized system.

(7)

1.4 Project Scope

In this sub chapter, project scope will carried out what modules were contains inside the Library Management System.

For Library Management System, it is divided into online web site and library system. For my part, I was responsible for library website and a part of system while the system was carried out by my friend Tan Chaur Chuan.

At here, I will describe my own part which is library website which used by librarian and member.

Authorization and Authentication Module

Authorization and Authentication

ID / Password

Checking PasswordRecovery

This module is used by user and also admin user for the website. They need to login to the website using their id and password. In order to distinguish the user’s level, user can access to different module when successfully login. For example, admin can implement News.

(8)

Member/Staff Maintenance Module Member/Staff Maintenance Edit Staff/Member Change

Password Staff/MemberView

This module allow user and also admin to view their profile. Not only that, they allow to edit their profile and also change their password.

Search Module

Search module allow user or guess who visit website to search the book. Not only that the user allow to view the detail of the book and also see the comment of the book. There are a few of type allow users to search. They can search via ISBN, book title, author, publisher, and category.

Top 10 new book and recommended book Module

Top 10 new book module allow guess and member to see the top 10 new book has brought by the library and the recommended book module only can see by member after log in to the system. It recommended based on their category example the user like to see action type book then it will recommend some action book for

(9)

News Maintenance

Add new news Edit news Delete news

Book Maintenance Module

View Current Book Borrowed Reservation View Book Borrowed

Add Reservation Delete Reservation View Reservation

News Maintenance Module

This module allows user to add, edit and delete the news. So when the user visit the website the website will have shown updated news.

Book Maintenance Module

Book maintenance module allows the member to view the book currently they have borrowed and also view the book they have borrowed. Not only that, there got reservation module which allow member to reserve book. Members are allow to reserve book and delete the reservation and also view currently the book they reserve.

(10)

E-mail Module

E-mail module has implemented in FAQ and also forget password. So when the member forgot their password they can get back their password via matching their ID and E-mail. Other than that, for FAQ if guess or member have more question to ask they can ask via E-mail.

Report Module

Report Module

Book Comment

Report Member ExpiredReport

Report module is the module for admin user. There is two report which is Book Comment and Member Expired.

For Book Comment report is to view the top book that has been commented. It allows the admin to know the popularity of the book so that they can get more new books. It can view via day, month and year.

Member Expired report is to view the member is expired via which date, month or year. So they can remind their member to renew the membership and also can know the popularity of the library. So, it can be estimate the popularity of the library currently is increasing or decreasing.

(11)

Comment Module

Comment Module

Add Comment Delete Command

Comment Module created is for member to comment a book. So, if the member have opinion about the book they can actually comment on the book. Not only that they can also delete their own comment. Admin users can delete any comment of the book that member has already comment.

Library system

At this part I will present about my friend’s part which is the application part.  Authorization and Authentication Module

Authorization and Authentication

ID / Password

Checking PasswordRecovery

This module is used by user which means librarian in the library. They need to login to the system using their id and password. In order to distinguish the user’s level, user can access to different module when successfully login. For example, only admin level users are able to access the report module.

(12)

Member Maintenance

Add new member Edit member Print ID card Search Member

Book Maintenance

Add new bookEdit book informationGenerate barcode Search book

Member Maintenance Module

This module can be accessed by either librarian or library admin to maintain member’s profile or record such as search, add, edit and print ID card.

Book Maintenance Module

Book Module can access by any user from all levels. This module can used to maintain the book inventory record such as search, add and edit. In addition, we can generate the barcode for particular book and print it out so that librarian can stick the barcode on the book cover.

(13)

Publisher Maintenance Module

Publisher Maintenance

Add new

publisher Edit publisherinformation publisherSearch

This module allows user to add and edit the book’s publisher. Publisher is used when register a new book.

Employee Maintenance Module

Employee Maintenance

Add new

employee employeeEdit employeeSearch

Employee Maintenance is only can carried out by admin level user. It can use to add the new librarian to the library which means add the new user.

(14)

Book Transaction

Rental Module Return Module Lost Book Module

Check Reservation Fine Module

Book Transaction Module

Book Transaction module is a main module in Library Management System. When member wants to borrow books, return books or they want to register lost book, it is all under book Transaction module. This module can be

accessed by normal user or admin user. When member wants to borrow a book, librarian needs to scan in their member id. After that, librarian will scan their book’s barcode id. If the book is under reservation, the book is not available to rent.

For return module, librarian just needs to scan the book’s barcode id, and confirm the rental detail with user. If the rental detail is correct, return module can be complete if no any fine issued.

(15)

Report Module

Report Module

Transaction

Report Top10 BookReport Log FileActivity

Report module is the main module for admin user. It is because normal user is not allowed to view the report. The report divided into 3 types. First one is transaction report which can let admin views the book transaction happen on particular date such as rental report and return report.

Top10 Report is the top rental rate’s book. Admin can filter the information based on book’s category and also filter by date in type of daily, monthly and yearly.

Activity Log File is a log which records every process in the Library Management System such as login / logout activity, register new book, new member or edit information or a member. All the activity done by every user will be record so that when system crash, admin or system admin are able to check the activity that may crash the system.

(16)
(17)

1.6 Outline of approach / Methodology used

Software has been used to develop Library Management System is Visual Studio 2008, language JSP with JAVA, and SQL Server 2008 as the database. For methodology, I have use waterfall method.

Waterfall is a method allow to increase the speed to complete the project but risky. So users need to carefully design. If the current phase is complete, it will proceed to next phase. It is risky because it does not allow to backward to previous phase.

At Royce's original waterfall model, the waterfall model originally consists of 7 phases which is Requirement Specification, Design, Construction, Integration, Testing and Debugging, Installation and Maintenance.

At first, we get the requirement for the library website, and then we analyzed it. After the analyzed phase has completed, we can proceed to next phase which is design phase. For design phase, I have design the website interface. After that, with my group members we designed database. After that is construction phase. Construction phase basically is to start develop the website. With the logic and coding, I use JSP with JAVA to develop the website. In this phase is the most time consuming phase because there might have many problem occur and could not understanding the function. Sometime the logic is wrong make the errors. After this phase, it comes to integration phase. At this phase, the library management system has been share one database because it needed to link between online and offline part. So we needed them to integrate with each other. Then testing and debugging phase come after integration phase. For testing phase, it is actually not suitable for programmer itself to testing. So we given some of our friend as user to test. It has divided into few part, logic test, validate test, and user interface test. If there are bugs is founded, it will be record down and solve.

At last is installation and maintenance phase. In this phase, for member for that library just have needed a web browser at home to open the website. And for library user, they

(18)

needed to buy a address and host the website so that every member can log in to the website.

1.5.1 Development Environment

Software

 Operating system: Window 7 Professional

Window 7 Professional has been selected as my operating system to develop the website because it has the latest technology and many new functions which only allow window 7 uses other than other windows which bring advantage to develop a website. Website also does not have compatibility problem because we just needed a web browser and we could see the website..

 Database: Microsoft SQL Server 2008

Microsoft SQL Server 2008 has been use ask our database because SQL 2008 is more user-friendliness than other database. It may use more process compare to other database software but it solve some problem. Example when a emergency happen which need to change something in database. We can actually easily teach the user to do it on their own. Other than that, SQL may have auto backup so that the data would not be lost easily.This is very useful when we developing the Library Management System.

 Development tools and programming language: Microsoft Visual Studio 2008

and VB.NET

We would like to use Microsoft Visual Studio 2008 as our developing software. Visual Studio 2008 is powerful and flexible developing software, it allows us to build a good design application with an easy-use drag and drop controls on our form. We can see the user-friendliness of our application once we finished drop the control on form.

(19)

Hardware

 Processor: Intel® Core™ 2 Duo CPU T7250 @ 2.00GHz

Intel processor is a popular processor which allow comfortable to more technology. With this processor, Intel Core 2 Duo, it help the CPU reduce the temperature and allow us to work more longer and faster. By this technology, we have no worry to developing a system with higher technology. It is suitable for develop Library Management System in more advance way.

 Ram: 2.00 Gb

With the Visual Studio and SQL server open at the same time. The CPU itself needed have more space to let the software process. So that it cannot make the computer hang. If there are no higher Ram, the process will become slower because the memory in the Ram maybe full. It actually delay the development phase.

(20)

1.7 Operation Environment

The table shown below is the minimum requirement for the Library Management System (Website):

Client Side

- A Web browser – IE, Mozilla Firefox, Google Chrome.

Host Side

Processor Intel Pentium IV 3.0 Ghz or better performance

Operating System Microsoft Window XP, Vista or Window 7

Memory 512MB RAM

Screen Resolution Monitor with screen resolution minimum 1024 x 768

Hard disk Space Minimum 5GB to include database usage for future

(21)

1.8 Summary

In this chapter, project schedule, project scope, methodology used, project background and also the developing and operating environment has been presented.

In this chapter, I have faced a few problems. At first, the problem that we met is lack of research and knowledge about library process. We wanted to make the library process become computerize system but before that we does not understand the process. Not only that, many of our friend also lack of knowledge about library process. This made us have to go to find the solution ourselves. The solution of this problem is we have go to research the library. Other than that, our supervisor also gives us some important advice and also the advice from the internet. We can finally sure the process of the library.

The second problem is time management problem. We have planned to start our project during internship start which is July 2010. During internship, because of my laziness, I did not do the project at all. After internship, we still have not done many parts as the schedule. After that we found out we are lack of time to do the project, with the remind of the supervisor time to time, we rush our project daily and finally we could done it on time.

In this chapter, I have learnt that time management skill is very important because when we do not plan our time properly it will cause us disaster when the due date come. If we start early, if we have error we can solve it after we done but when we done it late, we have no time to solve the error.

(22)

Library Management System Chapter 2: Requirement Analysis

Chapter 2

(23)

2.1 Requirement Analysis

In this chapter, Software Requirement Specification (SRS), Data Flow Diagram (DFD) and Entity Relationship Diagram (ERD) will be discus for developing process of the Library Management System. SRS used to have overview of the system requirements and it also included functional and non-functional requirements. Other than that, DFD used to provide a view of business flow. It show the efficiency and effectiveness of the system..

2.2 Software Requirement Specification (SRS)

2.2.1 General Description

Product Description

For online website, Library Management System is a website which helps the normal users and admin users to convince their daily jobs. It reduces the normal users travel fees and for admin users may reduce paper work. It help both of the users save time and costs.

Problem Statement

The problem occurred before having website includes:

 Does not have reservation

Before having website, the customer which is member of the library does could not reserve book from the library. So when they wanted to borrow a book without knowing there quantity still left or not, so they have to travel from their destination to library. If the book is out of stock, they needed to wait for the people return only they can borrow again.

(24)

 Members/Staffs Maintenance

The website allows the member or staff to maintenance. Without website, they needed to go to library tell the staff to change the information. Example a member has move from Setapak to Serdang, he needed go to the library change his address himself. But website allows them to change themselves. It is convenience to both librarian and member. Example when a letter sends out to the member house, it will directly send to new address.

 Difficult to search book

Without website, the member of the library could not know what book contain in the library. They will have to go to find out at the library themselves. With website they can search the book in the website to know that currently the book exist in the library or not.

 SMS by handwork

Without computerizes system, the staff of the library have to send SMS to recall member that the book that they borrow is already reach due date. They have to check themselves and send one by one themselves. With this SMS function, they will just need to click one button and send to all members who are reach the due date.

 Difficult to view reports

Report need to generate manually by themselves. They have to record and calculate themselves and generate the report. With the website and system actually overcomes the problem. It save times.

(25)

 Cost and Time consuming

Before the website develop, many things for member needed to travel from their destination to library to know the information. It has already wasted their travel fees and time to only get the information from library. With the website help, they allow to check it at homes and it overcomes the problem.

2.2.2 System objectives

 Improvement in control and performance

The website develops to overcome the problem exists in the library. It can validate the users, store the record and bug free. It also convenience both staff and members.

 Save cost

The members save travelling cost which he/she need to travel from his/her destination to library to get the information such as book available, new books and more. The website is overcome the problem.

 Save time

Member is able to search the book in short time by using the search function. Compare to previous time before implementing the website, member can save a lot time to travel from their destination to library.

2.2.3 System Requirements

2.1.3.1 Non-functional Requirements

 Products Requirements

Efficiency requirements

With the library management system, the librarian can process in book transaction with faster speed. It is because by reviewing the website they can get the information they want and they does not needed to ask the librarian. In addition, with the SMS function, the librarian can send the SMS by clicking one button instead they send it one by one and send it to wrong number.

(26)

Reliability requirements

The website must immediately update. So when the member visit they could get the latest information and also they can provide latest information to us. Example, when the member changes the profile, the information must be immediately update and the detail get by the librarian must be the latest. Other than that, the pages which needed user key-in will be validate to prevent user key-in wrongly.

Usability requirements

The website must be designed user-friendly so that the user is easy to learn when they first get in to the website. It also must have the clear instruction so that the user will be guided when using the website. After that, the error message should be clear and understanding for user.

 Organizational Requirements

Implementation requirements

In implementing of the website, it uses the JSP with JAVA as the programming language and tools. SQL Server will be use for the database to support with the programming language.

Delivery requirements

For the whole system, the progress is estimated done at about six months and the documentation done in two months. Documentation will be delivers in hardcopy and softcopy and for full system will be delivers in softcopy.

(27)

 External Requirements

Legislative requirements

The information that use must be acknowledge by the authorized people so that it has no violating the law. This information is copyrighted and protected by the law. When visitors wanted to become the member of the library, he/she must agree with the rules and regulations stated in the of library management system.

Security requirements

This system must be highly secure in the login part. It can know the authorization of the id which belongs to member or staff. Member and staff both can perform different.

(28)

2.1.3.2 Functional Requirements 1. Member User

1.1 User Login

Description of Feature

This feature used by the user (Librarian and Library’s member) to login into the website. They are required to key in the user id and password to log in to the website. The password length must not less than 8 character and user id and password will be verified and invalid id is not allowed to enter the system.

Stimulus / Response Sequences

Stimulus : User visits the website.

Response : Center left part of the website allow user log in.

Stimulus : User enters user id and password at the textbox provided and click the log in button..

Response : It verifies the user id and password with the data inside database. If the user id is invalid or password not matches, there will pop up red label with password incorrect to tell user. If valid, the user successfully log in to the website.

Functional Requirements

- User id is provided when they register as member or staff.

- The website allow guess to visit. But with member there will more

function to use and some special function for staff users.

- The website must be able to perform authorization process which

decides what the user’s level can access to.

(29)

1.2 Password Recovery Description of Feature

This feature used by the user(Librarian and Library’s member) when they forget their password.

Stimulus / Response Sequences

Stimulus : User runs the website and click forget password.

Response : Link to another page which request for ID and Email.

Stimulus : Click the submit button.

Response : It will verify the ID and Email see it is match or not. If match, the password will be send to the user’s Email. If it does not match, a message box will pop out to tell users it is wrong Email.

Functional Requirements

- The website must be able to send the correct password to the user’s

(30)

1.3 FAQ ask question Description of Feature

This feature allows anyone to the question about the library via email. It requires user’s Email so that the staff can reply.

Stimulus / Response Sequences

Stimulus : User press FAQ below the banner.

Response : Website bring user to FAQ page.

Stimulus : User key in own Email, subject and also the question wanted to ask.

After that, click on send to proceed.

Response : System will validate the text box is empty or not. If empty, message box will pop up to tell the user. If valid, the system will send the email to the staff Email. If the format of the email is incorrect, message box will pop up to tell the user that the format the email is wrong.

Functional Requirements

- Website must be able to verify the information.

(31)

1.4 Search Book

Description of Feature

This feature is to search the book which contain in the library. It can search in many categories. The categories are ISBN, Title, Author, Publisher, and Category. So user can choose the category base on the category.

Stimulus / Response Sequences

Stimulus : User search below the banner.

Response : Website bring user to search page

Stimulus : User selects a search criteria and key in a word as keyword. After that, press the search button.

Response : It will validate see the textbox is empty or not. If empty, it will pop up message box said that the textbox is empty or it will search the database with the criteria given and show it on gridview.

Functional Requirements

- Website must be able to search the database based on selected

category (ISBN, book title , etc)

- Website must able to filter the book based on the keyword entered.

(32)

1.5 Change password Description of Feature

This feature allows the user(Librarian and Library’s member) to change their password.

Stimulus / Response Sequences

Stimulus : After login click on change password on left side panel.

Response : Website will bring user to change password page.

Stimulus : User need to key in the current password, new password and

confirm password. After that click on submit button to proceed.

Response : It will validate see the textbox is empty or not. If empty, it will pop up message box said that the textbox is empty or it will check the database see the current password is correct or not and also check the new password and confirm password is same or not. If it is correct then the password will be change.

Functional Requirements

- Website must check the empty textbox and correctness of the

password.

- Website able to update new password to database.

(33)

1.6 User Profile Maintenance Description of Feature

This feature allows user to edit and view their own profile.

Stimulus / Response Sequences

Stimulus : User press edit profile.

Response : Website will bring user to profile page. It will shows user’s profile

information.

Stimulus : If users wish to edit their profile, users just need to click on the edit

button. After change, click on update button.

Response : If there are any errors, there will show a list of label with red colour font show that what are the errors. If there are no errors, the data will update into database.

Functional Requirements

- Website must validate the errors.

- Website must retrieve the data and show it on the correct field in the

page.

(34)

1.7 Borrowed Book Maintenance Description of Feature

This feature allows the user to view current book borrowed and book has been borrowed.

Stimulus / Response Sequences

Stimulus : Click on Current book borrowed to see current book borrowed.

Response : Page show with the current book borrowed in gridview.

Stimulus : Click on View borrowed book to see the history of what user have

borrow the book before.

Response : Page show with the history book borrowed in gridview.

Functional Requirements

(35)

1.8 Reservation Maintenance Description of Feature

This feature allows the user to reserve book, cancel reserve and view reserve.

Stimulus / Response Sequences

Stimulus : Click on Reservation to reserve book

Response : Website will bring to reservation page.

Stimulus : Search the book via category and click on reserve button.

Response : Website will check the book is currently reserve or borrow by

anyone or not. If the book is not available, the message box will pop up to tell the user. It also check see the user available to borrow book or not. If user is not available to borrow book then he/she could not have permission to reserve book.

Stimulus : Click on Current book reserve to view current book that user

reserve.

Response : It will show the reserve book in gridview.

Stimulus : If user want to cancel reserve, click on delete button in the

gridview.

Response : It will find the database and delete the reserve book that user

reserve.

Functional Requirements

- System must able to show data on gridview after search.

- System must able to validate that the book can be borrow or not.

- System must able to validate user have permission to borrow or not.

- System must able to show the data on the gridview.

(36)

2. Admin User

2.1 View Report

Description of Feature

This feature allows the staff to view book comment and member expired report.

Stimulus / Response Sequences

Stimulus : Go to the report page. Choose which type of the report wanted to

show. Choose on Book comment.

Response : The Book comment tab show.

Stimulus : User chooses on the category wanted to see and click on submit

button..

Response : Website will bring user to another page show the report with the

criteria given.

Stimulus : Choose member expired.

Response : The Member expired tab show.

Stimulus : Choose on the date type wanted to show. Type is date, month and

year.

Response : Website will bring user to another page show the report with the

criteria given.

Functional Requirements

(37)

2.2 News Maintenance Description of Feature

This feature allows the staff to add, edit and delete news.

Stimulus / Response Sequences

Stimulus : Click on add news page.

Response : Website will bring to news page.

Stimulus : Key-in information in textbox to add news.

Response : Website will add in to the database and show it in the gridview.

Stimulus : Choose edit to edit the news and delete to delete the news in the

gridview.

Response : Website will update or delete into database due to which button is

click.

Functional Requirements

- Website must able to show the news.

(38)

Library

Management System

Member Info

2.2 Data Flow Diagram

(39)

Library Management System Chapter 2: Requirement Analysis

(40)
(41)

Library Management System Chapter 2: Requirement Analysis

37

2.2.3 Level 1DFD (Lower – Level Diagram)

1. Member Registration

(42)

3. Return book

(43)
(44)

2.3 Summary

In this chapter present about system objectives, system requirements and also Data Flow Diagram (DFD) for level 0 and level 1.

In this chapter, I have met problem of constructing of DFD diagram. It is because I and my group mate have already forgotten how to construct this diagram. We have no idea how to draw DFD diagram. In the help of the friend and also note that borrowed from our junior student. It reminds me back the construction of the DFD diagram.

After find the DFD diagram, the DFD has split to level 0 and level 1 DFD diagram. I could not understand why it split it to two different diagrams. I could not continue to draw but have to research on the diagram again. After research on internet, I finally can overcome this problem.

In this chapter, I have gain back the knowledge of DFD diagram. It also taught me a lesson about to keep everything that we have learnt. In my opinion, not everything that we can memorize but we need to have a backup so that when we need it we can refer back.

(45)
(46)

Library Management System Chapter 3: System Design

Chapter 3

(47)

3.1 System Design

At this chapter is about System design phase. GUI design, database design will be discuss in this chapter.

3.2 External Interface Requirements

3.1.1 User Interfaces

Library Management System website is used by the users and staff. It is very important that the website should designed standard and user friendly so that everyone who visit the website can use easily. An example, a button user to edit thing should use EDIT word but not add or delete or just a picture.

(48)
(49)
(50)
(51)
(52)
(53)
(54)
(55)
(56)
(57)
(58)
(59)
(60)
(61)
(62)
(63)
(64)
(65)
(66)
(67)
(68)
(69)
(70)

Hardware Interfaces

For Library Management System, the additional device for library is GSM modem or GSM phone. This device use to tell member when they borrow the book pass the due date SMS will remind them.

3.1.2 Software Interfaces

Library Management System requires user to install SQL Server 2008. SQL server 2008 is support for more function and datatype. For operating system, Library System requires Window XP or newer version.

3.1.3 Communication Interfaces

Library website is a web application. So, it required the internet connection. With a static line and fix ip address, the library only can host their own website at the server. So that everyone also can visit the website. HTTP helps to transferring data between web server and web client. Our library system will serves as web client and send the request to targeted web server. For the application, USB cable is use to connect to a GSM phone or GSM modem to send SMS.

(71)
(72)

3.3

Data Dictionary

Table Name: ActivityLog

Description : store all the activity done by user in the system

Fields Data Type Null/NotNull DefaultValue Rules

LogId int Not null -

-LogEmp nchar(10) Not null -

-LogTime datetime Not null -

-LogActivity varchar(MAX) Not null -

-Field Example Data

LogId(PK) 113

LogEmp M0001

LogTime 2011-02-16 16:35:07.000

LogActivity Information of PublisherID P0003 has been updated

Table Name: Admin

Description : store the information of user who used the library system Fields Data Type Null/Not

Null

Default

Value Rules

Admin_ID nvarchar(50) Not null -

-Admin_Name nvarchar(50) Not null -

-Admin_Level nvarchar(50) Not null - Format : 1,0

Password nvarchar(50) Not null -

-Admin_ic nvarchar(50) Not null -

-admin_contact nvarchar(50) Not null -

-admin_email nvarchar(50) Not null -

-admin_address nvarchar(MAX) Not null -

-Field Example Data

Admin_ID M0001

Admin_Name Tan Chaur Chuan

Admin_Level 1

Password 12341234

Admin_ic 880704-35-5263

admin_contact 04-3984851

admin_email [email protected]

(73)

Table Name: Book

Description : store the information of the books Fields Data Type Null/Not

Null

Default

Value Rules

ISBN nvarchar(50) Not null -

-BookTitle nvarchar(50) Not null -

-Author nvarchar(50) Not null -

-PublisherID nvarchar(50) Not null -

-Language nvarchar(50) Not null -

-Category nvarchar(50) Not null -

-Description nvarchar(MAX) Not null -

-BookCover nvarchar(MAX) Not null -

-Field Example Data

ISBN(PK) 9781587132049

BookTitle Handphone King

Author C.Y

PublisherID P0001

Language Chinese

Category Technology

Description A book which show the latest information of all brand handphone

BookCover Handphone.JPG

Table Name: BookComment

Description : to store the comment for particular book Fields Data Type Null/Not

Null

Default

Value Rules

CID Int Not null -

-ISBN Nvarchar(50) Not null -

-UserID Nvarchar(max) Not null -

-Comment Nvarchar(max) Not null -

-Field Example Data

CID 13

ISBN 1234567891234

UserID M0001

(74)

Table Name: BookCopy

Description : to store the quantities of books and the detail of each book Fields Data Type Null/Not

Null

Default

Value Rules

BarcodeID nvarchar(50) Not null -

-ISBN nvarchar(50) Not null -

-Status nvarchar(50) Not null - Format : L, A, N

PurchasePrice Money Not null -

-purchaseDate Datetime Not null -

-Field Example Data

barcodeID 978158713204901

ISBN 9781587132049

Status L

PurchasePrice 200.0000

PurchaseDate 2011-02-16 00:00:00.000

Table Name: News

Description : to post the latest news at web site’s main page Fields Data Type Null/Not

Null

Default

Value Rules

ID Int Not null -

-Date Date Not null -

-[content] Nvarchar(50) Not null -

-Field Example Data

ID 9781587132049

Date 2011-01-13

[content] The popular book ‘The Lord of the Ring’ is now available !!!

Table Name: Book Description

Description : to store the description of particular book

Fields Data Type Null/NotNull DefaultValue Rules

ISBN Nvarchar(50) Not null -

-Description Nvarchar(max) Not null -

-Field Example Data

ISBN 9781587132049

(75)

Table Name: LibraryDetail

Description : to store the information of the library Fields Data Type Null/Not

Null

Default

Value Rules

libno Char(10) Not null -

-Libname varchar(50) Not null -

-Libadd1 varchar(50) Not null -

-Libadd2 varchar(50) Not null -

-Libposcode Char(5) Not null -

-Libstate varchar(50) Not null -

-Libtown varchar(50) Not null -

-Libphone varchar(50) Not null -

-Libfax varchar(50) Not null -

-Libemail varchar(50) Not null - Format : [email protected]

Libweb varchar(50) Not null -

-Field Example Data

libno 001

Libname Chen Library

Libadd1 30, lintang perai 5,

Libadd2 Taman putang,

Libposcode 13506

Libstate Pulau Pinang

Libtown Butterworth

Libphone 04-3859451

Libfax 04-3225645

Libemail [email protected]

Libweb www.google.com

Table Name: Reservation

Description : to record the book reservation for the member

Fields Data Type Null/NotNull DefaultValue Rules

UserID Nvarchar(50) Not null -

-BarCodeId Nvarchar(50) Not null -

-DateReserve date Not null -

-Field Example Data

UserID M0001

BarCodeId 584961352652401

Table Name: LostBook

(76)

Fields Data Type Null/Not Null

Default

Value Rules

ID int Not null -

-Userid varchar(50) Not null -

-Barcodeid varchar(50) Not null -

-ISBN varchar(50) Not null -

-LostDate Date Not null -

-Field Example Data

ID 3

Userid M0002

Barcodeid 978158713204901

ISBN 9781587132049

LostDate 2011-02-16

Table Name: RetalInfo

Description : to keep the book transaction detail Fields Data Type Null/Not

Null

Default

Value Rules

userID nvarchar(50) Not null -

-BarCodeID nvarchar(50) Not null -

-DateReturned Datetime - -

-DateRented Datetime Not null -

-DateDue Datetime Not null -

-Total Fine money - -

-Field Example Data

userID M0003 BarCodeID 123456789123401 DateReturned 2011-03-02 00:00:00.000 DateRented 2010-09-09 00:00:00.000 DateDue 2010-10-10 00:00:00.000 Total Fine 200.0000

(77)

Table Name: Publisher

Description : to store the publisher so it is available when register book Fields Data Type Null/Not

Null

Default

Value Rules

PublisherId Nvarchar(50) Not null -

-PublisherName nvarchar(50) Not null -

-Field Example Data

PublisherId P0001

PublisherName Tan Khen Khen

Table Name: User

Description : to store the information of the member Fields Data Type Null/Not

Null

Default

Value Rules

UserID Char(10) Not null -

-Username varchar(50) Not null -

-Useraddress varchar(50) Not null -

-UserPhone varchar(50) Not null -

-UserIC Char(5) Not null -

-UserRegDate varchar(50) Not null -

-AvailableBook varchar(50) Not null -

-Userpass varchar(50) Not null -

-Userphoto varchar(50) Not null -

-Useremail varchar(50) Not null - Format : [email protected]

UserExpiredDate varchar(50) Not null -

-Field Example Data

UserID M001

Username Ooi Yee Neng

Useraddress 30 lintang talang 2, taman perai. 13600 Perai, Penang.

UserPhone 04-3568956 UserIC 880407-35-5266 UserRegDate 2011-02-16 00:00:00.000 AvailableBook 4 Userpass 12345678 Userphoto Tan_chen_khen.JPG Useremail [email protected] UserExpiredDate 2012-03-05 0:00:00.000

(78)

3.4

Summary

In this chapter discuss about normalization, Entity Relationship Diagram (ERD), interface design and also database design.

For the interface design, because it is website and it for member and librarian, the website must design user friendly so that every user can easily learn how to use the website in a short period of time. When I am designing this website, there are few problems occur. One of the problems is the alignment of the website. When I design at Visual studio 2008 the lay out should be find but when run it, the alignment is not correct. I have to readjust it. Second problem is the browser problem. Different browser may cause different interface when run. I faced internet explorer 7 problem. When run the website, the alignment is not correct compare to Mozilla Firefox and also Google Chrome when run. After research and also friend helps, I used script to control so that when it comes to different browser it will run the particular browser alignment.

Besides that, I met a big problem on normalization. Because of the database design has already designed, we have to normalize from 3rd to 1st normalization form. In this normalization, I found out that some of the table does not naming properly. Example Staff table normally for ID would be StaffID but we name it as ID. In this case, We could not know this ID is for which table but it actually is staff id. After discuss with my group mate, we change the naming of the database to overcome the problem.

In this chapter, a good interface design is important because it can convince the user to use the website. A complicated website will cause the user does not want to serve the website. Other than that, database design also important such as primary key and foreign key in the database. If these keys do not exist, then duplicate data will happen.

(79)

Library Management System Chapter 4: Programming

Chapter 4

(80)

4.1 Programming

This chapter will discuss about coding for the system. In the development, logic and coding skill is required. A good coding can enhance the efficiency of the system so that when other people wanted to implement the coding they can easily understand the code. Following would discuss the sample programming and description of the book.

4.2 Coding

4.3 Summary

In this chapter discuss about programming stage. It is all about coding and how to develop the website or system.

In this chapter, I have faced a few problems. One of the problems is sending a SMS. It is because I did not learn before. Sending a SMS require a baud rate, port and timeout. Before understanding these few things, I could not start to create the SMS module. Wasting a period of time to research and also help of my friend, I finally can develop this module. The second problem that I faced is comment module. For comment module, I have completed the comment module and it can be shown at bottom of the book description page. When I present at final testing, I realize I didn’t put the delete button and also found out by moderator. So I have to add one more button but the problem occur when add this problem. Because of using JAVA label to write HTML code inside, the delete button for JSP could not show out. After research, I still could not get the solution. Finally, with the help of my friend, he teaches me to use repeater and also HTML button so that it can be shown out dynamically. After teaches of my friend, I finally finish the comment module.

In this chapter, I have learnt some new coding that I did not learn before. This coding is useful because when I working outside I can reuse these coding. Not only this, I also learnt that when a thing develop, it develop by many method. Example: comment module. It can be create in different method such as by using repeater, or using loop and add in to a string in JAVA and many more.

(81)

Library Management System Chapter 5: Software Testing

Chapter 5

(82)

5.1 System Testing

This chapter will show the testing method of the system and website. This is to find the system bug so that when the user used the system it is bug free. So it must test properly before the system launch.

5.2 Summary

In this chapter discuss about system testing. System testing help to reveal the bug that may occur in the system or website. It is very important phase.

In this chapter, the problem that I face is the limitation of time. Because of we start this project late, we do not have enough time to test the system. With the help of my friend, we done the testing and also test plan.

I have learnt the important of this chapter. A test can make a system or website to reduce the bug happen. Programmer always develop the system in the logic way. So, many thing that programmer think that it will be no problem but when test by user there will be problem. Example: a user key in his phone number with alphabet but not numbers. So testing is important and it can be test more perfectly by user than programmer.

(83)

Library Management System Chapter 6: Conclusion

Chapter 6

(84)

6.1Conclusion

6.2Introduction

In this chapter which is final chapter, conclusion and evaluation will be shown on testing and analyzing process that perform previously. Strengths, weakness, future enhancement and also the seminar linkage of the Library Management System will be included. After that personal reflection also will be included at last.

6.3Linkage to seminar

In this final year project, I have choose GSM (Global System For Mobile Communication) as my seminar title. The reason I choose this title because I wanted to use GSM mobile technology to send SMS (Short Message Service). This mobile technology is the most suitable to use compare to other technology such as CDMA. During the research on the seminar, I found out that GSM has many advantages over than CDMA.

Major advantages I use GSM mobile technology for this time final year project is this mobile technology is worldwide technology. GSM mobile technology used by all over the world. With this advantage is actually win over all other mobile technology very much. So when we wanted to develop Library Management system to all over the world, it will not affected.

Other reason that I use GSM mobile technology one of them is, save cost. It is save cost because it is worldwide technology and the price is standard over the world. Compare to CDMA, GSM is cheaper. In this final year project, a public Library normally is a non profit organization, so this system is develop to let the client save more costs. In this objective, GSM actually achieve. Not only that, it also easy to transfer the data, GSM used SIM card to store the phone information such as profile, phone number and more. So if the client wanted to change phone number or move the phone number to another place, they will just remove the SIM card or replace it.

(85)

6.4Evaluation of Project Objectives

Objectives

Function / Module

Status

Allow user find book in the library.

Search Module Achieved

To implement SMS technology

SMS Module Achieved

Allow user to reserve via internet

Reservation Module Achieved

6.5Project Management Issues

At this project development, I have met many problems. At the very beginning, because of lack of time management, my group mate and I decided Library Management System as title in a very short time. After that, we found out that we are lack of knowledge about library. We force to research the process of the library such as transaction, fine, and more in order to develop this system. After a lot of research and refer to the reference, we only can start work on it.

Secondly, it comes to coding part problem. The biggest problem that I face is SMS module. I have totally no idea how to write coding by using GSM mobile technology to send a SMS. Many of my friends do not implement this module to their system. Although there are some of my friend implement this module but all of them also do not have the idea to create it. After the research with my friend and the comment from the internet, I finally able to create this module.

Although I created SMS module, but I borrowed my friend GSM modem. Because of the presentation in the same day, the GSM modem will be use by my friend. I could not afford to buy a GSM modem because I only use it for one time. After research from the internet and suggestion from my friend, I found out that a GSM phone with contain modem

(86)

function also allows to send SMS with the coding that created in the computer. At first, it does not work, while I connected my phone to my computer. The reason is the phone modem driver does not install in my computer so that I am unable to send SMS via my phone. In the researching of the internet, I finally found the driver in the internet and install into my computer and I work well by sending the SMS via my phone.

Lastly I met some problem in documentation. With the lack of time management, I could need to rush my document in short time. Besides that, the guide line given also has to follow correctly. Especially the reference part because it need to use Harvard referencing.

6.6Evaluation of Projects Strengths and Weaknesses

Strengths

 System response fast enough when the users perform some action.

 Interface is user friendly and easy to use.

 Allow to keep track member expire date

 Allow user to instantly change their profile via internet

 Allow to comment the book which is good or bad.

 System will auto send SMS to all user when they borrow the book over the due

date.

 Allow user reserve book online.

 Allow user ask question via email

 Member allow to see history of borrowed book

 Member allow to see current book borrowed

(87)

Weakness

 User does not allow borrow book directly from the website.

 The website does not support older version of the web browser such as IE 6.

 The recommended book will still recommend users via category. When the

book borrowed by the member before it will still recommended the member.

 Does not have security checking. Any guess may use FAQ page to spam email

to user’s email.

 Does not use any instant update function such as ajax.

 Does not have rating on the book.

6.7 Suggestion for Future Enhancement

In the future, there are few things there might be improve. First, is to enhance the browser compatibility. Users may use different platform and also different browser to visit the website. Every book may be having link to a worldwide page for example people on facebook. So, users may know the book well and also rating and comment of the book.

Second, there may have much more function such as borrow book online or delivery. In future, there a function like delivery exists in library system So users can stay at home order the book and wait for the delivery of the book. It may have charge of each book delivery. Such as RM3.00 per book.

Third, SMS change to MMS, SMS only allow send text only but MMS can send multimedia such as pictures, music, text and more. When the book is over the due date and have to remind the users, They can send the remind message with pictures and also voice.

Lastly, at the validation part, AJAX technology implement so that it can be instantly checking but not after a button press only checking. It save the time of the users when there is some false information has been key-in.

(88)

6.8Personal Reflection

In this final year project, I have learned a lot of thing. I have gain a lot of knowledge and also regain back what I have forgotten knowledge. When the problem occur, we have to research on the solution. On the researching stage, I have learned a lot.

When I am developing the website, the website always have post back problem. When we perform a button event such as click, the website will reload again. It make many problems. By the helping of my friend’s explanation and the research of the internet, I slowly understand how a button click event performs. A simple click looks simple but sometimes it is occur some unknown problem such as when we add a book in to a list view but after click add the list view does not show the book that has been added just now. After research only know that click event will run only after page load. When the page load the data already bind into the list view and it only add to the database. So the data will not show out. By solving this problem, we have to bind the data into the list view again after click event perform.

Other than that, I also learn about SQL query. In this development, my SQL query skill is improved because many thing I use SQL query to generate more than the coding. Example is the recommended book function which link many database to get the recommend book for that particular person. In coding part, I will just need to put on the database command to run the query and I can get all the data.

I have also recall back the knowledge that I have lost which is Data Flow Diagram (DFD), Entity-Relationship Diagram (ERD) and normalization. I have to refer back the note from diploma in order to do ERD,DFD and normalization.

(89)

Lastly, I found out that teamwork is very important to a team. A team will need good communication with teammate. In this project, I do website and my teammate do system application. We share database together. We discuss to each other so that the database design can use by both of us. When there are some changes of the database, we will inform to each other so that there will no error when we do our part. If a team have a bad communication, then when the system have changes and the teammate does not inform to each other. When the system combine many error will be occur and it wasted a lot of time.

(90)

Library Management System Chapter 7: Reference

Chapter 7

(91)

7.

References

 Code Project. 2003. Effective Email Address Validation. Viewed on 11 Feb

2011. Available From <http://www.codeproject.com/KB/validation/Valid_

Email_ Addresses.aspx>

 Nokia.2010.Ovi By Nokia. Viewed on 12 Feb 2011. Available From <

http://www.nokia.com.my/services-and-apps>

 David Margrave. GSM Security and Encryption. View On 12 Feb 2011.

Available From

<http://www.hackcanada.com/blackcrawl/cell/gsm/gsm-secur/gsm-secur.html>

 Gyula Rabai. Code Project. 2007. How to send SMS Message from JAVA using

an SQL database. View On 12 Feb 2011. Available From <

http://www.codeproject.com/KB/database/SMS_message_from_SQL.aspx>

 Art Branch Inc. 2004. SQL Tutorial. View on 13 March 2011. Available From

< http://www.sql-tutorial.net/>

 James Holan. Sitepoint. 2011. Using the JSP repeater control. View On 6 Feb

2011. Available From < http://articles.sitepoint.com/article/asp-net-

repeater-control>

 Wikipedia. 2010. System Development Life Cycle. Viewed on 7 Feb 2011.

Available from

<http://en.wikipedia.org/wiki/Systems_Development_Life_Cycle>

 ConnectionString.com. 2011. Connection String For SQL Server. Viewed on 1

(92)

Library Management System Appendices

100

Appendices

Setup Project Environment

In order to host the website, users must setup some folder so that the website can work perfectly. User must create a folder in the C drive and name the folder pictures. Example C:\Pictures. User must put all the pictures into this folder for application and for website, user must copy all the picture into the website folder. That folder uses to host the website and inside got Pictures folder. Copy all the pictures from the C drive folder to that folder.

(93)

Project Specification

A. Company Background

This system does not related to any company. We created the system which suits small size library. Most of the function we refer to other library system.

B. Project Objectives

The purpose we creating this project are to let those small library have an electronic library management system. A lot small size library was using paper-based management system. But followed by the increase of visitors and member, librarian was suffered because there are a lot of records. When need to search for particular member record, the librarian need a lot of time.

In addition, they are suffered from a lot paper-based problem such as lost of member’s record. Some record was missing because they failed to take good care of it. For example, the librarians forget to put back the record into cupboard when they are busy.

Since my last visit to that library, I found that they need a computer management system so I think of this idea to developing a system for small size library. This is to avoid some paper-based problem such as lost of record and etc.

With the library system, librarians are able to record all the new books and new transactions. We implement the use of bar code in this project so that librarian can process the book transaction faster when a lot of members want to make a transaction. They can save a lot of time without writing the book id.

(94)
(95)

The project scope is to show the system and website feature and function that we are going to develop. In this system, we have separated into online and offline. In our group, there is 2 member which are my group mate , Tan Chaur Chuan and me , Koh Yee Keat. So in here I in charge of online side and the other side which is offline will be in charge by my group mate , Tan Chaur Chuan.

1. Security Login Module

 We provide Login in our website so as a normal member that has already

registered in our library can log in to the website.

 We have also provide password recovery for the member. If the member

forgot his/her own password they can use the password recovery function by providing their secret question and answer it with their correct answer and a new temporary password will be send to their email.

2. Search Module

 There is several search function, search book location, search book, search

book availability.

 Book location Searching – Is to search the book is locate at where for example the book is at which value. This function mainly is provide for normal member which in the library which could not find the book and we will provide a few of the computer to let the user to search the book there so that they could find the book location.

 Book Searching – Is to search the particular book. The user may need to

know what book that our library have so they can use this function to search the book we have. And we also provide search by categories, name, author, publisher, ISBN, and publish year.

 Book availability searching – Is to find the book currently is available to

(96)

3. Reservation Module

 This module allow a member to reserve book by online. In online they need

to login their id and they can reserve a book by searching the book. If the book is less then 3 unit the book is not allow to reserve by anyone but if there is more then 3 then the book is allow to reserve. For offline mode there appear that which book is currently wanted by the member and the librarian will take the book for the member. So if the before take and the book is borrow by other people the reservation will be cancel.

4. Book recommendation module

 This module is to recommend some book for the normal member. We know

that some of the member like to cook and he/she always borrow some cooking category book only.

 So when there are some new arrival book and the category is cooking we

may recommended to the member whether the member is interest in this book or not.

5. Check history/current transaction module

 For this module, we allow the user to login to see currently or pass transaction.

 Which mean they can know currently what book he/she are renting and also

he/she has already rent before.

6. Command Module

 In this module, the user allow to commend the book.

 Allow other user to such as guest to view the command and they might

References

Related documents