Library Management System Final
Library Management System Final
A PROJECT REPORT
Submitted to
Submitted by
Nabin Bhatta
Sangita Saud
Bhadra 2078
Department of Humanities
Supervisor’s Recommendation
I hereby recommend that this project prepared under my supervision by Tek bahadur
saud,Nabin Bhatta and sangita thapa entitled Library Management System in partial
fulfillment of the requirements for the degree of Bachelor of Computer Application is
recommended for the final evaluation.
……………………………..
Lalit pant
PREFACE
This project has specially been prepared for the partial fulfillment of practical
examination jointly held by Tribhuvan University, Nepal & Department of Bachelor in
computer Application for TU Board Examination 2021 AD (2077 BS). This computer
project is a result of my experience, knowledge, dedication, consultation with computer
science experts and teachers, and references to quality books and websites.
The theory without practical is lame and practical without theory is blind. So, I have
prepared this project in simple way including all the necessary features accomplished
by me to show my prosperity on basic knowledge of Computer Science. This project
includes topics related to Microsoft Office Package & Webpage Designing. As there is a
quite popular saying, “a picture speaks more than a word”, I have tried my best to express
theories using images and screenshots. This project is totally based upon Windows 10 OS
& Microsoft Office Package2007.
I have tried my best to include the quality content, and avoid all kinds of errors as far as
possible.
ACKNOWLEGEMENT
This project is an outcome of long inspirations and great support from many people either
directly or indirectly. I’m always grateful to them for cooperating with me in making his
report. As every organized report requires a lot of hard work and seeks a lot of helping
hands. Up to the completion of this project report I was not so far from this strategy or rule.
First of all, I sincerely thank my subject teacher Mr. Lalit pant for his proper guidance and
moderation during my classes. Obviously, this project would not have been possible without
support and encouragement from Dhirendra malla, and all my classmates for their
continuous support and help on the completion of my project work. I wish to extend my
deepest gratitude to every individual who supported me either directly or indirectly and
helped me to complete my project report successfully.
Everything I’ve done will be worthless if I forget my parents and family members; I am
very thankful for their support, love, inspiration, cooperation and care since the day of my
birth and for valuable advice which I received from them time to time.
Last but not the least; I would like to thank Doti multiple Campus for providing project and
library facilities without which this project couldn’t be prepared on the basis of practical
classes.
Abstract
This report describes the project development of Library Management System that
was developed to manage the daily book transaction and manage the member, books
record more efficiency. It can improve management of the book property in the
library.
This Library Management System is mainly use by librarian and library admin. This
methodology I used to develop this system is waterfall model. Thus, the report’s
chapter was included system planning, requirement analysis, system design,
programming, system testing, and evaluation of the project.. Compare to the existing
library system, this system has some strength and weaknesses compare to others such
as lack of smart card technology. In the future, we can enhance the system with smart
card technology to make it more perfect.
• Figure of use case diagram for the Library Management System on page 20
1.1Introduction .............................................................................................................. - 1 -
4.1.5 Architecture..................................................................................................... - 22 -
4.2. Testing............................................................................................................... - 25 -
A Library Management System is software built to handle the primary housekeeping functions of
a library. Libraries rely on Library Management Systems to manage asset collections as well as
relationships with their members. Library Management Systems help libraries keep track of the
books and their checkouts, as well as members’ subscriptions and profiles.
Library Management Systems also involve maintaining the database for entering new books and
recording books that have been borrowed with their respective due date. The term has acquired a
secondary meaning: "a collection of useful material for common use." This sense is used in fields
such as computer science, mathematics, statistics, electronics and biology. They add that, a
library is organized for use and maintained by a public body, an institution, a corporation, or a
private individual. Public and institutional collections and services may be intended for use by
people who choose not to or cannot afford to purchase an extensive collection themselves, who
need material.
In addition to providing materials, libraries also provide the services of librarians who are
experts at finding and organizing information and at interpreting information needs.
According Robertson (2007), libraries often provide a place of silence for studying, and they also
often offer common areas to accommodate for group study and collaboration. Libraries often
provide public facilities to access to their electronic resources and the Internet. Modern libraries
are increasingly being redefined as places to get unrestricted access to information in many
formats and from many sources. They are extending services beyond the physical walls of a
building, by providing material accessible by electronic means, and by providing the assistance
of librarians in navigating and analyzing tremendous amounts of information with a variety of
digital tools.
-1-
1.2 Problem Statement
In many institution of learning, library management has become a problem due to the continued
use of manually supported system. Doti Multiple Campus is among those affected by the above
problem due to the increased number of students. The current system makes it hard to serve
students effectively. This is seen when students queue for not less than 10 minutes to borrow a
book from a librarian who has got to register each student and the book borrowed manually
hence wasting a lot of time. It is this perceived inefficiency and its associated high cost of labor
in hiring several library assistants that rendered this study important.
Research question
1 What are the weaknesses of a Manual Library Management System?
2 What should an Electronic Library Management System (ELMS) do?
3 Which Library Management System should be developed?
1.3 Objectives
The main objective was to develop an Electronic Library Management System, with a search
functionality to facilitate the search and management of library resources.
The study was carried out at Kampala International University Dar salaam Campus to identify
requirements of an Electronic Library Management System (ELMS). Respondents included
librarians and students. Data sources were respondents, books, and internet.
-2-
Chapter 2: Background Study and Literature Review
The word library is derived from the Latin word “Liber” bearing the meaning “a book” and
French word” LIBRAIRE” bearing the meaning “book seller shop; the home of book” in
Sanskrit (Khanna, 1994, p. 1). In the ancient period library was presumed just as a store house of
the books, only aim of which was to preserve the rare books. However in the present era, the
aims and objectives of libraries are going to cover wider scope and are being adjusted in
accordance to necessity also. According to Ranganathan, a library " a public institution or
establishment charged with the care of a collection of books, the duty of making them accessible
to those who require the use of them and the task of converting every person in its neighborhood
into a habitual library goer and reader of books"( Krishan, 1991, p 3). Thus a library is regarded
as a public institution, which is also expected to convert the potential readers into actual readers.
This is the concept of a modern library. There are several types of libraries existing in the society
to serve the needs of the society. Some of the most popular types of libraries are: A Public
libraries -National libraries -State libraries - Local libraries B Special libraries -By User -By
Material -By Subject C Academic libraries -School libraries 2 -College libraries -University
libraries A Public Libraries It is a ‘library’ which serve the population of a community or free of
charge or for a nominal fee. It refers to a library which is approved wholly or partly from public
funds, and use which is not restricted to any class of persons in the community and is freely
available to all. The public library is often called the ‘People’s University’ for its universal
character. The public library is an institution for the people, of the people, by the people. It is –
for all, without the distinction of caste, creed, class, color or sex. According to UNESCO’s
‘Terminology of Documentation’ public library is “a library which serves the population of a
community or region free of charge or for a nominal fee.” (Krishan, 1991, p. 73).). According
Dr. S.R. Ranganathan compares the public library with academic library and says, “Academic
libraries can serve only a small fraction of the community. The rest must depend for their life-
long self-education on a second species of libraries the national network- the public library. It
-3-
has the advantage over academic libraries in that the benefit it can bestow is global; the public
library is a source not merely of information but also of recreation and inspiration.” He further
explains the term public library as,” The word ‘public’ denotes, in the first place that such
libraries are maintained at public expense- out of local rates and state taxes. Since their benefits
accrue to the community as a whole, the community supports them. It also denotes that their
service is free to the public: they levy no subscriptions or fees.” (Dilli, K. T., 1997, p. 13
There are several approaches that have been researched to create title recommendations and topic
filtering for users. I will discuss two major approaches in this section. The first approach is
commonly referred to as content-based or collaborative filtering. In this approach the user must
have a profile and actively participate in the shaping of her interests profile. This method is a
long-form approach and requires continual maintenance of interest preferences to remain
relevant as the user’s interests McGowan – Term Project Final 4 evolve. If the user does not
maintain the interest preferences, the functionality performance for title recommendation is low.
“The main challenges of content-based filtering approaches are the identification of item features
from content or description and the development of user interest profiles that distinguish
preferred items or disliked ones.” (San-Yih et al, p. 262) in 2012. Furthermore, the user’s
interests can have characteristics that ebb and flow. Some interests are permanent, and some are
short-term respective to her current studies or personal life. The permanence of content-based or
collaborative filtering does not allow for a malleability or adaptability of evolving user interests.
The second approach is referred to as the association rule. In this approach, the user’s borrowing
history is mined for data that determines relationships or topic clusters to generate title
recommendations. “Association rule Mining is a popular data mining method and well
researched method for discovering interesting relationship between variables in large databases.”
(Jomsri, p. 131) 1990. While this method works to find correlations between subjects and titles
that may not be an obvious connection, or a conscious subject search performed by the user, it
still fails to recommend titles that are relevant to the user’s current activity. It requires accessing
-4-
a log of user borrowing history to recommend titles, which requires the user to maintain an
active profile within the digital library. The approaches outlined above both fail to recommend
titles that are relevant to a user’s social activity that occurs outside of the digital library. Active
Internet users are socializing and seeking information regularly outside of the framework of a
traditional digital library. The proposed design and integration methods outlined below are
suggestions for taking the first step to bridge social activity with formal information McGowan –
Term Project Final 5 seeking to create Targeted Information that is relevant to the present tense
Internet-based conversations, thoughts, and activities of a user.
According to Stephen, Maeve & Philips (2007), in a traditional sense, a Library is a large
collection of books, and can refer to the place in which the collection is housed. Today, the term
can refer to any collection, including digital sources, resources, and services. The collections can
be of print, audio, and visual materials in numerous formats, including maps, prints, and
documents, microform, CDs, cassettes, videotapes, DVDs, video games, e-books, audio books
and many other electronic resources. The places where this material is stored can range from
public libraries, subscription libraries, private libraries, and can also be in digital form, stored on
computers or accessible over the internet. The term has acquired a secondary meaning: "a
collection of useful material for common use." This sense is used in fields such as computer
science, mathematics, statistics, electronics and biology. They add that, a library is organized for
use and maintained by a public body, an institution, a corporation, or a private individual. Public
and institutional collections and services may be intended for use by people who choose not to or
cannot afford to purchase an extensive collection themselves, who need material.
In addition to providing materials, libraries also provide the services of librarians who are
experts at finding and organizing information and at interpreting information needs.
According Robertson (2007), libraries often provide a place of silence for studying, and they also
often offer common areas to accommodate for group study and collaboration. Libraries often
provide public facilities to access to their electronic resources and the Internet.
-5-
Chapter 3: System Analysis and Design
The design and analysis of Library Management System is a project which aims in
developing a computerized system to maintain all the daily work of library. All
the library data is computerized and this system is used to track details of books like
issues and return dates.
A library database needs to store information pertaining to its users (or customers), its workers,
the physical locations of its branches, and the media stored in those locations. We have decided
to limit the media to two types: books and videos. The library must keep track of the status of
each media item: its location, status, descriptive attributes, and cost for losses and late returns.
Books will be identified by their ISBN, and movies by their title and year. In order to allow
multiple copies of the same book or video, each media item will have a unique ID number.
Customers will provide their name, address, phone number, and date of birth when signing up for
a library card. They will then be assigned a unique user name and ID number, plus a temporary
password that will have to be changed. Checkout operations will require a library card, as will
requests to put media on hold. Each library card will have its own fines, but active fines on any
of a customer's cards will prevent the customer from using the library's services. The library will
have branches in various physical locations. Branches will be identified by name, and each
branch will have an address and a phone number associated with it. Additionally, a library
branch will store media and have employees. Employees will work at a specific branch of the
library. They receive a paycheck, but they can also have library cards; therefore, the same
information that is collected about customers should be collected about employees. Functions for
customers: Receive payments from customers and update the customers' fines ● View all
customer information except passwords.
-6-
3.3 Functional Requirements
Usability Requirement
The system shall allow the users to access the system from the Internet using HTML or its
derivative technologies like XML/CSS. The system uses a web browser as an interface. Since all
users are familiar with the general usage of browsers, no special training is required. The system
is user friendly and online help makes using the system easy and also
The product will support multiple languages such as Sinhala, Tamil and English.
Availability Requirement
The system is available 100% for the user and is used 24 hrs a day and 365 days a year. The
system shall be operational 24 hours a day and 7 days a week.
Efficiency Requirement
Mean Time to Repair (MTTR) - Even if the system fails, the system will be recovered back up
within an hour or less.
Accuracy
The system should accurately provide real time information taking into consideration various
concurrency issues.
Performance Requirement
The information is refreshed at regular intervals depending upon whether some updates have
occurred or not. The system shall respond to the member in not less than two seconds from the
-7-
time of the request submittal. The system shall be allowed to take more time when doing large
processing jobs.
Responses to view information shall take no longer than 5 seconds to appear on the screen.
Reliability Requirement
The system has to be 100% reliable due to the importance of data and the damages that can
because by incorrect or incomplete data. The system will run 7 days a week, 24 hours a day.
Changes (new patron’s addition, password changes, database changes) must be verified once
per day at least. The system should provide automatically notification to patrons by about item’s
overdue, reservation results, availability of reserved item and etc.
-8-
Non Functional Requirements
3.4.1 User login
Description of feature this feature used by the user to login into system. They are required to
enter user id and password before they are allowed to enter the system .The user id and password
will be verified and if invalid id is there user is allowed to not enter the system. Functional
requirements -user id is provided when they register -The system must only allow user with valid
id and password to enter the system -The system performs authorization process which decides
what user level can acers to. -The user must be able to logout after they finished using system.
This feature can be performed by all users to register new user to create account. Functional
requirements -System must be able to verify information -System must be able to delete
information if information is wrong
When the goods purchased on credit are returned to the supplier, these are recorded in the Purchase
return book. Sometimes, goods purchased can be defective or of low quality, etc. and hence, need to
be returned. A separate book is maintained for the purchase return and these are not deducted from
the purchases in the Purchase book. Also, Purchase return is recorded at the net amount on the
invoice.
This feature is must important feature of this Library Management System all books are show
-9-
3.4.6 New Books
This feature can be performed by all mew books views which is register here. Functional
requirements -System must be show all books information
This feature show only old books views which is register here. Functional requirements -System
must be show old books information
3.4.7 Lost Books
Lost books are these books which lost from the library which record still there was not a lot of
precedence for its unique structure. Lindale and Cues found inspiration in the making of the
show in books as opposed
3.4.8 Damage books
Borrowers are expected to take care when handling the materials they are borrowing, and
are responsible for any damage that occurs during their loan of the material. If library
material is damaged the borrower will be fined a fee appropriate to the damage. There are
different types of damage we look for in our collection.
3.4.9 subject for replacement
Replacement is the replace the subject one location to another location in library management
system
3.5.1 Members
The term 'Member' denotes a person who use the library. The members or the user are the
real member of a system. They are want service from library.
- 10 -
Enter the email addresses of the people to invite. (Optional) To add a welcome message
to the email notification for new members, enter a message. Click Add members.
3.5.3Archive
An archive is either the papers of some particular person or the papers or records of a
particular organization. ... The words “natural” and “organic” generally come into play here,
the idea being that the archive is a collection of items and records that exist as a whole.
This feature is found in book maintenance part. We can search book based on book id, book
name, publication or by author name it is the advance feature of search option. Where we can
search any book by book title and author name,
3.6.1 Economic
Economic feasibility of the proposed system is studied from different aspects and a solution that
is economically most feasible is finalized and implemented. While developing this system, the
cost factor is taken into account. Since system does not require any sophisticated hardware and
software, the cost of implementing this software will be very low. The present system is manual
all the work is done in papers and ink by hand so it is much costly and difficult to use and to
operate and it is also time consuming.
3.6.2 Technical
This project is technically feasible for new as well as existing E-Library Management System.
This system involves minimum technical infrastructure. It does not require more power full
computer and other equipment’s so it helps to setup the system in minimum cost. It can perform
- 11 -
the multiple task so that more students are not required to perform different task. So it helps to
reduce the operation cost by decreasing the number of staff.
3.6.3 Operational
This application software is very easy to operate. Users with basic knowledge of computer will
be able to operate the application. Moreover, the application has a help menu to assist the user in
case of any doubt. Operational feasibility study is a must, because it ensures that the
implementation of the software as an application should be high. People are inherently resistant
to change and computer has been known to facilitate changes. An estimate should be made of
how strong the user is likely to move towards the development of computerized system. There
are various levels of users in order to ensure proper authentication and authorization and security
of sensitive data of the organization.
The Library Management System database keeps track of readers with the following
considerations –
• The system keeps track of the staff with a single point authentication system comprising
login Id and password.
• Staff maintains the book catalog with its ISBN, Book title, price(in INR), category(novel,
general, story), edition, author Number and details.
• A publisher has publisher Id, Year when the book was published, and name of the book.
- 12 -
• Readers are registered with their user_id, email, name (first name, last name), Phone no
This Library ER diagram illustrates key information about the Library, including entities such
as staff, readers, books, publishers, reports, and authentication system. It allows for
understanding the relationships between entities.
- 13 -
3.6.7 Process Modelling (DFD)
Data Flow Diagram (DFD) depicts the flow of information and the transformation applied
when a data moves in and out from a system. The overall system is represented and described
using input, processing and output in the DFD. The inputs can be:
- 14 -
3.6.8 System Design
Database schema design is a strategy for constructing a framework for data management. Just
like in architecture, a solid database needs to have a blueprint to keep the project on track.
A database schema design is like a blueprint for massive amounts of data. The schema is a
skeleton structure that represents the logical view of the database as a whole. By defining
categories of data and creating relationships between those categories, database schema design
makes data much easier to consume and interpret. This article will offer an overview of how
- 15 -
database schema design works, as well as examples and best practices to help you optimize your
databases.
3.7.2 UI Interface
System design input design. Input design is the process of converting user oriented input to a
computer based format. Buy Library Management System html website templates from 14.
- 16 -
Library system we took advantage of the special relationships found in our design and were able
to condense the information to 13 tables. This page contains information of Library Management
System database design. This new design is a database that combines some entities and
relationships into common tables.
All created by our global community of independent web designers and developers. The goal of
the design process is to produce a module or representation of a system which can be used later
to build that system. Get 12 Library Management System html website templates on theme
forest.
The next step was to create the physical database and input some sample data. In order to turn
the relational design into a database
A logical DFD focuses on the business and business activities, while a physical DFD looks at
how a system is implemented. ... It provides a solid basis for the physical DFD, which depicts
how the data system will work, such as the hardware, software, paper files and people involved.
- 17 -
Chapter 4: Implementation and Testing
Use case tools referred as a Behavior model or diagram. It simply describes and displays the
relation or interaction between the users or customers and providers of application service or
the system. It describes different actions that a system performs in collaboration to achieve
something with one or more users of the system. Use case diagram is used a lot nowadays to
manage the system.
- 18 -
Here, we will understand the designing use case diagram for the Library Management System.
Some scenarios of the system are as follows:
1. User who registers himself as a new user initially is regarded as staff or student for the
library system.
• For the user to get registered as a new user, registration forms are available that is needed
to be fulfilled by the user.
• After registration, a library card is issued to the user by the librarian. On the library card,
an ID is assigned to cardholder or user.
2. After getting the library card, a new book is requested by the user as per there requirement.
3. After, requesting, the desired book or the requested book is reserved by the user that means
no other user can request for that book.
CSS- Cascading Style Sheets (CSS) is a style sheet language used ford escribing the look and
formatting of a document written in a markup language. While most often used to style web
pages and interfaces written in HTML and XHTML, the language can be applied to any kind of
XML document, including plain XML, SVG and XUL. CSS is a cornerstone specification of the
web and almost all web pages use CSS style sheets to describe their presentation.CSS is designed
primarily to enable the separation of document content from document presentation, including
elements such as the layout, colors, and fonts. This separation can improve content accessibility,
provide more flexibility and control in the specification. of presentation characteristics, enable
- 19 -
multiple pages to share formatting, and reduce complexity and repetition in the structural content
(such as by allowing for table less web design).CSS can also allow the same markup page to be
presented in different styles for different rendering methods, such as on-screen, in print, by voice
(when 14 read out by a speech-based browser or screen reader) and on Braille-based, tactile
devices. It can also be used to allow the web page to display differently depending on the screen
size or device on which it is being viewed.
PHP- PHP is a server-side scripting language designed for web development but also used as a
general-purpose programming language. PHP is now installed on more than 244 million websites
and 2.1 million web servers. Originally created by Rasmus Larders in 1995, the reference
implementation of PHP is now produced by The PHP Group. While PHP originally stood for
Personal Home Page, it now stands for PHP: Hypertext Preprocessor, a recursive
backronym.PHP code is interpreted by a web server with a PHP processor module, which
generates the resulting web page: PHP commands can be embedded directly into an HTML
source document rather than calling an external file to process data. It has also evolved to include
a command-line interface capability and can be used in standalone graphical applications. PHP is
free software released under the PHP License. PHP can be deployed on most web servers and
also as a standalone shell on almost every operating system and platform, free of charge.
- 20 -
4.1.4 BACK END- The back end is designed using mysql which is used to design the
databases ¬ MYSQL- MySQL ("My S-Q-L", officially, but also called "My Sequel") is (as of
July 2013) the world's second most widely used open-source relational database management
system (RDBMS). It is named after co-founder Michael Widenius daughter, My. The SQL
phrase stands for Structured Query Language. The MySQL development project has made its
source code available under the terms of the GNU General Public License, as well as under a
variety of proprietary agreements. MySQL was owned and sponsored by a single forprofit firm,
the Swedish company MySQL AB, now owned by Oracle Corporation .MySQL is a popular
choice of database for use in web applications, and is a central component of the widely used
LAMP open source web application software stack (and other 'AMP' stacks). LAMP is an
acronym for "Linux, Apache, MySQL, Perl/PHP/Python." Free-software-open source projects
that require a full-featured database management system often use MySQL. For commercial use,
several paid editions are available, and offer additional functionality. Applications which use
MySQL databases
- 21 -
4.1.5 Architecture
Maintain Records
- 22 -
Add New records
School Database
Fig-school database use case diagram
Select Student
Takes Interview
Give admission
Collection of fees
- 23 -
4.3 Activity diagram
- 24 -
4.2. Testing
Unit testing is undertaken when a module has been created and successfully reviewed .In order to
test a single module we need to provide a complete environment i.e. besides the module we
would require • The procedures belonging to other modules that the module under test calls •
Non local data structures that module accesses • A procedure to call the functions of the module
under test with appropriate parameters Unit testing was done on each and every module that is
described under module description
Unit testing is undertaken when a module has been created and successfully reviewed .In order to
test a single module we need to provide a complete environment i.e. besides the module we
would require •
The procedures belonging to other modules that the module under test calls
• A procedure to call the functions of the module under test with appropriate parameters Unit
testing was done on each and every module that is described under module description of chapter
4 1. Test For the admin module
• Testing admin login form-This form is used for log in of administrator of the system. In this we
enter the username and password if both are correct administration page will open otherwise if
any of data is wrong it will get redirected back to the login page and again ask for username and
password
• Student account addition- In this section the admin can verify student details from student
academic info and then only add student details to main library database it contains add and
- 25 -
delete buttons if user click add button data will be added to student database and if he clicks
delete button the student data will be deleted 37
• Book Addition- Admin can enter details of book and can add the details to the main book table
also he can view the books requests. 2. Test for Student login module
• Test for login Form-This form is used for log in of Student .In this we enter thelibraryid,
username and password if all these are correct student login page will open otherwise if any of
data is wrong it will get redirected back to the login page and again ask for library, username and
password.
• Test for account creation- This form is used for new account creation when student does not fill
the form completely it asks again to fill the whole form when he fill the form fully it gets
redirected to page which show waiting for conformation message as his data will be only added
by administrator after verification.
System test cases cover all the scenarios & use cases and also it covers functional, non-
functional, user interface, security-related test cases. The test cases are written in the same way
as they are written for functional testing.
- 26 -
4.2.4 System Test Cases
- 27 -
4.2.5 Types of System Testing
ST is called a superset of all types of testing as all the major types of testing are covered in it.
Although a focus on types of testing may vary on the basis of product, organization processes,
timeline, and requirements.
Functionality Testing: To make sure that functionality of the product is working as per the
requirements defined, within the capabilities of the system.
Recoverability Testing: To make sure how well the system recovers from various input errors
and other failure situations.
Interoperability Testing: To make sure whether the system can operate well with third-party
products or not.
Performance Testing: To make sure the system’s performance under the various condition, in
terms of performance characteristics.
Scalability Testing: To make sure the system’s scaling abilities in various terms like user
scaling, geographic scaling, and resource scaling.
Reliability Testing: To make sure the system can be operated for a longer duration without
developing failures.
Regression Testing: To make sure the system’s stability as it passes through an integration of
different subsystems and maintenance tasks.
Documentation Testing: To make sure that the system’s user guide and other help topics
documents are correct and usable.
Security Testing: To make sure that the system does not allow unauthorized access to data and
resources.
Usability Testing: To make sure that the system is easy to use, learn and operate.
- 28 -
Graphical User Interface Testing (GUI):
GUI testing is done to verify if the GUI of a system works as expected or not. GUI is basically
what is visible to a user while he uses the application. GUI testing involves testing buttons,
icons, checkboxes, List box, Textbox, menus, toolbars, dialog boxes, etc.
Compatibility Testing:
Compatibility testing is done to ensure that the developed product is compatible with different
browsers, Hardware Platforms, Operating System and databases as per the requirement
document.
Exception Handling:
Exception Handling Testing is performed to verify that even if an unexpected error occurs in the
product, it should show the correct error message and does not let the application stop. It handles
the exception in a way that the error is shown meanwhile the product recovers and allows the
system to process the incorrect transaction.
Volume Testing:
Volume Testing is a type of non-functional testing wherein testing is done using a huge amount
of data. For Example, the Volume of data is increased in the database to verify the system
performance.
Stress Testing:
Stress Testing is done by increasing the number of users (at the same time) on an application to
an extent that the application breaks down. This is done to verify the point at which the
application will break down.
Sanity Testing:
Sanity Testing is performed when the build is released with a change in the code or functionality
or if any bug has been fixed. It verifies that the changes done have not affected the code and no
other issue has occurred because of that and the system works as previously.
If in case any issue occurs, then the build is not accepted for further testing.
Basically, thorough testing is not done for the build in order to save time & cost as it rejects the
build for an issue found. Sanity testing is done for the change done or for the fixed issue and not
for the complete system.
Smoke Testing:
Smoke Testing is a testing that is performed on the build to verify if the build is further testable
or not. It verifies that the build is stable to test and all the critical functionalities are working fine.
Smoke testing is done for the complete system i.e. end to end testing is done.
Exploratory Testing:
Exploratory Testing as the name itself suggests it is all about exploring the application. No
scripted testing is performed in exploratory testing. Test cases are written along with the testing.
It focuses more on execution than planning.
- 29 -
Tester has the freedom to test on his own using his intuition, experience, and intellect. A tester
can choose any feature to test first i.e. randomly he can pick the feature to test, unlike the other
techniques where the structural way is used to perform testing.
Adhoc Testing:
Adhoc Testing is informal testing where no documentation or planning is done to test the
application. Tester tests the application without any test cases. The aim of a tester is to break the
application. The tester uses his experience, guess and intuition to find the critical issues in the
application.
Installation Testing:
Installation Testing is to verify if the software gets installed without any issues.
This is the most important part of testing as the installation of the software is the very first
interaction between the user and the product. The type of installation testing depends on various
factors like operating system, Platform, distribution of software, etc.
- 30 -
Chapter 5: Conclusion and Future Recommendations
5.1 Lesson Learnt / Outcome
Library is committed to supporting student learning through its instruction program. There are
many ways students learn about information and the research process at the library. They may
have an interaction with a reference librarian, attend a library instruction session, arrange a
consultation with a subject librarian, visit the library, or visit the website. The librarians at PSU
have developed learning outcomes for students that will inform our instruction regardless of the
mode. These learning outcomes were based on and designed to support PSU’s Campus-Wide
Learning Outcomes, particularly in the areas of Critical and Creative Thinking and Ethics and
Social Responsibility. These outcomes are focused on student learning and will help guide
ongoing individual and program-level assessment of our instruction. Some of this assessment
will, by necessity, be conducted collaboratively with disciplinary faculty. While library
instruction in any specific discipline will be unlikely to cover all of these outcomes, they do
represent the breadth of instructional activities provided by the library to students across the
curriculum.
• are not aware of the wide variety of information choices and formats available to them
• tend to use web-based electronic information sources found through search engines over other
formats
5.2 Conclusion
This system provides a computerized version of Library Management System which will benefit
the students as well as the staff of the library. It makes entire process online where student can
search books, staff can generate reports and do book transactions. It also has a facility for student
- 31 -
login where student can login and can see status of books issued as well request for book or give
some suggestions. It has a facility of teacher’s login where teachers can add lectures notes and
also give necessary suggestion to library and also add info about workshops or events happening
in our college or nearby college in the online notice board. There is a future scope of this facility
that many more features such as online lectures video tutorials can be added by teachers as well
as online assignments submission facility, a feature Of group chat where students can discuss
various issues of engineering can be added to this project thus making it more interactive more
user friendly and project which fulfills each users need in the best way possible
Objective of the study aimed to make recommendations - based on the findings - that can be
applied to all libraries in Doti that serve culturally diverse communities. From the findings of the
students and teachers transaction record, it is also recommended that the computerized
membership system of public libraries should allow for the inclusion of languages other than
English when identifying the home language of a user. Levels of staff should be involved in such
workshops, including management, so that they are made aware of the importance of offering
these services and also to gain their support.
While it is too early to set standards or even memorialize best practices for selection of
collections for digital reformatting, libraries, funders, and research, development, and policy
groups can take actions that will minimize the chances that current investments will be wasted.
These include taking deceptively simple steps in the course of decision-making, assessing
progress and change, tracking expenditures across all phases of activity in a consistent manner,
and engaging the widest possible group of people, from technologists to scholars, in selection,
assessment, and planning.
- 32 -
Now, envision yourself as a patron and put yourself behind the lens through which he or she
experience your library. The space and furnishings may appear from a bygone era, and learning
how the library is organized and categorized and how to access all the services is akin to learning
a new language. It can be unnecessarily difficult to find that shiny new book that just arrived.
What experiences or enhancements could be made to improve the patron experience? Future
research this study focuses on determining whether public libraries –To achieve this, the study
considers the perspectives of librarians and some statistical data gathered from the actual library.
It is suggested that for future studies, researchers determine their specific needs.
- 33 -
6.0 References
San-Yih, (2012) .The main challenges of content-based filtering approaches.
P.262Jomsri.(1990),Association rule Mining is a popular data mining method and well
researched method for discovering interesting, p. 131.
Stephen, Maeve & Philips. (2007).a Library is a large collection of books. p.112
Krishan, S.R. Ranganathan, (1991). “Terminology of Documentation public library. p. 73.
Chia-Chen, C., & An-Pin, C. (2007), .Using data mining technology to provide a
recommendation service in the digital library. ,The Electronic Library, (6), 711.
doi:10.1108/02640470710837137
Jomsri, P. (2014). Book recommendation system for digital library based on user profiles by
using association rule.
Robertson (2007), “libraries often provide a place of silence for studying,” p.2
Ranganathan, (1991)" a public institution or establishment charged with the care of a collection
of books, the duty of making them accessible to those who require the use of them and
the task of converting every person in its neighborhood into a habitual library goer and
reader of books", Krishan , p 3.
5.4 Appendices
Source code
- 34 -
<?php include('header.php'); ?>
<div class="span2">
<h4></h4></div><div class="span10">
<div class="text_content">
<div class="abc">
Source code
- 35 -
<?php include('header.php'); ?>
<div class="container">
<div class="margin-top">
<div class="row">
<div class="text_content">
<tbody>
</tr>
</tbody>
<tbody>
<tr><td colspan="3"></td></tr><tr>
</table></div></div></div</div>
Screenshot of about
- 36 -
Source code
<?php if (isset($_POST['submit'])){
session_start();
$username = $_POST['username'];
$password = $_POST['password'];
$num_row = mysqli_num_rows($result);
$row=mysqli_fetch_array($result);
header('location:dashboard.php');
$_SESSION['id']=$row['user_id'];
}} ?>
- 37 -
Source code
<div class="container">
<div class="margin-top">
<div class="row">
<div class="span2">
</li></ul>
- 38 -
<?php include('modal_add_user.php'); ?></div>
</div><thead><tr>
<th>Username</th>
<th>Password</th>
<th>Firstname</th>
<th>Lastname</th>
<th>Action</th>
</tr></thead><tbody>
while($row=mysqli_fetch_array($user_query)){$id=$row['user_id']; ?>
<td width="100">
<a rel="tooltip" title="Delete" id="<?php echo $id; ?>" href="#delete_user<?php echo $id; ?>" data-
toggle="modal" class="btn btn-danger"><i class="icon-trash icon-large"></i></a>
<a rel="tooltip"
title="Edit" id="e<?php echo $id; ?>" href="#edit<?php echo $id; ?>" data-toggle="modal" class="btn btn-
success"><i class="icon-pencil icon-large"></i></a>
- 39 -
<?php include('modal_edit_user.php'); ?</td><?php include('toolttip_edit_delete.php'); ?><!-- Modal edit
user -->
</tr><?php } ?></tbody></table>
<script type="text/javascript">
/* $(document).ready( function() {
$('.btn-danger').click( function() {
var id = $(this).attr("id");
$.ajax({
type: "POST",
url: "delete_user.php",
cache: false,
success: function(html){
$(".del"+id).fadeOut('slow');
});
}else{
return false;}
});
}); */
</script></div> </div></div></div>
- 40 -
Source code
<div class="container">
<div class="margin-top">
<div class="row">
</div></div></div>
- 41 -
Source code
<div class="container">
<div class="margin-top">
<div class="row">
<div class="span12">
<thead>
<tr>
<th>Book title</th>
- 42 -
<th>Borrower</th>
<th>Year Level</th>
<th>Date Borrow</th>
<th>Due Date</th>
<th>Date Returned</th>
<th>Borrow Status</th>
</tr>
</thead>
<tbody>
")or die(mysqli_error());
while($row=mysqli_fetch_array($user_query)){
$id=$row['borrow_id'];
$book_id=$row['book_id'];
$borrow_details_id=$row['borrow_details_id'];
?>
- 43 -
<td><?php echo $row['book_title']; ?></td>
<td><?php echo
$row['date_borrow']; ?></td>
<td><?php echo
$row['date_return']; ?></td>
<td><?php echo
$row['borrow_status'];?></td>
</tbody>
</table>
</div>
<script>
$(".uniform_on").change(function(){
var max= 3;
$(".uniform_on").attr('disabled', 'disabled');
$(".uniform_on:checked").removeAttr('disabled');
}else{
- 44 -
$(".uniform_on").removeAttr('disabled');
})
</script>
</div>
</div>
</div>
Source code
- 45 -
<?php include('navbar_books.php'); ?>
<div class="container">
<div class="margin-top">
<div class="row">
<div class="span12">
</div>
<!-- -->
<li class="active"><a
href="books.php">All</a></li>
<li><a
href="new_books.php">New Books</a></li>
<li><a
href="old_books.php">Old Books</a></li>
<li><a
href="lost.php">Lost Books</a></li>
<li><a
href="damage.php">Lost Books</a></li>
<li><a
href="sub_rep.php">Subject for Replacement</a></li>
</ul>
<!-- -->
<center class="title">
<h1>Books List</h1>
</center>
- 46 -
<table cellpadding="0" cellspacing="0" border="0" class="table table-bordered" id="example">
<div class="pull-right">
</div>
<thead>
<tr>
<th>Acc No.</th>
<th>Book Title</th>
<th>Category</th>
<th>Author</th>
<th
class="action">copies</th>
<th>Book Pub</th>
<th>Publisher Name</th>
<th>ISBN</th>
<th>Copyright Year</th>
<th>Date Added</th>
<th>Status</th>
<th
class="action">Action</th>
</tr>
</thead>
<tbody>
- 47 -
<?php
$user_query=mysqli_query($conn,"select * from
book where status != 'Archive'")or die(mysqli_error());
while($row=mysqli_fetch_array($user_query)){
$id=$row['book_id'];
$cat_id=$row['category_id'];
$book_copies =
$row['book_copies'];
$borrow_details =
mysqli_query($conn,"select * from borrowdetails where book_id = '$id' and borrow_status = 'pending'");
$row11 =
mysqli_fetch_array($borrow_details);
$count =
mysqli_num_rows($borrow_details);
/* $t4otal = $book_copies -
$borrow_details;
echo $total; */
$cat_query =
mysqli_query($conn,"select * from category where category_id = '$cat_id'")or die(mysqli_error());
$cat_row =
mysqli_fetch_array($cat_query);
?>
- 48 -
<td><?php echo $row['book_id']; ?></td>
<td><?php echo
$row['publisher_name']; ?></td>
<td><?php echo
$row['copyright_year']; ?></td>
<td><?php echo
$row['date_added']; ?></td>
<?php
include('toolttip_edit_delete.php'); ?>
<td class="action">
<a rel="tooltip" title="Delete" id="<?php echo $id; ?>" href="#delete_book<?php echo $id; ?>" data-
toggle="modal" class="btn btn-danger"><i class="icon-trash icon-large"></i></a>
<a rel="tooltip"
title="Edit" id="e<?php echo $id; ?>" href="edit_book.php<?php echo '?id='.$id; ?>" class="btn btn-success"><i
class="icon-pencil icon-large"></i></a></td></tr><?php }
</tbody>
</table>
</div>
</div>
- 49 -
</div>
</div>
Screenshot ofBooks
Source code
<div class="container">
<div class="margin-top">
<div class="row">
<div class="span12">
- 50 -
<div class="alert alert-info">
</div>
<li class="active"><a
href="new_books.php">New Books</a></li>
<li><a
href="old_books.php">Old Books</a></li>
<li><a
href="lost.php">Lost Books</a></li>
<li><a
href="damage.php">Damage Books</a></li>
<li><a
href="sub_rep.php">Subject for Replacement</a></li>
</ul>
<!-- -->
<center class="title">
<h1>New Books</h1>
</center>
<div class="pull-right">
</div>
- 51 -
<thead>
<tr>
<th>Acc No.</th>
<th>Book Title</th>
<th>Category</th>
<th>Author</th>
<th
class="action">copies</th>
<th>Book Pub</th>
<th>Publisher Name</th>
<th>ISBN</th>
<th>Copyright Year</th>
<th>Date Added</th>
<th
class="action">Action</th>
</tr>
</thead>
<tbody>
while($row=mysqli_fetch_array($user_query)){
$id=$row['book_id'];
$cat_id=$row['category_id'];
$cat_query =
mysqli_query($conn,"select * from category where category_id = '$cat_id'")or die(mysqli_error());
- 52 -
$cat_row =
mysqli_fetch_array($cat_query);
?>
<td><?php echo
$row['publisher_name']; ?></td>
<td><?php echo
$row['copyright_year']; ?></td>
<td><?php echo
$row['date_added']; ?></td>
<?php
include('toolttip_edit_delete.php'); ?>
<td class="action">
<a rel="tooltip" title="Delete" id="<?php echo $id; ?>" href="#delete_book<?php echo $id; ?>" data-
toggle="modal" class="btn btn-danger"><i class="icon-trash icon-large"></i></a>
<a rel="tooltip"
title="Edit" id="e<?php echo $id; ?>" href="edit_book.php<?php echo '?id='.$id; ?>" class="btn btn-success"><i
class="icon-pencil icon-large"></i></a>
- 53 -
</td>
</tr>
<?php } ?>
</tbody>
</table>
</div>
</div>
</div>
</div>
- 54 -
Source code
<div class="container">
<div class="margin-top">
<div class="row">
<div class="span12">
</div>
<!-- -->
- 55 -
<ul class="nav nav-pills">
<li><a
href="books.php">All</a></li>
<li><a
href="new_books.php">New Books</a></li>
<li class="active"><a
href="old_books.php">Old Books</a></li>
<li><a
href="lost.php">Lost Books</a></li>
<li><a
href="damage.php">Damage Books</a></li>
<li><a
href="sub_rep.php">Subject for Replacement</a></li>
</ul>
<!-- -->
<center class="title">
<h1>Old Books</h1>
</center>
<div class="pull-right">
</div>
<thead>
<tr>
<th>Acc No.</th>
- 56 -
<th>Book Title</th>
<th>Category</th>
<th>Author</th>
<th
class="action">copies</th>
<th>Book Pub</th>
<th>Publisher Name</th>
<th>ISBN</th>
<th>Copyright Year</th>
<th>Date Added</th>
<th
class="action">Action</th>
</tr>
</thead>
<tbody>
while($row=mysqli_fetch_array($user_query)){
$id=$row['book_id'];
$cat_id=$row['category_id'];
$cat_query =
mysqli_query($conn,"select * from category where category_id = '$cat_id'")or die(mysqli_error());
$cat_row =
mysqli_fetch_array($cat_query);
?>
- 57 -
<td><?php echo $row['book_id']; ?></td>
<td><?php echo
$row['publisher_name']; ?></td>
<td><?php echo
$row['copyright_year']; ?></td>
<td><?php echo
$row['date_added']; ?></td>
<?php
include('toolttip_edit_delete.php'); ?>
<td class="action">
<a rel="tooltip" title="Delete" id="<?php echo $id; ?>" href="#delete_book<?php echo $id; ?>" data-
toggle="modal" class="btn btn-danger"><i class="icon-trash icon-large"></i></a>
<a rel="tooltip"
title="Edit" id="e<?php echo $id; ?>" href="edit_book.php<?php echo '?id='.$id; ?>" class="btn btn-success"><i
class="icon-pencil icon-large"></i></a>
</td>
</tr>
- 58 -
<?php } ?>
</tbody>
</table></div>
</div>
</div>
</div>
Source code
<div class="container">
<div class="margin-top">
<div class="row">
<div class="span12">
</div>
<!-- -->
<li><a
href="books.php">All</a></li>
- 59 -
<li><a
href="new_books.php">New Books</a></li>
<li><a
href="old_books.php">Old Books</a></li>
<li class="active"><a
href="lost.php">Lost Books</a></li>
<li><a
href="damage.php">Damage Books</a></li>
<li><a
href="sub_rep.php">Subject for Replacement</a></li>
</ul>
<!-- -->
<center class="title">
<h1>Lost Books</h1>
</center>
<div class="pull-right">
</div>
<thead>
<tr>
<th>Acc No.</th>
<th>Book Title</th>
<th>Category</th>
- 60 -
<th>Author</th
<th class="action">copies</th>
<th>Book Pub</th>
<th>Publisher Name</th>
<th>ISBN</th>
<th>Copyright Year</th>
<th>Date Added</th>
<th
class="action">Action</th>
</tr>
</thead>
<tbody>
while($row=mysqli_fetch_array($user_query)){
$id=$row['book_id'];
$cat_id=$row['category_id'];
$cat_query =
mysqli_query($conn,"select * from category where category_id = '$cat_id'")or die(mysqli_error());
$cat_row =
mysqli_fetch_array($cat_query);
?>
- 61 -
<td><?php echo $row['book_title']; ?></td>
<td><?php echo
$row['publisher_name']; ?></td>
<td><?php echo
$row['copyright_year']; ?></td>
<td><?php echo
$row['date_added']; ?></td>
<?php
include('toolttip_edit_delete.php'); ?>
<td class="action">
<a rel="tooltip" title="Delete" id="<?php echo $id; ?>" href="#delete_book<?php echo $id; ?>" data-
toggle="modal" class="btn btn-danger"><i class="icon-trash icon-large"></i></a>
<a rel="tooltip"
title="Edit" id="e<?php echo $id; ?>" href="edit_book.php<?php echo '?id='.$id; ?>" class="btn btn-success"><i
class="icon-pencil icon-large"></i></a>
</td>
</tr>
<?php }
</tbody>
</table>
- 62 -
</div>
</div>
</div>
</div>
- 63 -
Source code
<div class="container">
<div class="margin-top">
<div class="row">
<div class="span12">
</div>
<!-- -->
- 64 -
<ul class="nav nav-pills">
<li><a
href="books.php">All</a></li>
<li><a
href="new_books.php">New Books</a></li>
<li><a
href="old_books.php">Old Books</a></li>
<li><a
href="lost.php">Lost Books</a></li>
<li><a
href="damage.php">Damage Books</a></li>
<li class="active"><a
href="sub_rep.php">Subject for Replacement</a></li>
</ul>
<!-- -->
<center class="title">
</center>
<div class="pull-right">
</div>
<thead>
<tr>
<th>Acc No.</th>
- 65 -
<th>Book Title</th>
<th>Category</th>
<th>Author</th>
<th
class="action">copies</th>
<th>Book Pub</th>
<th>Publisher Name</th>
<th>ISBN</th>
<th>Copyright Year</th>
<th>Date Added</th>
<th
class="action">Action</th>
</tr>
</thead>
<tbody>
while($row=mysqli_fetch_array($user_query)){
$id=$row['book_id'];
$cat_id=$row['category_id'];
$cat_query =
mysqli_query($conn,"select * from category where category_id = '$cat_id'")or die(mysqli_error());
$cat_row =
mysqli_fetch_array($cat_query);
?>
- 66 -
<tr class="del<?php echo $id ?>">
<td><?php echo
$row['publisher_name']; ?></td>
<td><?php echo
$row['copyright_year']; ?></td>
<td><?php echo
$row['date_added']; ?></td>
<?php
include('toolttip_edit_delete.php'); ?>
<td class="action">
<a rel="tooltip" title="Delete" id="<?php echo $id; ?>" href="#delete_book<?php echo $id; ?>" data-
toggle="modal" class="btn btn-danger"><i class="icon-trash icon-large"></i></a>
<a rel="tooltip"
title="Edit" id="e<?php echo $id; ?>" href="edit_book.php<?php echo '?id='.$id; ?>" class="btn btn-success"><i
class="icon-pencil icon-large"></i></a>
</td>
- 67 -
</tr><?php } ?</tbody>
</table</div>
</div>
</div>
</div>
Source code
<div class="container">
<div class="margin-top">
<div class="row">
<div class="span12">
- 68 -
<button type="button" class="close" data-dismiss="alert">×</button>
</div>
<thead>
<tr>
<th>Name</th>
<th>Gender</th> <th>Address</th><th>Contact</th>
<th>Type</th><th>Year
level</th><th>Status</th>
<th>Action</th></tr></thead>
<tbody>
while($row=mysqli_fetch_array($user_query)){$id=$row['member_id']; ?>
- 69 -
<td><?php echo $row['year_level'];
?></td>
<?php
include('toolttip_edit_delete.php'); ?>
<td width="100">
<a rel="tooltip" title="Delete" id="<?php echo $id; ?>" href="#delete_student<?php echo $id; ?>" data-
toggle="modal" class="btn btn-danger"><i class="icon-trash icon-large"></i></a>
<a rel="tooltip"
title="Edit" id="e<?php echo $id; ?>" href="edit_member.php<?php echo '?id='.$id; ?>" class="btn btn-success"><i
class="icon-pencil icon-large"></i></a></td>
</tr>
<?php } ?>
</tbody>
</table></div></div></div></div>
Screenshot ofMembers
- 70 -
Source code
<div class="container">
<div class="margin-top">
<div class="row">
<div class="span12">
<div class="addstudent">
- 71 -
<form class="form-horizontal" method="POST" action="member_save.php" enctype="multipart/form-
data">
<div class="control-group">
<div class="controls">
</div>
</div>
<div class="control-group">
<div class="controls">
</div>
</div>
<div class="control-group">
<div class="controls">
<option></option>
<option>Male</option>
<option>Female</option>
</select>
</div>
</div>
- 72 -
<select name="type" required><option></option>
<option>Student</option>
<option>Teacher</option>
<option></option>
</select>
</div>
</div><div class="control-group">
<div class="controls">
<option>First Year</option>
<option>Second Year</option>
<option>Third Year</option>
<option>Fourth Year</option>
<option>Faculty</option>
</select>
</div></div><div class="control-group">
<div class="controls">
</div>
</div>
- 73 -
Screenshot ofArchive
Source code
- 74 -
<?php include('session.php'); ?>
<?php
$title = $_POST['title'];
/* $category = $_POST['category']; */
$author = $_POST['author'];
?>
<div class="container">
<div class="margin-top">
</div><!-- -->
<ul class="active"><a
href="books.php">All</a></li>
<li><a
href="new_books.php">New Books</a></li>
<li><a
href="old_books.php">Old Books</a></li>
<li><a
href="lost.php">Lost Books</a></li>
<li><a
href="damage.php">Damage Books</a></li>
<li><a
href="sub_rep.php">Subject for Replacement</a></li>
</ul>
<!-- -->
- 75 -
<center class="title">
<h1>Books List</h1>
</center>
<div class="pull-right">
</div>
</div>
</div>
</div>
- 76 -