Library Management System
Library Management System
Library Management System
INTRODUCTION
1
1.2 PROBLEM DEFINITION
2
CHAPTER 2
SYSTEM ANALYSIS
3
Barcode Readers can be installed to the system and respective plug-in
can be installed to the LMS for effective and easy transactions.
Error generation for Authentication purpose and also for constraints to
the members on the number of books allowed for a particular member.
Member can be a Student, or Lecturer or Non teaching Staff, and
respective limits for borrowing books for each type of member is set
(i.e. students can borrow up to 3 books and lecturers & non-teaching
staff can borrow up to 5 books).
According to update anomalies, proper errors are generated in
exclamation and dialog boxes.
The data can be updated to a server on the network. There can be
many clients around the library from which the users can check for
books available.
4
CHAPTER 3
SYSTEM REQUIREMENTS
5
CHAPTER 4
SYSTEM DESIGN
4.1 INTRODUCTION
1. Administration:
a) Adding a new member:
The administrator can add new members to the library. He has to enter the
following details.
i) Patron ID
ii) Patron Name
iii) Designation (Student, Lecturer, Non Teaching staff)
iv) Date of Joining
v) Date of Expiry of membership
6
The administrator has the rights to remove a member from the library. Most
importantly LMS doesn‟t allow a member to be removed from the library if the
member has books to return or fine to be paid.
The member can be removed either with reference to his name or his patron id
which can also be scanned from his ID card through a barcode reader.
2. Tech Processing
a) Primary Catalogue
This menu gives options to the administrator to add new books to the library
The following details of the book are to be entered.
i) Item Barcode
ii) Title
iii) Author
iv) Physical Description (no. of pages)
v) Reference or not (Reference or Ordinary)
vi) ISBN
b) Modify Catalogue
This form displays the all the books of the library and gives the option to the
administrator to modify the details of a book. The following details can be
modified.
i) Title
ii) Author
iii) Reference or not
iv) ISBN
v) Physical Description (no. of pages)
3. Circulation
a) Check In
By check in option, a book can be returned to the library. The barcode of the
book is required, which can be scanned by the barcode reader.
b) Check Out
7
When a book is check out request is given, LMS verifies whether the person is
allowed to borrow more books or not. A student can borrow only up to 3
books, whereas a Lecturer or Non teaching Staff can borrow up to 5 books. An
error is generated if the person is not allowed.
4. Queries
a) Search by
i) Title
ii) Item Barcode
iii) Patron ID
This displays the books borrowed by the particular Member with reference to
his Patron ID
iv) Patron Name
This displays the books borrowed by the particular member with reference to
his name
v) Books out
Displays the books which are out of the library.
vi) Books available
Displays the books which are available for checking out.
1) Queries
a) Search by
i) Title
ii) Item Barcode
iii) Patron ID
This displays the books borrowed by the particular Member with reference to
his Patron ID
iv) Patron Name
This displays the books borrowed by the particular member with reference to
his name
v) Books out
8
Displays the books which are out of the library.
vi) Books available
The LMS implements Oracle as the Backend and thus the database schema
is defined and modified through Oracle SQL. The LMS consists of two
tables to store all the information, and all the necessary information is
extracted from these tables through appropriate queries in VB. The tables are
BOOK and PATRON. The schemas are as follows.
PATRON
Name Null? Type
NAME VARCHAR2(20)
DESIGN VARCHAR2(20)
DOJ DATE
EXPIRY DATE
NOB NUMBER(1)
FINE NUMBER(4)
9
DOJ is the date of join and EXPIRY is the date of expiry of membership.
NOB is the no. of books borrowed by the member. FINE represents the
amount of fine imposed on the member in Rs.
BOOK
Name Null? Type
TITLE VARCHAR2(25)
AUTHOR VARCHAR2(25)
ISBN NUMBER(10)
STATUS VARCHAR2(10)
REF_OR_NOT VARCHAR2(10)
BORROWER_ID NUMBER(10)
PHYS NUMBER(4)
10
4.3 ER DIAGRAM
Patron Name
Patron_ID
Design DOJ
Patron
Expiry
NOB (no. of
books borrowed)
Fine
Borrows or
Returns
Membership Stores
Title
Bar_code
Library Books
ISBN
Ref_or_not
Author
Phys(no. of pages)
Borrower_ID
Status
11
4.4 USE CASE DIAGRAM
DESCRIPTION
Administrator
Guest account
The various actions that take place in this system are,
12
Modification to the book details
Modification to the member details
Check available books
Query of member details by administrator
Database
The guest user can perform various activities such as querying the database
for available books and searching for books with title and author. The
administrator can modify the details of either the books or the members. He
can also query the database for the information regarding books and also the
members.
13
Description
The above sequence diagram shows the sequence of activities while adding
or modifying a member or books details
Description
14
4.6 CLASS DIAGRAM
Description
The class diagram shows all the activities of the LMS. It includes
Circulation
Queries
15
CHAPTER 5
SYSTEM DEVELOPMENT
Administrator Guest
Application Interface
Oracle
Database
having the
relevant tables
16
This architecture gives the conceptual model that defines the structure,
behavior, and views of the Library Management System. The main
components of the system architecture: Oracle Database containing relevant
tables and Application Interface, and Administrator and Guest. The
Applicant interface and status interface is responsible for user experience,
database takes care of storage that are required in the Library Management
system.
17
CHAPTER 6
6.1 SCREENSHOTS
LOGIN SCREEN
18
MAIN MENU SCREEN
19
ADMINISTRATION SCREEN
21
REMOVE MEMBER
22
ADD BOOK SCREEN
23
CIRCULATION
24
QUERIES
25
ERROR SCREENS
26
6.2 CODING
This form allows the user to either login to the database as an administrator
or a Guest.
The Administrator is given all the privileges to modify the database
according to his needs.
Whereas the guest is not given the privileges to alter the database in any
way. However the Guest is allowed to query the database for information
and is allowed to view all sorts of information.
Option Explicit
LoginSucceeded = False
Me.Hide
End Sub
The startup screen allows the administrator to choose from four main
options.
1. Administration
2. Tech Processing
3. Circulation
4. Queries
5. Lock and Logout
28
If frmLogin.txtUserName = "administrator" And frmLogin.txtPassword =
"admin" Then
TechProc.Show
Unload Me
Else
MsgBox "Guest User Access Denied!!!", vbExclamation
End If
End Sub
29
c) Remove member
Private Sub Command1_Click()
Addmem.Show
Unload Me
End Sub
30
MsgBox "Member Created"
End Sub
The tech processing menu gives the administrator three options. They are
1) Primary Catalogue
Adding books to the library
2) Modify Catalogue
Changing and updating the details of a book
33
Unload Me
End Sub
34
6.2.9 Code for Modify Book Screen
35
6.2.10 Code for Circulation Screen
„To check whether the student has reached his limit of borrowing books (i.e.
3 books)
If c >= 3 Then
MsgBox "This member can't borrow more books!!"
GoTo x
End If
c=c+1
temp.Text = c
con.Execute ("update patron set nob= " & Val(temp.Text) & " where
patron_id= " & Val(Text1.Text) & "")
End If
36
If design = "Lecturer" Or design = "Non Teaching Staff" Then
„To check whether the Staff has reached his limit of borrowing books (i.e. 5
books)
If c >= 5 Then
MsgBox "This member can't borrow more books!!"
GoTo x
End If
c=c+1
temp.Text = c
con.Execute ("update patron set nob= " & Val(temp.Text) & " where
patron_id= " & Val(Text1.Text) & "")
End If
End If
If c >= 5 Then
MsgBox "This member can't borrow more books!!"
GoTo x
37
End If
c=c+1
temp.Text = c
con.Execute ("update patron set nob= " & Val(temp.Text) & " where
patron_id= " & Val(Text1.Text) & "")
End If
End If
If ref = "Reference" Then
MsgBox "The book cannot be checked out, It is a reference book."
GoTo x
End If
If stat = "OUT" Then
MsgBox "The book is already out"
GoTo x:
End If
If Option1.Value = True Then
con.Execute ("update book set status='OUT', borrower_id=" &
Val(Text1.Text) & " where bar_code = " & Val(Text2.Text) & "")
MsgBox "Successfully Checked Out!"
End If
If Option2.Value = True Then
con.Execute ("update book set status='OUT', borrower_id=(select patron_id
from patron where name ='" & (Text1.Text) & "') where bar_code = " &
Val(Text2.Text) & "")
MsgBox "Successfully Checked Out!"
End If
x:
End Sub
„Only this Screen can be accessed by a guest login. Other screens cannot be
accessed by the „guest.
End Sub
40
CHAPTER 7
SYSTEM TESTING
Testing is one of the important steps in the software development phase.
Testing is performed to identify errors and is an integral part of the entire
development and maintenance process. The Library Management System has been
put under rigorous testing so as ensure the correctness of its design. The two basic
testing strategies that were used:
1. Unit Testing.
2. Integration Testing.
Unit testing was conducted to verify the functional performance of each modular
component of the software. Unit testing focuses on the smallest unit of software
design i.e. the module. White-box testing were heavily employed for unit testing.
41
2 Click on the A pop up PASS
Guest Login should
button to appear
login with when gng
less to admin
privileges. screen
Tabel 7.1 Login Test Case
“Unit testing” focuses on testing a unit of the code.“Integration testing” is the next
level of testing. This „level of testing‟ focuses on testing the integration of “units
of code” or components. The Library Management System was tested as a
whole.
CONCLUSION
LMS simplifies the manual work load and is helpful in the effective transactions of the
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 mini project LMS by implementing VB as front end and
43
REFERENCES
[2] Gary Cornell, “Visual basic 6: from the GROUND UP” Build
windows and web applications step by step, pp. 950-1000
[5] http://www.vbtutor.net
[6] http://www.johnsmiley.com/cis18/Smiley003.pdf
[7] http://www.johnsmiley.com/cis18/Smiley004.pdf
44