Library Management System
Library Management System
Library Management System
PROJECT REPORT
BY
1
PREFACE
The project has been discussed in detail in the following part this
report.
2
ACKNOWLEDGEMENT
3
SOFTWARE REQUIREMENT SPECIFICATION
4
CONTENTS
2. SYSTEM ANALYSIS
a. Model Used 15
b. Feasibility Study 16
i. Objectives of the study
ii. Technical feasibility
iii. Economic Feasibility
iv. Legal Feasibility
v. Finding of Feasibility study
c. System Specification 19
i. Hardware Specification
ii. Database 19
iii. Programming Language 20
3.CODING 21
4. DESIGN 22
5.E-R DIAGRAM 23
6.DFD 24
7.ALL TABLE 31
5
8.SNAPSHOTS 34
12.TESTING
i. Unit testing
ii. Integration testing
iii.System testing
11. MAINTENANCE
15.CONCLUSION
16. BIBLIOGRAPHY
6
CHAPTER 1
INTRODUCTION:
7
ascertain the basic needs that should be fulfilled by the proposed
system .The primary aspect of developing a full-fledged automated
system would be to learn the current procedure and the information
flow, to locate the problems in the existing system, to locate the
problems in the existing system, to identify what resources are
used and to discuss with the user and their authority as what
improvement must be made in the existing system.
Till now the entire procedure has been managed manually, but as
time changes and technology steps into the new generation a
computerized system is required which will remove the drawbacks,
and shall also support new technology.
The existing system has many drawbacks and limitation. Until
now if any student wanted to access the information he had to
check the database thoroughly and the system has to go through
many interdependencies between the various forms to get data
from student. That is very inconvenient and also time consuming.
A new way is required that will remove these drawbacks of the
existing system; if the student is already aware of the shelf then he
can save a lot of time.
Most important to the interface, it is not very student friendly, as
the existing system has to go through many data inter dependencies
between the various forms. It takes data from user in different
forms instead of only one form, which is much more economical in
time. So it is important to make an efficient and convenient system
that includes all the additional functionalities.
8
The need for computer-based automation was felt because of the
limitations of the existing register based manual interface.
INTRODUCTION TO THE
PRODUCT
9
Before getting into the details of the project, here is a brief
introduction into what has been actually done. For effective
utilization of available resources, timely availability of accurate
information effectively, is required.
THE USER
Any student of the college, who wants to access any data item,
has to register himself/herself to the Administrator of the system
10
i.e. to the librarian of the college, their he or she get a user id. By
knowing it he or she can access the system.
11
SAILENT FEATURES
User friendly.
Efficient.
Saves a lot of time.
Easy movement through the different screens.
Ease of sending request for any item, just by a click.
Tremendous saving of time for both students and the
librarians.
ENVIRONMENT USED
HARDWARE SYSTEM
INTEL PENTIUM (P4 2.4) WITH 512MB RAM,
12
40GB HDD
SOFTWARE SYSTEM
OS: Windows XP Professional
Language: ASP.Net
Database: SQL Server 2005
CHAPTER 2
SYSTEM ANALYSIS
• Model Used
13
• Feasibility Study
• System Specification
MODEL USED
System Analysis and design are very important aspect of any
system development process. These two are the steps of SDLC.
SDLC stands for System Development of Life Cycle, which
represents the actual processes, happened during the development
of any system.
14
I have followed the ‘Evolutionary Model’ in developing the
Library management System. The following figure shows the
SDLC of any system in Evolutionary of system development.
Maintenance
FEASIBILITY STUDY
Objectives of the study:
15
The objectives or main aims of this study are to ascertain if the
current can be improved in any way through any means.
The part of the system to be improved is the aspect
involve in the dealings of problems of users who may
be student or faculties or the librarian.
Technical feasibility:
16
It was taken into consideration that whether the system element
can be design so that necessary functions and performance can be
achieved uncovered during analysis.
Resource availability:
Technology:
Economic feasibility:
17
should be made of house strong is the reaction uses staff is likely
to have to words the development of a computerized system.
Since we ware very much clear about the design of the system so
in the analysis of the development risks we found that it is quite
difficult to design the proposed system that it can support all the
functions desired by the Library in the system.
18
DATABASE
The use of the database also aims at the commercial aspect of the
product since the product is planned to be implement at various
different installations in future and they all must have SQL
SERVER previously involved.
19
PROGRAMMING LANGUAGE
ASP.NET
20
CODING:
21
DESIGN:
22
Author
Subject Year
Rack_no
Name Librarian_I
D Passwor
Available_no
Book_acc_no d
N N 1
Books Manage Librarian
s
1
Sear
ch Issue
/Retu Manag
rn es
M N
Book_acc_noo
Member_id MembersM
Status N
IS A
Teacher_i departmen
fine d t
Issue_dat Chec
e k
Issue_statu Return_date
Student Teacher
s
Stud_rol
l DOJ
name name
gender phone DOJ
address phone
course address
semester
23
Book query
Library Maintenance
Check
Status
Librarian
Member Managem
ent System Request for
Reply
report
Get Report
View
Status
Datastore
Subject
Member_id Book_info
Member
Log
In Search
24
request
Librarian_id
information
Select type
Librarian
Log In Manipulate Issue/
Return
update
update
Data store
Level 1: DFD
Book
name
Search
by Book
Book
name
Information
Author Information
name
Search Book Database
by
Search 25
Author
by ID
information
Id no.
Id no.
Info
Manipulate
Book
Update Database
Update
Database
Info
Database
Manipulate
Student
26
Info Update Database
Manipulate
Teacher
Info Add
Book
Details Update Database
Update Database
Info Update Book Database
Book
Details
Delete
27
Book
Details
Update Database
Info
Info
Add
Student Update Database
Details
Update Database
Update
Delete Student Database
Student
Studen 28
tDetails
Details
Info
Update database
Info
Info Add
Teacher Update Database
Details
Update Database
Info Update Teacher Database
Teacher
Details
Delete
Teache 29
r
Details
Update Database
Info
Table name:book
book_acc_no varchar(10)
book_name varchar(MAX)
subject varchar(MAX)
author varchar(20)
year varchar(20)
rack_no varchar(10)
available_no int
Table name:book_status
30
book_acc_no varchar(10)
book_status varchar(10)
Table name:department
department_id nchar(10)
department_name nchar(10)
decipline nchar(10)
No_of_semester int
Table name:issue_status
book_acc_no varchar(10)
member_id varchar(10)
issue_date datetime
due_date datetime
return_date datetime
fine int
issue_status varchar(10)
31
Table name:student
stud_roll varchar(10)
stud_name varchar(20)
date_of_birth datetime
stud_gender varchar(10)
stud_course varchar(10)
stud_semester varchar(5)
stud_address varchar(MAX)
stud_phone bigint
year_of_join int
Table name:teacher
teacher_id varchar(10)
teacher_name varchar(20)
date_of_join datetime
course varchar(10)
teacher_address varchar(MAX)
teacher_phone bigint
year int
32
SNAPSHOTS
33
STUDENT LOGIN
34
ADMIN OPTIONS
35
ISSUE BOOK
36
RETURN BOOK
PROGRAMMING CODE
using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
37
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
namespace LibrarySystem
{
public class Library
{
SqlConnection con;
SqlDataAdapter da;
DataSet ds ;
SqlDataReader dr;
38
public string book_name;
public string subject;
public string author;
public int year;
public int rack_no;
public int available_no;
}
return da.DeleteCommand.ExecuteNonQuery();
39
{
con.Close();
}
con.Open();
return x.ExecuteNonQuery();
}
40
{
con.Close();
}
con.Open();
da.InsertCommand = new SqlCommand("insert into book
values(@book_acc_no,@book_name,@subject,@author,@year,@price,@edition)"
, con);
using (SqlCommand x = da.InsertCommand)
{
x.Parameters.Add(new SqlParameter("@book_acc_no",
SqlDbType.VarChar)).Value = b.book_Acc_no.ToUpper();
x.Parameters.Add(new SqlParameter("@book_name",
SqlDbType.VarChar)).Value = b.book_name.ToUpper();
x.Parameters.Add(new SqlParameter("@subject",
SqlDbType.VarChar )).Value = b.subject ;
x.Parameters.Add(new SqlParameter("@author",
SqlDbType.VarChar )).Value = b.author ;
x.Parameters.Add(new SqlParameter("@year",
SqlDbType.Int)).Value = b.year ;
x.Parameters.Add(new SqlParameter("@price",
SqlDbType.Int)).Value = b.price;
x.Parameters.Add(new SqlParameter("@edition",
SqlDbType.Int )).Value = b.edition ;
return x.ExecuteNonQuery();
}
return ( da.UpdateCommand.ExecuteNonQuery());
41
if (con.State == ConnectionState.Open)
{
con.Close();
}
con.Open();
return x.ExecuteNonQuery();
}
}
42
da.DeleteCommand = new SqlCommand("delete from student
where stud_roll=@roll", con);
da.DeleteCommand.Parameters.Add(new SqlParameter("@roll",
SqlDbType.VarChar)).Value = t.student_id ;
return da.DeleteCommand.ExecuteNonQuery();
x.Parameters.Add(new SqlParameter("@roll",
SqlDbType.VarChar)).Value = s.student_id;
x.Parameters.Add(new SqlParameter("@name",
SqlDbType.VarChar)).Value = s.name;
x.Parameters.Add(new SqlParameter("@dob",
SqlDbType.DateTime)).Value = s.dob;
x.Parameters.Add(new SqlParameter("@gender",
SqlDbType.VarChar)).Value = s.gender;
x.Parameters.Add(new SqlParameter("@course",
SqlDbType.VarChar)).Value = s.course;
x.Parameters.Add(new SqlParameter("@semester",
SqlDbType.VarChar)).Value = s.semester;
x.Parameters.Add(new SqlParameter("@address",
SqlDbType.VarChar)).Value = s.address;
x.Parameters.Add(new SqlParameter("@phone",
SqlDbType.BigInt)).Value = s.phone_no;
x.Parameters.Add(new SqlParameter("@yoj",
SqlDbType.Int)).Value = s.join_year;
return x.ExecuteNonQuery()
}
}
public int InsertStudent(Student s)
{
if (con.State == ConnectionState.Open)
{
con.Close();
}
con.Open();
43
da.InsertCommand = new SqlCommand("insert into
student(stud_roll,stud_name,date_of_birth,stud_gender,stud_course,stud_
semester," +
"stud_address,stud_phone,year_of_join)value
s(@roll,@name,@dob,@gender,@course,@semester,@address,@phone,@yoj)",con
);
return x.ExecuteNonQuery();
}
}
44
da.DeleteCommand = new SqlCommand("delete from teacher
where teacher_id=@teacher_id",con);
da.DeleteCommand.Parameters.Add(new
SqlParameter("@teacher_id", SqlDbType.VarChar)).Value = t.teacher_id;
return da.DeleteCommand.ExecuteNonQuery();
return x.ExecuteNonQuery();
}
45
da.InsertCommand = new SqlCommand("insert into
teacher(teacher_id,teacher_name,teacher_department,teacher_phone,teache
r_address," +
"date_of_join,year)
values(@teacher_id,@teacher_name,@teacher_department,@teacher_phone,@te
acher_address,@date_of_join,@year) ", con);
return cmd.ExecuteNonQuery();
public Library()
{
con = new
SqlConnection(ConfigurationManager.ConnectionStrings["Lib"].ConnectionS
tring );
da=new SqlDataAdapter();
ds = new DataSet();
}
46
public SqlDataReader ConnecReader(String ConnectStr)
{
if (con.State== ConnectionState.Open )
{
con.Close();
}
con.Open();
CHAPTER 6
47
TESTING
Unit Testing
Integration Testing
System Testing
Alpha Testing
Beta Testing
Acceptance Testing
48
ensure that they will work when implemented. Thus system
test in implementation was a confirmation that all is correct
and opportunity to show the users that the system works.
Testing of the Library Management System was performed in three stages:
• Unit Testing
• System Testing
• Acceptance Testing
The minimum requirement of all three stages is:
• Load the library management application software
• Create the necessary data structures and populate
the database with the respective sample
• Create the necessary user permission
• All the tests must be conducted in correct sequence
• Make the transaction data ready
• Ensure expected results are available for
verification purpose
Unit Testing
49
modules is unit tested. Unit testing is the testing of different units
or modules of a system in isolation.
Purpose:
• To test the field level validations
• To test whether the objects in the form like alerts and
prompts are working or not
• To test whether the form confirms to all the standards
• To test whether all the functions available on the form are
working or not
INTEGRATION TESTING
50
Purpose:
• To testing whether the module performs its intended task
• Once all the modules have been integrated and tested
system testing can at art
SYSTEM TESTING
51
Alpha Testing: Alpha testing refers to the system testing that is
carried out by the testing within the organization.
Purpose:
• To test if the module interfaces with other modules of the
system
• To test if the module satisfies the requirement of the
library
• Or not
• To test if the report formats, queries are as per
requirement of library
52
White box testing is a test case design method that uses the
control structure of the procedural design to derive test
cases. Using the white box testing methods, I derived test
cases that
CHAPTER 7
53
• Maintenance
• Advantages
• Limitations
• Further Enhancements
54
SOFTWARE MAINTENANCE
55
ADVANTAGES OF MAKING THE SYSTEM
Only authorized user can use the system due to the user_id
protection.
The entire task is to be done automatic, so lots of time will
save.
Provides friendlier interface.
56
LIMITATIONS AND DRAWBACKS
The main of the system was to keep the user as thin as possible so
that the forms are loaded very fast; the above case is because the
forms are static. They interact with the database; every time they
are loaded thus system tends to be bit slowly.
The user has no facility to change his password. All updates can
perform by system administrator.
57
FURTHER ENHANCEMENT
58
CONCLUSION
59
Bibliography
Reference Books:
Reference Websites:
www.google.co.in
www.hit.net
www.w3schools.com
60