Library Management System Final
Library Management System Final
MANAGEMEN
T
SYSTEM
ACKNOWLWDGEMENT
Exchange of ideas generates the new object to work in a better way whenever a person
is helped and cooperated by others his heart is bound to pay gratitude and obligation to
them. To develop a project is not a one-man show. It is essentially a collective work,
where every step taken with all precautions and care. Therefore our first duty is to
thanks all persons who took pain in completing this project.
Firstly, we thank Mrs. RACHNA SETHI, who gave us inspiration to do work in this field
and gave us her precious time whenever needed. Thanks may be matter of merely
formality but with us it is expression of heartfelt gratitude to our project supervision. We
are highly indebted for her gestures, invaluable suggestions and boosting confidence to
make this successful. The success of this work is mostly due to her suitable guidance.
We also thank our class fellows and friends, who helped us a lot during our project work.
CERTIFICATE
This is to certify that the project entitled LIBRARY MANAGEMENT SYSTEM prepared
by us, Shobhna & Megha Jainfor the partial fulfilment of the requirements of the B.Sc.
(Hons.) Comp. Sc. degree, embodies the work, we all are doing during 4th semester of
our course under due supervision of the supervisor from this college.
SIGNATURE
INDEX
Contents
S.N
Chapter 1
Project Introduction
1.
2.
3.
7
8
9
10
11
12-33
13
15
18
20
21
22
23
27
32
Chapter 3
Requirement Analysis & Management
6-11
Chapter 2
Project Management
Page
N
o
.
34-52
35
36
38
39
41
46
48
Chapter 4
Design
4.
53-86
54
55
56
61
64
65
Chapter 1
Project Introduction
INTRODUCTION
Library Management System is a comprehensive library management
solution that is suitable for both large and small libraries.
Its flexible design enables Library Management System to be installed in a
range of Library organizations, ranging from public libraries, through to
academic, joint use and special libraries.
This Library Management System Software is capable of handling Books &
Periodicals with equal ease and efficiency.
This is a Windows-based Library Management System, utilizing the latest
advancements in the Information Technology to provide and improve Library
Services.
OBJECTIVE
The objective of this project is to develop an application that will automate the whole
procedure of a library. The software that would be developed should have facilities like
Add / Delete Members, Add / Delete Books, Issue & Return. The application should be
secured, as well as with limited access.
.
The main requirement of the project will be the ease of use, besides being the most
efficient and effective tool for the purpose. The application should be user friendly .It
should be robust and scalable.
An automated solution would be very beneficial to the organization, as it would bring
structure to the whole process so that it can be traced for any kind of query. Also an
automated solution will lead to optimal utilization of the available resources, reducing
duplication of effort, increasing efficiency and minimizing time-delays.
Following are the main objectives of computerization:
To provide services to all the employees for issue, return & search etc. at one
place.
SCOPE
For Members
Automatic installation
Facility to ADD / DELETE Members, Library Staff & Books and Maintain an easy
record of all these.
Maintenance of the record of each member / book is a very tedious job. Large
amount of human efforts are required to keep a track of members who have
issued a book, who have returned a book and which book is issued / returned.
Modifying the details of members or books is a very tedious job if done manually.
ADVANTAGES
The benefits of the proposed software are as follow:
Reliability
The application would efficiently store all the information related to the various processes
in the system and output the relevant information.
Availability
The application would be available to all the employees of the organizations with an
authorized access to the workstations and those who are subject to the authorization
permissions.
Security
The system would have adequate security checking through the authentication of the
users. The reports would only be available to the employees of the library as per their
specific requirements.
Cost Reduction
It can be achieved by minimizing the use of the stationary for reports. Soft copy of all the
reports. Soft copy of all the reports can be viewed and hence reducing the need of the
hard copy.
Chapter 2
Project Management
PROJECT MANAGEMENT
SYSTEM
Project management involves the planning, monitoring, and control of the people,
process, and events that occur as software evolves from a preliminary concept to an
operational implementation. Effective software project management focuses on the four
principles: people, product, process, and project.
THE PEOPLE
Software engineering institute has developed a people management capability
maturity model (PM-CMM). The people management maturity model defines the key
practice areas for software people like: recruiting, selection, performance management,
training, compensation, carrier development, organization and work design, and
team/culture development.
THE PRODUCT
Before a project can be planned, product objectives and scope should be established,
alternative solutions should be considered and technical and management constraints
should be identified. Scope identifies the primary data, functions and behaviours that
characterize the product.
THE PROCESS
A software process provides the framework from which a comprehensive plan for
Software development can be established.
Framework activities are populated with tasks, milestones, work products and
Quality assurance points. These activities characterize the software product and the
project team.
Umbrella activities i.e. software quality assurance, software configuration management
and measurement overlay the process model.
THE PROJECT
Planned and controlled software projects are conducted to manage complexity.
To avoid project failure, the project manager must avoid a set of common warning signs,
understand critical success factors and develop a common sense approach for planning,
monitoring and controlling the project.
The process model, we have chosen to develop this software is a Linear Sequential
Model
Linear Sequential Model suggests a systematic, sequential approach to software
development that begins at the system level and progresses through analysis, design,
coding, testing and support.
Design
It has four distinct attributes of a program: data structure, software architecture, interface
representations and procedural detail. It is documented and becomes part of the
software.
Code generation
Design must be translated into a machine readable form which is done by code
generation.
Testing
It focuses on the logical internals of the software, ensuring that all the statements have
been tested, and on the functional externals; that is conducting test to uncover errors
and ensure that defined input will produce actual results.
The Software model used is LINEAR SEQUENTIAL MODEL because of the following
reasons:-
All requirements for the project have been explicitly stated at the beginning.
There is very little scope of customers deviation from current requirements, coding
and testing after detailed analysis is much easy.
Structure is less complex and less innovative with less need of iteration.
Support
This is a phase when software will undoubtedly undergo change after it is delivered to
the customer. Change will occur because errors have been encountered, because the
software must be adapted to accommodate changes in its external environment, or
because the customer requires functional or performance enhancements. Software
support/maintenance reapplies each of the preceding phases to an existing program
rather than a new one.
TEAM STRUCTURE
The best team structure depends on:1. Management style of the organization.
2. The number of people who will populate the team and their skill levels, and
3. The overall problem difficulty.
The three generic team organizations are:
The team structure used in our project is DEMOCRATIC DECENTRALISED. The team comprises
of two members:-
Shobhna(7840)
Megha Jain(7837)
Decentralized teams generate better solutions and have greater probability of success
when working on different problems. DD team structure is best applies to programs with
low modularity.
Based on the difficulty of the problem to be solved relatively low modularity of the project
and high volume of the communication required a democratic decentralized team
structure is proposed. This software engineering team has no permanent leader. Rather,
task coordinators are appointed for short duration and then replaced by others who may
coordinate different tasks. Problem solving is a group activity. Communication among
team members is horizontal. Decentralized team generates more and better solutions
than individuals. Therefore such teams have a greater probability of success when
working on difficult problems.
A decentralized structure can be applied to both simple and difficult problems, but it is
best applied in case of difficult problems. These team structures result in high morale,
therefore good for teams that will be together for a long time. The decentralized team
structure is best applied to the problem with relatively low modularity because of the
higher volume of communication needed. These teams require more time to complete a
project and at a same time be best when high sociability is required. In these teams,
team members have trust on each other, distribution of skills must be appropriate to the
problem and they share a common goal.
SOFTWARE PROJECT
SCHEDULING
WHAT IS IT?
Software Project Scheduling is an activity that distributes estimated effort across the
planned project by allocating the effort to a specific software engineering tasks.
When you develop a schedule, compartmentalize the work, represent the task
interdependencies, allocate effort and time to each task, define responsibilities for the
work to be done, and define outcomes and milestones.
WHY IS IT IMPORTANT?
In order to build a complex system, many software engineering tasks occur in parallel,
and result of work performed during one task may have a profound effect on work to be
conducted in another task. These interdependencies are very difficult to understand
without a schedule. Its also a virtually impossible to progress on a moderate or large
software project without a detailed schedule.
INTRODUCTION TO TIMELINE
CHART
When creating a software project schedule, the planner begins with a set of tasks. If
automated tools are used, the work breakdown is input as a task network or task outline.
Effort, duration and start date are then input for each task outline. In addition, tasks may
be assigned to specific individuals.
As a consequence of this input a Timeline Chart is generated. It enables you to
determine what tasks will be conducted at a given point of time.
TIMELINE CHART
S.
No.
TASK
Date of
Start
Date Of
Completion
Requirement
gathering &
Analysis
1.1
Library Staff
02.01.2008
04.01.2008
1.2
06.01.2008
09.01.2008
1.3
Members
(Students &
Teachers)
Search
11.01.2008
14.01.2008
1.4
16.01.2008
23.01.2008
1.5
FPA Calculation
25.01.2008
31.01.2008
1.6
Data Dictionary
02.02.2008
05.02.2008
1.7
ERD
07.02.2008
11.02.2008
1.8
DFD
15.02.2008
21.02.2008
Design
2.1
Data Design
24.02.2008
29.02.2008
2.2
Architectural
Design
Interface Design
10.03.2008
15.03.2008
17.03.2008
23.03.2008
2.3
RISK IDENTIFICATION
This is the first step for recognizing what can go wrong.
Next, each risk is analyzed to determine the likelihood that it will occur and the damage
that it will do if it does occur. Once this information is established, risks are ranked by
their probability and impact. Finally, a plan is developed to manage those risks with high
probability and impact.
CATEGORIES OF RISK
Project Risks
They threaten the project plan. They identify potential budgetary, schedule, personnel,
resource, custom potential and requirements problem and there impact on software
project. They might result in delay in project schedule and cost.
Technical Risks
They identify potential design, implementation, interface verification, and maintenance
problem. They threaten the quality and timeliness of software
Business Risks
They often jeopardize the project or the product & include market risk, strategic risk,
management risk and budget risk.
Risk avoidance
Risk monitoring
RISK STRATEGIES
Reactive
A Reactive Strategy monitors the risk project for likely risk and set aside resources to
deal with them, should they become actual problems. Software team does nothing about
risks until something goes wrong.
Proactive
A Proactive strategy begins long before technical work is initiated. Potential risks are
identified, their probability impact is assessed, and they are ranked by importance.
Complexity
Tables
Screen
Name
No. of fields
1.
Add Member
10
Average
2.
Add Book
Average
3.
Issue With
Member ID
Average
4.
Issue With
Acc. No.
Average
5.
Issue
Average
Return
Low
7.
Return after
Fine
Low
S. No
Screen
Name
No. of fields
1.
Member
Search
11
Average
2.
11
Average
3.
Members
Detail
Book Search
Average
4.
Books Detail
Average
OUTPUT SCREEN
COMPLEXITY TABLE
S. No
Screen
Name
No. of fields
1.
Log-in
Low
2.
Delete Member
Low
3.
Delete Book
Low
4.
Check
Members
Record
Check Books
Detail
Low
Low
5.
S. No
File Name
No. of fields
No. of
records
Complexity
1.
Members
Record
14
Low
2.
Books Record
Low
3.
Staff Record
10
Low
FPA Calculation
UNADJUSTED FUNCTIONAL
POINT CALCULATION
No. of inputs
No. of outputs
No. of files
No. of queries
UFP
Simple
Average
Complex
Total
2*3
0*4
3*7
5*3
5*4
4*5
0*10
0*4
0*6
0*7
0*15
0*6
26
20
21
15
82
Chapter 3
Requirement
Analysis &
Management
INTRODUCTION
This is the process of deriving system requirements through observation of existing
system, discussions with potential users, task analysis and so on. This may involve the
development of one or more different system model. These help the analyst to
understand the system to be more specific.
REQUIREMENT ANALYSIS
Requirement analysis is a software engineering task that bridges the gap between
system level requirements engineering and software design.
System
Level
Engineerin
g
Requirement
Analysis
Software
Design
The software requirements analysis may be divided into five areas of efforts:-
Problem recognition
Recognition of basic problem elements as perceived by the users.
Define all data objects, evaluate the flow and content of information, define and
elaborate all functions, understand software behaviour and establish interface
characteristics.
Modelling
Functional models represent the information that software transforms, functions enabling
the transformation, and behaviour of the system during transformation.
Specification
States the goals and objectives of the software, describing it in context of the
Computer based system.
Review
Changes to the specification may be recommended.
Analysis Principles
1. The information domain of a problem must be represented and understood.
2. The functions to be performed by software must be defined.
3. The behaviour of the software must be represented.
4. The models that depict information function and behaviour must be partitioned in a
manner that uncovers detail in a layered fashion.
5. The analysis process should move from essential information towards implementation
detail.
NON-FUNCTIONAL
REQUIREMENTS
(1)
Server must have enough disk space so as to store large amount of data.
(2)
System should provide data security. Unauthorized users should not be allowed
to access the system so that the integrity and secrecy of each client must be
maintained.
(3)
FUNCTIONAL REQUIREMENTS
(1)
The system must be easy to learn and easy to use so that it is readily accepted
by its prospective users. It must provide easy and convenient means of
communication between different clients.
(2)
(3)
(4)
Client should not be allowed to run while the server is not running.
(5)
(6)
(7)
(8)
System must be fault tolerant i.e. it can continue in operation even after some
system failure has occurred.
DATA
DICTIONARY
S. No.
Data Item
TEACHERS
Type
Length
1.1
Name
String
30
1.2
F. Name
String
30
1.3
M. Name
String
30
1.4
D.O.B.
Integer
10
1.5
Sex
String
1.6
Add.
String
50
1.7
Ph. No.
Integer
10
1.8
Subject
String
10
1.9
Coll. I.D.
Integer
10
1.10
Yr. Of Join
Integer
Description
Contains
Name of the
teacher
Contains
Fathers
Name of the
teacher
Contains
Mothers
Name of the
teacher
Date of Birth
Sex Of the
teacher
Residential
Address
Contact
Number
Subject
taught by the
teacher
College I.D.
No.
Year of
joining
STUDENTS
2.1
Name
String
30
2.2
F. Name
String
30
Contains
Name of the
student
Contains
Fathers
Name of the
student
2.3
M. Name
String
30
2.4
2.5
D.O.B.
Sex
Integer
String
10
6
2.6
Add.
String
50
2.7
Ph. No.
Integer
10
2.8
Course
String
10
2.9
Coll. Code
Integer
10
2.10
Yr. Of
Admission
Integer
ISSUE /
RETURN
3.1
3.2
Dt. Of Issue
Dt. Of Return
Integer
Integer
10
10
3.3
Actual Dt. Of
Return
Integer
10
Contains
Mothers
Name of the
student
Date of Birth
Sex Of the
student
Residential
Address
Contact
Number
Course
chosen by
the student
College Code
of the
student
Year of
admission
Date of issue
Date of
return
Actual Date
of return
MEMBERS
RECORD
4.1
Member I.D.
Integer
10
4.2
No. Of Books
Issued
Integer
4.3
Validity
Integer
Members
I.D. No.
Number of
books issued
on members
account
Date of
expiry of
membership
4.4
Integer
BOOKS
5.1
Name
String
30
5.2
Author
String
30
5.3
Publisher
String
30
5.4
Edition
Integer
5.5
No. Of Copies
Integer
5.6
Price/Copy
Integer
5.7
Acc. No.
Integer
10
5.8
Subject
String
20
String
30
6.1
6.2
Fine to be
paid till
present date
Contains
Name of the
book
Contains
Authors
Name of the
book
Contains
Publishers
Name of the
book
Edition of the
book
No. of copies
available of
the book
Price per
copy of the
book
Acc. Number
of the book
Subject
related to the
book
LIBRARY
STAFF
Name
F. Name
String
30
Contains the
Name of the
staff member
Contains
Fathers
Name of the
staff member
6.3
M. Name
String
30
6.4
6.5
D.O.B.
Sex
Integer
String
10
6
6.6
Add.
String
50
6.7
Ph. No.
Integer
10
6.8
Yr. Of Join
Integer
6.9
Login I.D.
String
20
6.10
Password
String
20
Contains
Mothers
Name of the
staff member
Date of Birth
Sex Of the
staff member
Residential
Address
Contact
Number
Year of
joining
Login I.D. of
staff member
Password of
the staff
member
Entity
Relationship
Diagram
(ERD)
Data Flow
Diagrams
(DFDs)
Level 0 DFD
Level 1 DFD
Chapter 4
Design
Software Design is applied regardless of the software process model that is used. Once
software requirements have been analyzed and specified, software design is the first of
three technical activities design, code generation and test that are required to build
and verify the software.
Design focuses on four major areas of concern: data, architecture, interfaces and
components.
INTERFACE DESIGN
It describes how the software communicates within itself, with systems that interoperate
with it, and with the users who use it.
ARCHITECTURAL DESIGN
It defines the relationship between major structural elements of the software.
DATA DESIGN
It transforms the information domain model created during analysis into the data
structures that will be required to implement the software.
DESIGN MODEL
D
M
COMPONENT
LEVEL
DESIGN
INTERFACE
DESIGN
ARCHITECTURAL
DESIGN
DATA
DESIGN
DATABASE DESIGN
TEACHERS
S.No.
Data
Item
Type
1.1
Name
String
30
1.2
F.Na
me
String
30
1.3
M.Na
me
String
30
1.4
Integer
10
1.5
D.O.B
.
Sex
String
1.6
Add.
String
50
1.7
Ph.
No.
Integer
10
1.8
Subje
ct
Coll.I.
D.
Yr. Of
Join
String
10
Integer
10
Integer
1.9
1.10
Contains
Name of the
teacher
Contains
Fathers
Name of the
teacher
Contains
Mothers
Name of the
teacher
Date of Birth
Sex Of the
teacher
Residential
Address
Contact
Number
Subject
taught by the
teacher
College I.D.
No.
Year of
joining
YES
STUDENTS
S.No.
Data
Item
Type
2.1
Name
String
30
2.2
F.Name
String
30
2.3
M.
Name
String
30
2.4
2.5
D.O.B.
Sex
Integer
String
10
6
2.6
Add.
String
50
2.7
Ph. No.
Integer
10
2.8
Course
String
10
2.9
Coll.
Code
Yr. Of
Admiss
ion
Integer
10
Integer
2.10
Contains
Name of the
student
Contains
Fathers
Name of the
student
Contains
Mothers
Name of the
student
Date of Birth
Sex Of the
student
Residential
Address
Contact
Number
Course
chosen by
the student
College Code
of the
student
Year of
admission
O
O
O
M
YES
ISSUE / RETURN
S.No.
3.1
3.2
3.3
Data
Item
Type
Dt. Of Integer
Issue
Dt. Of Integer
Return
Actual
Dt. Of Integer
Return
Date of issue
10
Date of
return
10
Actual Date
of return
Members Record
S.No.
4.1
Data
Item
Type
Member Integer
I.D.
4.2
No. Of
Books
Issued
Integer
4.3
Validity
Integer
4.4
Members
I.D. No.
Number of
books issued
on members
account
Date of
expiry of
membership
YES
Fine to be
paid till
present date
BOOKS
S.No.
Data
Item
Type
5.1
Name
String
30
5.2
Author
String
30
5.3
Publisher
String
30
5.4
Integer
5.5
Edition
No. Of
Copies
Integer
5.6
Price/Copy Integer
5.7
Acc. No.
Integer
10
5.8
Subject
String
20
Contains
Name of the
book
Contains
Authors
Name of the
book
Contains
Publishers
Name of the
book
Edition
No. of copies
available
Price per
copy of the
book
Acc. Number
of the book
Subject
related to the
book
YES
LIBRARY STAFF
S.No.
Data
Item
Type
6.1
Name
String
30
6.2
F.Name
String
30
6.3
M.Name
String
30
6.4
D.O.B.
Integer
10
6.5
6.6
Sex
Add.
String
String
6
50
6.7
Ph. No.
Integer
10
6.8
Yr. Of
Join
Integer
6.9
Login I.D.
String
20
6.10
Password String
20
Contains
Name of the
staff member
Contains
Fathers
Name of staff
the member
Contains
Mothers
Name of the
staff member
Date of Birth
Sex Of the
staff member
Residential
Address
Contact
Number
Year of
joining
Login I.D. of
staff member
Password of
the staff
member
M
O
YES
Pseudo Code
Login Screen
This screen takes the unique login-id & password of the library staff member allowing
him/her to use the system at his/her level of interference.
Menu Screen
This screen asks the library staff member to input the choice of task he/she wants to
perform. Choices include- Add/Delete a member, Add/Delete a book, Search for a
member/book, Check the details of a particular member/book, Issue/Return a book etc.
Delete a member
This screen takes the members id of the member to be deleted as the input from the
library staff & then deletes the member from the library records unless an invalid
member id is not entered by the staff member.
Delete a book
This screen takes the Acc. No. of the book to be deleted as the input from the library
staff & then deletes the book from the library records unless an invalid Acc. No. is not
entered by the staff member. The book deleted no longer remains available for
Issue/return purposes.
Issue
This screen takes member id, Acc. No., Date of issue, Date of return from the library
staff & then issues the selected book the member unless an invalid member id or Acc.
No. is not entered by the staff member or the members account is not full (max. of
5books is taken as an assumption) or else the book is not already issued to some other
member.
Return
This screen takes the member id, Acc. No. as the input from the library staff & then
displays the details of the book. The details include- Date of issue, Date of return. Date
of actual return is entered by the staff member & the fine is calculated if the Actual date
of return is later than the Date of return specified to the member. The book is then
deleted from the members account when all dues are cleared and it is again available
for issue/return purposes.
Architectural Design
Interface Design