library management
system
WEST BENGAL UNIVERSITY OF TECHNOLOGY
B.TECH 6th Semester, 2015
Acknowledgement
We wish to express our profound gratitude and
indebtedness to Prof. Joyita Saha, Department of
Information Technology, WBUT for introducing
the present topic and for their inspiring
guidance , constructive criticism and valuable
suggestion throughout the project work. Last but
not least, our sincere thanks to all our friends who
have patiently extended all sorts of help for
accomplishing this undertaking.
Prepared by:
PUSHPAK KUMAR
SAURAV KUMAR
(3000213023)
(30000212015)
SUMIT KUMAR BURNWAL
VISHNU SHEKHAR SINGH
(30000212027)
(30000212025)
C
ontents
Introduction
System Design
(ER , Data Flow &
UML Diagrams)
SDLC
Coding
Project Scope
Testing
Product Functions
Maintenance
User Classes
Future Scope
Conclusion
References
Purpose
Feasibility Analysis
Assumptions
Requirement Analysis
Project planning &
scheduling
(Gnatt Chart & Pert
Chart)
Introduction
The project Online Library Management System is
developed in J2EE, which mainly focuses on basic
operations in a library like adding new member,
new
books,
and
updating their information,
searching books and members and facility to issue
and return books. Using this web application
registered user can make borrow request for books
and can look for the book either it is available in
library or not.
Purpose
1. It provides "better and efficient" service to members.
2. Reduce the workload of librarian.
3. Faster retrieval of information about the desired book.
4. Provide facility for proper monitoring, reduce paper work
and provide data security.
5. All details will be available on a click for both user and
librarian.
SOFTWARE DEVELOPMENT LIFE CYCLE
The Waterfall Model As Our Project Is Not So Complex
;)
Feasibility Analysis
Technical Feasibility:
We can strongly says that it is technically feasible, since there
will not be much difficulty in getting required resources for the
development and maintaining the system as well. All the
resources needed for the development of the software as well
as the maintenance of the same is available in the organization
here we are utilizing the resources which are available already.
Economical Feasibility:
Development of this application is highly economically
feasible .The organization needed not spend much m one for
the development of t he system already available. The only
thing is to be done is making an environment for the
development with an effective supervision. If we are doing so,
we can attain the maximum usability of the corresponding
resources .Even after the development, the organization will
not be in a condition to invest more in the organization
.Therefore, the system is economically feasible.
Product Scope
Any education institute & government offices can
make use of it for providing information about
author, content of the available books etc..
This project can further be extended by adding the
facility of e-books, to overcome the problem of
book stock in library.
This projects efficiency can be further enhanced
by adding the feature of online payment.
Current System Analysis
Any data related to the member and its transactions the library
managements deals with the storage and manipulation of all those
data. This data record system is manual and the work is done as
follows:A member issuing a book then all its details about its identification
and books details is mentioned in a register manually.
Member /borrower have to search his its own in the very big
library and then borrow it further
Members are given a library card in which librarian used to write
the details of the book issued to the member.
Library card helps them to keep in track about the book issued and
dead line follower.
Member are not able to issue /return the book until and unless he
/she has that library card
This card acts as a identity in the library
Problem in the Current
Existing System
Lack of security and error prone system.
Poor data storage - all data is stored in filing cabinets. Data may be incorrect
due to human error. A lot of data can be easily stolen.
Slow Retrieval of data - information stored in different locations, and the
data is returned as long as it takes.
If you are unable to find a book of your choice in a manual library system,
trying to find a particular book in a lot of time and effort is spent.
Time-consuming
Too much waste of paper.
Proposed Product Functions
The functions of the system include the system
providing different type of services based on the type of
users.
Member accounts and one admin(Librarian) account
with login facilities.
Different interface for different user group
Member and Librarian).
(Guest ,
When a user registers, firstly a request for new
membership is sent to the librarian .The above user can
only become member ,if librarian allows the membership
request.
Librarian get information about the members and books.
Continued
Proposed Product Functions
Librarian can update or delete member and books
information.
Admin Pages can only be visited by Librarian.
(Illegal Access Restricted).
Normal Users can edit their profiles.
User can ask queries to librarian,
Fine is automatically calculated and shown to
culprit member after date of return (15 days
after issue) is missed. ( Fine Rate 5 Rs / day)
Librarian can send message/warning to any
member and can reply member-queries.
User Classes
The users of the system are
Librarian (Administrator)
Members
Assumptions
The users should have sufficient knowledge of
computers & of English language, as the user
interface will be provided in English.
The members should be either the student or
faculty of the institute, where this s/w will be
implemented. The University computer should have
Internet connection and Internet server capabilities.
Constraints
The Online Library System is connected to the university computer
and is running all 24 hours a day.
The users access the Online Library System from any computer that
has Internet browsing capabilities and an Internet connection.
The users must have their correct usernames and passwords to enter
into the Online Library System.
Hardware Requirement
Processor: Core 2 Duo or higher
RAM: 512 Mb or more
Hard Drive: 10 GB or more
Monitor : 15 CRT, or LCD monitor
Keyboard : Normal or Multimedia
Mouse: Compatible mouse
Software Requirement
Operating System : Windows 7,8,8.1
Browser : Google Chrome (Preferred),Mozilla Firefox
Front End: Html,JavaScript,CSS
Back End : JSP,Servlet , Mysql
Language : Java
Framework : J2EE
Functional requirements:
Librarian:
Insert book:
This action is done to add new book to library book
collection
Delete / modify book :
This event is to delete an existing book or modify its
information.
Delete member:
Admin can delete a member due to some specific
rules.
Return book:
Admin should confirm the return of books borrowed by
users
Functional Requirements
Normal User :
Register:
When new user enters for the first time then he has to register
Extending borrowing deadline :
Member can extend the borrowing time to some limit decided by Admin
Common Functions :
Login:
Both Admin and members must be logged in before they modify any information
Search for book :
When user or admin wants to search on some book by name, author or subject etc.
Non-Functional requirements :
EFFICIENCY REQUIREMENT
When a library management system will be implemented librarian
and user will
easily access library as searching and book transaction will be very
faster .
RELIABILITY REQUIREMENT
The system should accurately performs member registration ,member
validation ,
report generation, book transaction and search.
USABILITY REQUIREMENT
The system is designed for a user friendly environment so that
student and staff of
library can perform the various tasks easily and in an effective way.
Performance
Requirement
The proposed system that we are going to develop will be used
as the Chief performance system within the library of the
institute which interact with the institutes staff and students.
Therefore, it is expected that the database would perform
functionally all the requirements that are specified by the
institute. The system shall accommodate high number of books
and users without any fault.
Safety Requirement
The database may get crashed at any certain time
due to virus or operating system failure. Therefore, it
is required to take the database backup.
Security Requirement
We are going to develop a secured database for the
university. There are different categories of users namely
teaching staff, administrator, students etc. Depending
upon the category of user the access rights are decided. It
means if the user is an administrator then he can be able
to modify the data, delete, append etc. All the other users
other than administrator only have the rights to retrieve
the information about database . No member users by any
means should be able to break into administrator region.
Planning:
Project Planning &
Scheduling
what is going to be done, how, where, by whom, and when
for effective monitoring and control of complex projects
Objectives of Project Scheduling
Investigating the results of possible delays in activitys completion time.
Progress control
Smoothing out resource allocation over the duration of the project
To determine optimal schedules we need to
Identify all the projects activities.
Determine the precedence relations among activities
Once you plan your work, you must work your plan
by J. Hinze, Construction Planning and Scheduling
Gantt Chart
Pert Chart
Timeline
S
y
s
t
e
m
D
e
s
I
g
ER Diagram
Context Level Diagram
Level
0
DFD
Level
1
DFD
(Book)
Level
1 DFD
(Member)
UML Diagrams
Use Case
Diagram
Class Diagram
Sequence
Diagram
Sequence Diagram For
Viewing Book/Member Details
Sequence Diagram For
Add/Modify Book Details
Coding
user login module
<<Login.jsp>>
<html>
<head>
<title>LOGIN</title>
<script>function validate()
{
var uid = document.getElementById('uid').value;
var pwd = document.getElementById('pwd').value;
{
if(uid=="" || pwd =="")
alert("You left something blank :)");
return false;
}
return true;
}</script>
</head>
<body>
<jsp:include page="Header.jsp"/>
<form action="Login" method="post" onsubmit='return validate()'>
<table border="1" >
<thead>
<tr>
<th colspan="2">User Login</th>
</tr>
</thead>
<tr>
<td>User Id:</td>
<td><Input type="text" name="uid" id='uid'></td>
</tr>
<tr>
<td>Password :</td>
<td><input type="password" name="pwd" id='pwd'></td>
</tr>
<tr><td colspan="2" ><input type="submit" value="GO"><input type="reset"></td></tr>
<tr><td colspan="2"><a href="UserReg.jsp">New User? click here</a></td></tr>
</table>
</form>
<jsp:include page="Footer.jsp"/>
</body>
</html>
End of Login.jsp
<<Login.java>>
import java.io.*;import java.sql.*;import javax.servlet.*;import javax.servlet.http.*;
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try{
String status1=null;int count=0;
String uid=request.getParameter("uid");
String pwd=request.getParameter("pwd");
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost/test", "root", "");
PreparedStatement smt1=con.prepareStatement("select status from reg where uid=? and pwd=?");
smt1.setString(1, uid);
smt1.setString(2, pwd);
ResultSet rs=smt1.executeQuery();
while(rs.next())
{status1=rs.getString(1);
++count;}
if(count!=0)
{
if(status1.equals("Allowed"))
{HttpSession session = request.getSession();
session.setAttribute("uid",uid);
RequestDispatcher rd=request.getRequestDispatcher("Home.jsp");
rd.forward(request,response);
}
if(status1.equals("Pending")){
out.print("Sorry! Your Membership Request Is Yet To Be Approved By Admin :(");
RequestDispatcher rd=request.getRequestDispatcher("Login.jsp");
rd.include(request,response);
}
}
else{
out.print("Sorry! Try again........");
RequestDispatcher rd=request.getRequestDispatcher("Login.jsp");
rd.include(request,response);
}
rs.close();
con.close();
} catch(Exception e){
System.out.println("Error:"+e);
}}}
time to launch
XARVIS
User Registration Steps
Step-1
(guest registers)
User Registration Steps
Step-2
(membership request sent to admin)
User Registration Steps
Step-3
(Admin Checks Membership Requests)
User Registration Steps
Step-4
(Admin allows Membership)
User Registration Steps
Step-5
(Guest is given Membership)
Book Borrowing Steps
Step-1
(User view books and request the desired book)
Book Borrowing Steps
Step-2
(User views his book borrow request)
Book Borrowing Steps
Step-3
(admin go to book-borrow requests)
Book Borrowing Steps
Step-4
(Admin view book-borrow requests)
Book Borrowing Steps
Step-5
(Admin Issues The Requested book)
Book Borrowing Steps
Step-6
(User gets the desired book)
TESTING
unit testing
TESTING
unit testing
Integration
Testing
Maintenance
Once the Library Automation Management System is
fully functional, annual maintenance is required. This
includes library management software systems
upgrades and support for the modules .We will provide
this facilities free of cost upto 3 years. After 3 years ,
additional charges (as per maintenance work) would be
applied. Technical support is provided through our tollfree 24x7 help-line 180099889898.
Future Scope
To make Online Submission of Fine possible for members.
To add preview for every book so that users can get a sneakpeek of
the book they are looking for.
To build RFID (Radio-frequency identification )and Bar Code
functionalities in Xarvis. So,that a member with vallid RFID will be
automatically logged in when entering library and at time of book issue
and return,bar code scanning will automatically update database of
library.
Adding Ebooks into Xarvis.
To model the whole j2ee project on Struts framework so that it can be
made enterprise level.
CONCLUSION
Xarvis simplifies the manual workload and ishelpful
in theeffective transactions ofthe library. The work
load of the administrator is reduced to a great extent
by computerized transactions and instant information
about the books in the library. The members of the
library are provided a very interactive interface to
search for the books by title as well as author. The
administrator can instantly make changes to the
database. LMS provides messages whenever required
viz. limit reached of member to borrow books, error
when trying to remove member who still has to pay
fine. Thus the project Xarvis LMS was achieved by
implementing J2EE,CSS,JS,HTML and Mysql database
and tested accordingly.
References