Library Management System Project _ Software Development
Library Management System Project _ Software Development
Library Management System is one of the most common software development projects till date. In
this article, we are going to make the Library Management System software development project,
from scratch, for final year students. We will be covering all the steps you have to do while
developing this project.
1. Team Formation
2. Topic Selection
3. Creating Project Synopsys
4. Requirement Gathering
5. Coding or Implementation
6. Testing
7. Project Presentation
8. Writing a Research Paper
In Our project as we will be exploring about web application for Library Management system
project so we will be required below skill sets.
Choose a topic related to your field of study that is of great interest to you. It is advised that you
pick a topic that has a powerful motive. For instance, a project that helps humankind will truly be
unmatched. Another factor to keep in mind is to choose topics that aren’t very common.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 4/88
10/14/24, 3:00 PM Library Management System Project | Software Development
You Can Pick some of the unique Software Development Ideas from Top 50 Software
Development Ideas for Beginners article.
Topic Planning: In this phase team will gather and try to search a topic or problem statement by
brainstorming , reverse thinking or any other strategy and select a problem which is challenging
in nature and solvable by using their combined knowledge of tech.
Defining & Set Objective: After planning the problem statement we will define clear problem
statement and its objectives.
Result : In the end of this phase we will be having a problem statement for our project.
After the selection of the topic we are going to start our project work in the following steps:
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 5/88
10/14/24, 3:00 PM Library Management System Project | Software Development
A project synopsis serves as a concise overview or summary of a proposed project, offering a brief
but comprehensive insight into its objectives, scope, methodology, and expected outcomes. It
typically acts as a preliminary document, providing supervisors, or evaluators with a quick
understanding of the project before they delve into more detailed documentation.
The project synopsis usually includes key elements such as the project title, problem statement
or context, objectives, scope and limitations, methodology or approach, expected outcomes, and
the significance of the project in the broader context. It serves as a roadmap, guiding readers
through the fundamental aspects of the project and helping them grasp its purpose and potential
impact.
Below are some of the points we have to cover in the synopsis report :
Project Title
Introduction of Project
Problem Statement
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 6/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Proposed Solution
Objective of the Project
Scope of the Project
Methodologies used
ER Model
Use case Diagram
Dataflow Diagram
Features of the project
For Users
For Admin
Impact of the project
Limitations of the project
Future scope of the project
A Library Management System (LMS) is a software application that simplifies and automates the
operations of libraries. It is a complete system for managing library duties such as purchases,
member management, monitoring, storing, and circulation. The primary objective of an LMS is to
properly organize and manage the resources available in a library, making it easier for librarians to
conduct everyday operations and create a user-friendly experience for users.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 7/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Conventional libraries are having difficulty integrating various formats, including multimedia and e-
resources, because of outdated management systems. Inefficient cataloguing, resource tracking
bottlenecks, and a lack of analytics tools hinder librarians from optimizing collections and improving
user experiences. To close the gap, libraries require a modern library management system with an
intuitive interface, effective cataloguing, and analytics capabilities to resurrect libraries as vibrant
centres of knowledge and community involvement in the digital era.
To solve the traditional issue we are building a Web development project of library
management system using Html , Bootstrap , Php and MYSQL in which we will be providing
User-friendly interface for easy navigation , Efficient book search functionality , seamless book
issuance and return policy , automated tracking of library activities, Regular maintenance of
book availability records and Secure login and access control managed by the admin.
The objective of the Library Management System (LMS) project is to design and implement an
efficient and user-friendly system that automates the various tasks associated with managing
a library.
1. Efficient Book Management: Streamlining the process of book acquisition, cataloguing, and
tracking to ensure an organized and easily accessible collection.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 8/88
10/14/24, 3:00 PM Library Management System Project | Software Development
2. User-Friendly Interface: Developing an intuitive and user-friendly interface for library staff and
patrons to facilitate easy navigation, quick retrieval of information, and seamless interaction with
the system.
3. Automation of Processes: Automating routine library tasks such as book check-in and check-
out, reservation management, and overdue notifications to improve operational efficiency and
reduce manual workload.
4. Inventory Management: Implementing a robust inventory management system to monitor stock
levels, identify popular titles, and facilitate timely reordering of books to maintain a well-stocked
library.
5. Enhanced Search and Retrieval: Implementing an advanced search mechanism to allow users
to quickly locate books, authors, or genres, promoting a more efficient and enjoyable library
experience.
6. User Account Management: Providing features for patrons to create accounts, track their
borrowing history, and manage personal preferences, fostering a personalized and user-centric
library experience.
7. Reporting and Analytics: Incorporating reporting tools to generate insights into library usage,
popular genres, and circulation trends, enabling informed decision-making for library
administrators.
8. Security and Access Control: Implementing robust security measures to protect sensitive library
data and incorporating access controls to ensure that only authorized personnel have access to
specific functionalities.
9. Integration with Other Systems: Offering the flexibility for integration with other academic or
administrative systems to create a cohesive and interconnected information ecosystem within the
institution.
10. Scalability: Designing the system to be scalable, allowing for easy expansion and adaptation to
the evolving needs of the library as it grows over time.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 9/88
10/14/24, 3:00 PM Library Management System Project | Software Development
By achieving these objectives, the Library Management System project aims to enhance the overall
efficiency, accessibility, and user satisfaction of the library services, ultimately contributing to an
enriched learning and research environment within the institution.
It may help collecting perfect management in details . In a very short time the collection will
be obvious simple and sensible. it will help a person to know the management of passed year
perfectly and vividly. it also helps in current all works relative to library management system
project. It will reduce the cost of collecting the management and collection procedure will go
on smoothly.
The scope of the project of library management system typically covers the following aspects:
1. Functional Scope:
Book Management: The system should cover tasks related to book acquisition, cataloguing,
and organization within the library.
User Management: Creating and managing user accounts, handling patron information, and
providing authentication for library services.
Circulation Management: Automating the process of book check-in, check-out, and
reservation to streamline circulation activities.
Search and Retrieval: Implementing a robust search mechanism for users to quickly locate
books, authors, and other library resources.
Reporting and Analytics: Generating reports on library usage, circulation trends, and popular
genres to aid decision-making.
Security and Access Control: Ensuring the security of sensitive data and implementing
access controls to manage user privileges.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 10/88
10/14/24, 3:00 PM Library Management System Project | Software Development
2. Non-Functional Scope:
Usability: Ensuring a user-friendly interface that promotes ease of navigation and a positive
user experience for both library staff and patrons.
Scalability: Designing the system to accommodate growth in the library’s collection and user
base over time.
Performance: Meeting performance standards to ensure timely response and efficient
processing of library transactions.
Reliability: Building a reliable system that minimizes downtime and ensures the continuous
availability of library services.
Security: Incorporating robust security measures to protect against unauthorized access, data
breaches, and other security threats.
In LMS we are using various technologies and new methodologies to solve our problems. Below
are the detailed description about the technology used and methods we are applying in our
project.
Technology Used:
Here we are developing a Library Management System (LMS) using HTML, Bootstrap for the
frontend, and MySQL, PHP, and JavaScript for the backend involves a structured
methodology.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 11/88
10/14/24, 3:00 PM Library Management System Project | Software Development
An Entity-Relationship Diagram (ERD) for a Library Management System (LMS) models the
entities and their relationships within the system. Below is a simplified ERD for a Library
Management System. In Synopsys we make a rough ER Diagram to give a idea about the
working of the project.
Entities:
Book: Attributes: ISBN (Primary Key), Title, Author, Genre, Published Year, Copies Available, etc.
Readers: Attributes: User ID (Primary Key), Name, Email, Address, Phone Number, etc.
Staff: Attributes: Staff ID (Primary Key), Name, etc.
Authentication System: Attributes: Login ID (Primary Key) and Password
Publisher: Attributes: Publisher ID (Primary Key) , Year of Publication, Name, etc.
Reports: Attributes: Reg No(Primary Key), User ID, Book No, Issue/Return
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 12/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Relationships:
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 13/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Data Flow Diagram (DFD) serves as a visual representation of the flow of information within the
system. This diagram illustrates how data, such as book information, user details, and transaction
records, moves between various components of the LMS.
Processes, represented by circles or ovals, Depict activities such as book issuance, returns, and
cataloguing.
Data stores, depicted by rectangles, represent where information is stored, including databases
housing book records.
Data flows, indicated by arrows, showcase how data moves between processes, data stores,
and external entities like library patrons.
The DFD provides a concise yet comprehensive overview of the LMS’s data flow and interactions,
aiding in the analysis, design, and communication of the system’s functional aspects.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 14/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Use case diagram referred as a Behaviour 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.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 15/88
10/14/24, 3:00 PM Library Management System Project | Software Development
An activity diagram is a type of Unified Modeling Language (UML) diagram used to model the
workflow of a system or process. It provides a visual representation of the sequence of
actions, decisions, and activities that take place within a system or business process. Activity
diagrams are particularly useful for understanding, designing, and documenting complex
processes and interactions in a clear and structured manner.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 16/88
10/14/24, 3:00 PM Library Management System Project | Software Development
The proposed Library Management System (LMS) is designed to simplify the day-to-day activities
of a library, providing features for both users and administrators.
For Users:
2. Student Login:
This feature Provides authenticated access for registered users to use the system.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 17/88
10/14/24, 3:00 PM Library Management System Project | Software Development
3. Search Book:
This feature allow users to search for books based on criteria such as book ID, book name, or
author name, enhancing the ease of locating desired materials.
4. Issue Book:
This feature allow users in borrowing books from the library by recording the transaction and
updating the availability status.
5. Return Book:
This feature allows users to return books either before the due date or after the specified
time with a late fine, ensuring proper management of borrowed materials.
For Admin:
2. Manage Books:
This feature allow librarians to keep track of the library’s books by adding new books or
removing them.
3. Manage Student:
This feature allow librarians to keep track of number of students and their details.
5. Defaulter List:
This feature allows librarians to show the details of the student who did not return the books
before the deadline.
6. Issue Book:
This feature allow users in borrowing books from the library by recording the transaction and
updating the availability status.
The system implements a secure login mechanism for users, and administrators. The admin has
the authority to manage user access and ensure data integrity.
The proposed Library Management System (LMS) , developed using MySQL and Java NetBeans, is
expected to have a substantial impact on real-life library operations, benefiting both librarians and
patrons in several ways:
Enhanced User Experience: The user-friendly interface facilitates easy navigation, making it
more convenient for library patrons to search for and access resources. This improved experience
is likely to encourage greater library utilization.
Time Efficiency: The efficient book search functionality and seamless book issuance and return
process significantly reduce the time spent by both librarians and patrons. Quick transactions
and streamlined processes contribute to a more time-efficient library environment.
Automated Tracking for Efficiency: Automation of library activities, such as tracking book
transactions and due dates, enhances operational efficiency. Librarians can focus on more
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 19/88
10/14/24, 3:00 PM Library Management System Project | Software Development
strategic tasks, and patrons benefit from timely reminders and notifications, reducing instances
of late returns.
Accurate Book Availability Records: The regular maintenance of accurate book availability
records ensures that the library’s collection remains up-to-date. Patrons can trust the system to
provide reliable information on the availability of specific titles, contributing to a more satisfying
library experience.
Improved Security and Access Control: The implementation of secure login and access control
measures ensures the integrity and confidentiality of library data. Librarians can manage user
access efficiently, and patrons can trust that their personal information is secure, fostering trust
in the system.
Resource Optimization: With the ability to track library activities and user preferences,
librarians can optimize the library’s resources. This includes restocking popular titles, identifying
underutilized resources, and making informed decisions about future acquisitions, ultimately
enhancing the library’s overall value.
Adaptation to Modern Technologies: The integration of barcode or RFID technology brings the
library into the modern age, aligning it with current technological trends. This not only improves
the efficiency of book transactions but also showcases the library’s commitment to staying
relevant in the digital era.
Library Management System (LMS) can offer many benefits, it may also have certain limitations.
Here are some potential constraints associated with such a system:
Limited Scalability: Depending on the design and architecture, scalability might be limited,
making it challenging to handle a significant increase in users or data volume.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 20/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Performance Issues: Large datasets or complex queries may result in slower performance,
especially if optimization techniques are not adequately implemented.
Security Concerns: Without careful attention to security practices, there might be vulnerabilities
such as SQL injection or cross-site scripting, posing risks to data integrity and user privacy.
Offline Accessibility: A web-based LMS may have limitations in providing offline access to
resources, which could be a constraint in environments with intermittent or no internet
connectivity.
Browser Compatibility: Compatibility issues may arise across different browsers, requiring
additional effort to ensure a consistent user experience.
Limited User Interface Customization: HTML and CSS provide styling capabilities, but
achieving highly customized and dynamic user interfaces might be more challenging compared
to frameworks with extensive UI libraries.
Dependency on JavaScript: If users disable JavaScript in their browsers, certain interactive
features might not function correctly, affecting the overall user experience.
Complexity in Real-time Updates: Real-time updates, such as simultaneous editing or live
notifications, may require more advanced technologies (like WebSocket) and could add
complexity to the system.
Dependency on Server-Side Processing: Heavy reliance on server-side processing with PHP
might lead to increased server loads, affecting response times, especially during peak usage
periods.
Limited Mobile Responsiveness: While Bootstrap and CSS can enhance mobile responsiveness,
ensuring a seamless experience across all devices may require additional effort and testing.
To mitigate these limitations, it’s essential to continuously monitor and update the system, follow
best practices in coding and security, and consider adopting additional technologies or frameworks
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 21/88
10/14/24, 3:00 PM Library Management System Project | Software Development
based on evolving project requirements. Regular testing and user feedback can also help identify
and address potential constraints.
The future scope of a Library Management System (LMS) developed using HTML, CSS, JS, PHP,
and MySQL is promising, with opportunities for enhancement and expansion. Some potential future
avenues for the project include:
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 22/88
10/14/24, 3:00 PM Library Management System Project | Software Development
approach can inform decision-making for collection development and resource allocation.
Multi-language Support: Expand the system’s reach by incorporating multi-language support
to cater to diverse user populations and potentially attract a global user base.
Enhanced Security Measures: Stay abreast of evolving cybersecurity threats and implement
advanced security measures to safeguard user data and ensure the integrity of the system.
Customization Options: Provide users with more customization options, allowing them to
personalize their profiles, preferences, and interface settings for a tailored experience.
Voice Recognition and AI Assistants: Explore the integration of voice recognition technology
and AI-driven virtual assistants to enable hands-free interactions and enhance the overall user
experience.
Collaboration with External Systems: Collaborate with external systems, such as publishers or
other libraries, to expand the availability of resources and streamline inter-library loans.
User Feedback Mechanisms: Strengthen user feedback mechanisms to continuously gather
input on system performance, identify areas for improvement, and enhance user satisfaction.
After Creating Synopsys of our project we will start building Software Requirement Specification for
our project , which will be out next phase .
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 23/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Introduction
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 24/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Purpose
Scope
References
Overall Description
Product Perspective
Product Function
User Classes and characteristics
Operating Environment
Assumptions and Dependencies
Functional Requirements
Software Requirements
Hardware Requirements
Database Requirements
Non-Functional Requirement
Usability Requirements
Security Requirements
Availability Requirements
Scalability Requirements
Performance Requirements
Design
Control Flow Diagram
ER Model of LMS
Use Case Diagram
System Features
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 25/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Note: To know more about What is a SRS Document or How to write a good SRS for your Project
follow these articles.
Let’s Start building a Software Requirement Specification for Library Management System Project
Document for our project:
4.1.1 Purpose:
The main objective of this document is to illustrate the requirements of the project Library
Management system. The document gives the detailed description of the both functional and non-
functional requirements proposed by the client.
The purpose of this project is to provide a friendly environment to maintain the details of books and
library members also this project maintains easy circulation system using computers and to provide
different reports. It describes the hardware and software interface requirements using ER Models
and UML diagrams.
Library Management System Project is basically updating the manual library system into an
internet-based web application so that the users can know the details of their accounts, availability
of books and maximum limit for borrowing and many more features.
The project is specifically designed for the use of librarians and library users. The product will work
as a complete user interface for library management process and library usage from ordinary users.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 26/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Library Management System can be used by any existing or new library to manage its books and
book borrowing, insertion and monitoring. It is especially useful for any educational institute where
modifications in the content can be done easily according to requirements.
The project can be easily implemented under various situations. We can add new features as and
when we require, making reusability possible as there is flexibility in all the modules. The
language used for developing the project is Html, Bootstrap and php and mysql for backend. In
terms of performance, tools available, cross platform compatibility, libraries, cost (freely available),
and development process these languages are pretty compatible.
4.1.3 References:
Books:
LMS is a replacement for the ordinary library management systems which depend on paper work
for recording book and users’ information. LMS will provide an advanced book search mechanism
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 27/88
10/14/24, 3:00 PM Library Management System Project | Software Development
and will make it easy to borrow, insert and index a book in the library.
The proposed Library Management System (LMS) is designed to simplify the day-to-day activities
of a library, providing features for both users and administrators.
The system implements a secure login mechanism for users, and administrators. The admin has
the authority to manage user access and ensure data integrity.
For Users:
2. Student Login:
This feature Provides authenticated access for registered users to use the system.
3. Search Book:
This feature allow users to search for books based on criteria such as book ID, book name, or
author name, enhancing the ease of locating desired materials.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 28/88
10/14/24, 3:00 PM Library Management System Project | Software Development
4. Issue Book:
This feature allow users in borrowing books from the library by recording the transaction and
updating the availability status.
5. Return Book:
This feature allows users to return books either before the due date or after the specified
time with a late fine, ensuring proper management of borrowed materials.
For Admin:
2. Manage Books:
This feature allow librarians to keep track of the library’s books by adding new books or
removing them.
3. Manage Student:
This feature allow librarians to keep track of number of students and their details.
5. Defaulter List:
This feature allows librarians to show the details of the student who did not return the books
before the deadline.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 29/88
10/14/24, 3:00 PM Library Management System Project | Software Development
6. Issue Book:
This feature allow users in borrowing books from the library by recording the transaction and
updating the availability status.
Class Diagram for Library Management System simply describes structure of Library Management
System class, attributes, methods or operations, relationship among objects.
Aggregation and Multiplicity are two important points that need to take into consideration while
designing a Class Diagram. Let us understand in detail.
Aggregation:
Aggregation simply shows a relationship where one thing can exist independently of other
thing. It means to create or compose different abstractions together in defining a class.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 30/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Multiplicity:
Multiplicity means that number of elements of a class is associated with another class. These
relations can be one-to-one, many-to-many, and many-to-one or one-to-many. For denoting one
element we use 1, for zero elements we use 0, and for many elements we use *.
We can see in diagram; many users are associated with many books denoted by * and this
represents a many-to-many type of relationship. One user has only one account that is denoted
by 1 and this represents a one-to-one type of relationship.
Many books are associated with one librarian and this represents many-to-one or one-to-
many type of relationship. All these relationships are shown in diagram.
The information of all users, books and libraries must be stored in a database that is accessible
by the website.
MS SQL Server will be used as SQL engine and database.
The Online Library System is running 24 hours a day.
Users may access LMS from any computer that has Internet browsing capabilities and an
Internet connection.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 31/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Users must have their correct usernames and passwords to enter into their online accounts and
do actions.
The specific hardware and software due to which the product will be run.
On the basis of listing requirements and specification the project will be developed and run.
The end users (admin) should have proper understanding of the product.
The system should have the general report stored.
The information of all the users must be stored in a database that is accessible by the Library
System.
Any update regarding the book from the library is to be recorded to the database and the data
entered should be correct.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 32/88
10/14/24, 3:00 PM Library Management System Project | Software Development
This is a broad level diagram of the project showing a basic overview. The users can be either staff
or student. This System will provide a search functionality to facilitate the search of resources. This
search will be based on various categories . Further the library staff personal can add/update the
resources and the resource users from the system. The users of the system can request
issue/renew/return of books for which they would have to follow certain criteria.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 33/88
10/14/24, 3:00 PM Library Management System Project | Software Development
The Library Management System project 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 catalogue 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.
Readers are registered with their user_id, email, name (first name, last name), Phone no
(multiple entries allowed), communication address. The staff keeps track of readers.
Readers can return/reserve books that stamps with issue date and return date. If not returned
within the prescribed time period, it may have a due date too.
Staff also generate reports that has readers id, registration no of report, book no and
return/issue info.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 34/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Book Entity : It has authno, isbn number, title, edition, category, price. ISBN is the Primary Key
for Book Entity.
Reader Entity : It has UserId, Email, address, phone no, name. Name is composite attribute of
firstname and lastname. Phone no is multi valued attribute. UserId is the Primary Key for
Readers entity.
Publisher Entity : It has PublisherId, Year of publication, name. PublisherID is the Primary Key.
Authentication System Entity : It has LoginId and password with LoginID as Primary Key.
Reports Entity : It has UserId, Reg_no, Book_no, Issue/Return date. Reg_no is the Primary Key
of reports entity.
Staff Entity : It has name and staff_id with staff_id as Primary Key.
Reserve/Return Relationship Set : It has three attributes: Reserve date, Due date, Return date.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 35/88
10/14/24, 3:00 PM Library Management System Project | Software Development
A reader can reserve N books but one book can be reserved by only one reader. The
relationship 1:N.
A publisher can publish many books but a book is published by only one publisher. The
relationship 1:N.
Staff keeps track of readers. The relationship is M:N.
Staff maintains multiple reports. The relationship 1:N.
Staff maintains multiple Books. The relationship 1:N.
Authentication system provides login to multiple staffs. The relation is 1:N.
Processes, represented by circles or ovals, Depict activities such as book issuance, returns, and
cataloguing.
Data stores, depicted by rectangles, represent where information is stored, including databases
housing book records.
Data flows, indicated by arrows, showcase how data moves between processes, data stores,
and external entities like library patrons.
Let’s draw an Data Flow Diagram of Library Management System Project:
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 36/88
10/14/24, 3:00 PM Library Management System Project | Software Development
The DFD provides a concise yet comprehensive overview of the LMS’s data flow and interactions,
aiding in the analysis, design, and communication of the system’s functional aspects.
The LMS should store all information about librarian and other users (student students and
faculty members) like their login info , books issued etc.
The LMS should store all information about the books and users in two separated databases.
The LMS should allow searching books / journals by author, title , keywords or availability.
The LMS should generate request’s reports for librarian , upon which he/she could make
decisions about accepting / rejecting the requests.
The LMS should provide the module to Issue or return the books.
The LMS should provide modules to search request and renew books .
The Admin must be able to add/remove/manage books or users.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 37/88
10/14/24, 3:00 PM Library Management System Project | Software Development
This software package is developed using html , bootstrap for front end . Php and MY SQL Server
as the back end to store the database for backend we are using Xampp server.
Processor: Intel core i3 or above for a stable experience and fast retrieval of data.
Hard Disk: 40GB and above
RAM: 256 MB or more, recommended 2 GB for fast reading and writing capabilities which will
result in better performance time.
Our user interface should be interactive simple and easy to understand . The system should
prompt for the user and administrator to login to the application for proper input criteria.
Library management system shall handle expected and non – expected errors in ways that
prevent loss in information and long downtime period.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 38/88
10/14/24, 3:00 PM Library Management System Project | Software Development
The system shall accommodate high number of books and users without any fault.
Responses to view information shall take no longer than 5 seconds to appear on the screen.
LMS product shall handle expected and non-expected errors in ways that prevent loss in
information and long downtime period.
Appendix A:
G: GUI.
K: Key. L: Library, Librarian.
N: Non-functional Requirement.
O: Operating environment;
P: Performance, Perspective, Purpose;
R: Requirement, Requirement attributes;
S: Safety, Scope, Security, System features;
U: User, User class and characteristics, User requirement;
Glossary:
The following are the list of conventions and acronyms used in this document and the project as
well:
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 40/88
10/14/24, 3:00 PM Library Management System Project | Software Development
protocols set by the association. Conventional programming tools like compilers, interpreters,
debuggers, etc. are also put into use at this stage.
In Our project as we will be using php and mysql so we will install all required software’s:
After we downloaded the above required software now we will start creating our project . In the
following article We will discuss about different different modules compiled with same category.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 41/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Now you can create your own database by using New button.
Create a database named LMS and inside it create separate databases like:
Below is the SQL code to create those tables in the database, You can modify the code to create
your own database for the project.
SQL
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 42/88
10/14/24, 3:00 PM Library Management System Project | Software Development
--
-- Dumping data for table `admins`
--
-- --------------------------------------------------------
--
-- Table structure for table `authors`
--
--
-- Dumping data for table `authors`
--
-- --------------------------------------------------------
--
-- Table structure for table `books`
--
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 43/88
10/14/24, 3:00 PM Library Management System Project | Software Development
--
-- Dumping data for table `books`
--
-- --------------------------------------------------------
--
-- Table structure for table `category`
--
--
-- Dumping data for table `category`
--
-- --------------------------------------------------------
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 44/88
10/14/24, 3:00 PM Library Management System Project | Software Development
--
-- Table structure for table `issued_books`
--
--
-- Dumping data for table `issued_books`
--
-- --------------------------------------------------------
--
-- Table structure for table `users`
--
--
-- Dumping data for table `users`
--
INSERT INTO `users` (`id`, `name`, `email`, `password`, `mobile`, `address`) VALUES
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 45/88
10/14/24, 3:00 PM Library Management System Project | Software Development
(4, 'user', '[email protected]', 'user@1234', 2147483644, 'XYZ Coloney, PQR Nagar , Jaipur');
--
-- Indexes for dumped tables
--
--
-- Indexes for table `admins`
--
ALTER TABLE `admins`
ADD PRIMARY KEY (`id`);
--
-- Indexes for table `authors`
--
ALTER TABLE `authors`
ADD PRIMARY KEY (`author_id`);
--
-- Indexes for table `books`
--
ALTER TABLE `books`
ADD PRIMARY KEY (`book_id`);
--
-- Indexes for table `category`
--
ALTER TABLE `category`
ADD PRIMARY KEY (`cat_id`);
--
-- Indexes for table `issued_books`
--
ALTER TABLE `issued_books`
ADD PRIMARY KEY (`s_no`);
--
-- Indexes for table `users`
--
ALTER TABLE `users`
ADD PRIMARY KEY (`id`);
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 46/88
10/14/24, 3:00 PM Library Management System Project | Software Development
--
-- AUTO_INCREMENT for dumped tables
--
--
-- AUTO_INCREMENT for table `admins`
--
ALTER TABLE `admins`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
--
-- AUTO_INCREMENT for table `authors`
--
ALTER TABLE `authors`
MODIFY `author_id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=107;
--
-- AUTO_INCREMENT for table `books`
--
ALTER TABLE `books`
MODIFY `book_id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=9;
--
-- AUTO_INCREMENT for table `category`
--
ALTER TABLE `category`
MODIFY `cat_id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=10;
--
-- AUTO_INCREMENT for table `issued_books`
--
ALTER TABLE `issued_books`
MODIFY `s_no` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=19;
--
-- AUTO_INCREMENT for table `users`
--
ALTER TABLE `users`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=8;
COMMIT;
After creating the database we can now start building the frontend of our project.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 48/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Code:
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<title>Library Management System</title>
<meta charset="utf-8" name="viewport" content="width=device-width,intial-scale=1">
<link rel="stylesheet" type="text/css" href="bootstrap-4.4.1/css/bootstrap.min.css">
<script type="text/javascript" src="bootstrap-4.4.1/js/juqery_latest.js"></script>
<script type="text/javascript" src="bootstrap-4.4.1/js/bootstrap.min.js"></script>
</head>
<style type="text/css">
#main_content{
background: rgba(245, 245, 245, 0.9);
padding: 50px;
}
#side_bar{
background: rgba(245, 245, 245, 0.9);
padding: 50px;
}
body{
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 49/88
10/14/24, 3:00 PM Library Management System Project | Software Development
background: rgba(245, 245, 245, 0.4);
background-image: url("https://img.freepik.com/free-photo/abundant-collection-antique-
books-wooden-shelves-generated-by-ai_188544-29660.jpg?
size=626&ext=jpg&ga=GA1.1.1546980028.1704240000&semt=sph");
}
</style>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="index.php">Library Management System</a>
</div>
<ul class="nav navbar-nav navbar-right">
<li class="nav-item">
<a class="nav-link" href="index.php">User Login</a>
</li>
<li class="nav-item">
<a class="nav-link" href="admin/indexad.php">Admin Login</a>
</li>
<li class="nav-item">
<a class="nav-link" href="signup.php"></span>Signup</a>
</li>
</ul>
</div>
</nav>
<div class="row">
<div class="col-md-4" id="side_bar">
<h5>Today's Quote</h5>
<h6>“There is more treasure in books than in all the pirate's loot on Treasure
Island"</h6>
<p>~ Walt Disney</p>
<h5>Library Timing</h5>
<ul>
<li>Opening: 9:00 AM</li>
<li>Closing: 12:00 PM</li>
</ul>
<h5>What We provide ?</h5>
<ul>
<li>AC Rooms</li>
<li>Free Wi-fi</li>
<li>Learning Environment</li>
<li>Discussion Room</li>
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 50/88
10/14/24, 3:00 PM Library Management System Project | Software Development
<li>Free Electricity</li>
</ul>
</div>
<div class="col-md-8" id="main_content">
<center><h3>User Login Form</h3></center>
<form action="" method="post">
<div class="form-group">
<label for="email">Email ID:</label>
<input type="text" name="email" class="form-control" required>
</div>
<div class="form-group">
<label for="password">Password:</label>
<input type="password" name="password" class="form-control" required>
</div>
<button type="submit" name="login" class="btn btn-primary">Login</button> |
<a href="signup.php"> Signup now !!</a>
</form>
<?php
if(isset($_POST['login'])){
$connection = mysqli_connect("localhost","root","");
$db = mysqli_select_db($connection,"lms");
$query = "select * from users where email = '$_POST[email]'";
$query_run = mysqli_query($connection,$query);
while ($row = mysqli_fetch_assoc($query_run)) {
if($row['email'] == $_POST['email']){
if($row['password'] == $_POST['password']){
$_SESSION['name'] = $row['name'];
$_SESSION['email'] = $row['email'];
$_SESSION['id'] = $row['id'];
header("Location: user_dashboard.php");
}
else{
?>
<br><br><center><span class="alert-danger">Wrong Password !!
</span></center>
<?php
}
}
}
}
?>
</div>
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 51/88
10/14/24, 3:00 PM Library Management System Project | Software Development
</div>
</body>
</html>
If you are a new user you can signup and then use login for user dashboard.
These will be one button for logging out from this page.
Code:
<?php
session_start();
function get_user_issue_book_count(){
$connection = mysqli_connect("localhost","root","");
$db = mysqli_select_db($connection,"lms");
$user_issue_book_count = 0;
$query = "select count(*) as user_issue_book_count from issued_books where student_id
= $_SESSION[id]";
$query_run = mysqli_query($connection,$query);
while ($row = mysqli_fetch_assoc($query_run)){
$user_issue_book_count = $row['user_issue_book_count'];
}
return($user_issue_book_count);
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Dashboard</title>
<meta charset="utf-8" name="viewport" content="width=device-width,intial-scale=1">
<link rel="stylesheet" type="text/css" href="bootstrap-4.4.1/css/bootstrap.min.css">
<script type="text/javascript" src="bootstrap-4.4.1/js/juqery_latest.js"></script>
<script type="text/javascript" src="bootstrap-4.4.1/js/bootstrap.min.js"></script>
</head>
<style type="text/css">
body{
background: rgba(245, 245, 245, 0.4);
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 53/88
10/14/24, 3:00 PM Library Management System Project | Software Development
background-image: url("https://img.freepik.com/free-photo/abundant-collection-antique-
books-wooden-shelves-generated-by-ai_188544-29660.jpg?
size=626&ext=jpg&ga=GA1.1.1546980028.1704240000&semt=sph");
}
</style>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="admin_dashboard.php">Library Management System
(LMS)</a>
</div>
<font style="color: white"><span><strong>Welcome: <?php echo $_SESSION['name'];?>
</strong></span></font>
<font style="color: white"><span><strong>Email: <?php echo $_SESSION['email'];?>
</strong></font>
<ul class="nav navbar-nav navbar-right">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" data-toggle="dropdown">My Profile </a>
<div class="dropdown-menu">
<a class="dropdown-item" href="view_profile.php">View Profile</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="edit_profile.php">Edit Profile</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="change_password.php">Change Password</a>
</div>
</li>
<li class="nav-item">
<a class="nav-link" href="logout.php">Logout</a>
</li>
</ul>
</div>
</nav>
<div class="row">
<div class="col-md-3" style="margin: 25px">
<div class="card bg-light" style="width: 300px">
<div class="card-header">Book Issued</div>
<div class="card-body">
<p class="card-text">No of book issued: <?php echo
get_user_issue_book_count();?></p>
<a class="btn btn-success" href="view_issued_book.php">View Issued
Books</a>
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 54/88
10/14/24, 3:00 PM Library Management System Project | Software Development
</div>
</div>
</div>
<div class="col-md-3"></div>
<div class="col-md-3"></div>
</div>
</body>
</html>
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 55/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Registered Users
Details of available books.
Details of all book’s categories.
Details of authors.
Issued books details.
Managerial features:
Admin can add or manage existing books.
Admin can add or manage categories of books.
Admin can add or manage the authors.
One Important feature is Admin can Issue Book to any user.
Code:
Regusers.php registered_user.php
<?php
require("functions.php");
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<title>Dashboard</title>
<meta charset="utf-8" name="viewport" content="width=device-width,intial-scale=1">
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 56/88
10/14/24, 3:00 PM Library Management System Project | Software Development
<link rel="stylesheet" type="text/css" href="../bootstrap-4.4.1/css/bootstrap.min.css">
<script type="text/javascript" src="../bootstrap-4.4.1/js/juqery_latest.js"></script>
<script type="text/javascript" src="../bootstrap-4.4.1/js/bootstrap.min.js"></script>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="admin_dashboard.php">Library Management System
(LMS)</a>
</div>
<font style="color: white"><span><strong>Welcome: <?php echo $_SESSION['name'];?>
</strong></span></font>
<font style="color: white"><span><strong>Email: <?php echo $_SESSION['email'];?>
</strong></font>
<ul class="nav navbar-nav navbar-right">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" data-toggle="dropdown">My Profile </a>
<div class="dropdown-menu">
<a class="dropdown-item" href="view_profile.php">View Profile</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="edit_profile.php">Edit Profile</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="change_password.php">Change Password</a>
</div>
</li>
<li class="nav-item">
<a class="nav-link" href="../logout.php">Logout</a>
</li>
</ul>
</div>
</nav><br>
<nav class="navbar navbar-expand-lg navbar-light" style="background-color: #e3f2fd">
<div class="container-fluid">
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 60/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Books Database
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 61/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Features:
Code:
Regbooks.php delete_book.php
<?php
require("functions.php");
session_start();
#fetch data from database
$connection = mysqli_connect("localhost","root","");
$db = mysqli_select_db($connection,"lms");
$name = "";
$email = "";
$mobile = "";
$query = "select * from admins where email = '$_SESSION[email]'";
$query_run = mysqli_query($connection,$query);
while ($row = mysqli_fetch_assoc($query_run)){
$name = $row['name'];
$email = $row['email'];
$mobile = $row['mobile'];
}
?>
<!DOCTYPE html>
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 62/88
10/14/24, 3:00 PM Library Management System Project | Software Development
<html>
<head>
<title>Add New Book</title>
<meta charset="utf-8" name="viewport" content="width=device-width,intial-scale=1">
<link rel="stylesheet" type="text/css" href="../bootstrap-4.4.1/css/bootstrap.min.css">
<script type="text/javascript" src="../bootstrap-4.4.1/js/juqery_latest.js"></script>
<script type="text/javascript" src="../bootstrap-4.4.1/js/bootstrap.min.js"></script>
<script type="text/javascript">
function alertMsg(){
alert(Book added successfully...);
window.location.href = "admin_dashboard.php";
}
</script>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="admin_dashboard.php">Library Management System
(LMS)</a>
</div>
<font style="color: white"><span><strong>Welcome: <?php echo $_SESSION['name'];?>
</strong></span></font>
<font style="color: white"><span><strong>Email: <?php echo $_SESSION['email'];?>
</strong></font>
<ul class="nav navbar-nav navbar-right">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" data-toggle="dropdown">My Profile </a>
<div class="dropdown-menu">
<a class="dropdown-item" href="">View Profile</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">Edit Profile</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="change_password.php">Change Password</a>
</div>
</li>
<li class="nav-item">
<a class="nav-link" href="../logout.php">Logout</a>
</li>
</ul>
</div>
</nav><br>
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 63/88
10/14/24, 3:00 PM Library Management System Project | Software Development
<nav class="navbar navbar-expand-lg navbar-light" style="background-color: #e3f2fd">
<div class="container-fluid">
<?php
if(isset($_POST['add_book']))
{
$connection = mysqli_connect("localhost","root","");
$db = mysqli_select_db($connection,"lms");
$query = "insert into books
values(null,'$_POST[book_name]','$_POST[book_author]','$_POST[book_category]',$_POST[book_no]
,$_POST[book_price])";
$query_run = mysqli_query($connection,$query);
#header("location:add_book.php");
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 65/88
10/14/24, 3:00 PM Library Management System Project | Software Development
}
?>
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 66/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Features:
Code:
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 67/88
10/14/24, 3:00 PM Library Management System Project | Software Development
<?php
require("functions.php");
session_start();
#fetch data from database
$connection = mysqli_connect("localhost","root","");
$db = mysqli_select_db($connection,"lms");
$name = "";
$email = "";
$mobile = "";
$query = "select * from admins where email = '$_SESSION[email]'";
$query_run = mysqli_query($connection,$query);
while ($row = mysqli_fetch_assoc($query_run)){
$name = $row['name'];
$email = $row['email'];
$mobile = $row['mobile'];
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Add New Category</title>
<meta charset="utf-8" name="viewport" content="width=device-width,intial-scale=1">
<link rel="stylesheet" type="text/css" href="../bootstrap-4.4.1/css/bootstrap.min.css">
<script type="text/javascript" src="../bootstrap-4.4.1/js/juqery_latest.js"></script>
<script type="text/javascript" src="../bootstrap-4.4.1/js/bootstrap.min.js"></script>
<script type="text/javascript">
function alertMsg(){
alert(Book added successfully...);
window.location.href = "admin_dashboard.php";
}
</script>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="admin_dashboard.php">Library Management System
(LMS)</a>
</div>
<font style="color: white"><span><strong>Welcome: <?php echo $_SESSION['name'];?>
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 68/88
10/14/24, 3:00 PM Library Management System Project | Software Development
</strong></span></font>
<font style="color: white"><span><strong>Email: <?php echo $_SESSION['email'];?>
</strong></font>
<ul class="nav navbar-nav navbar-right">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" data-toggle="dropdown">My Profile </a>
<div class="dropdown-menu">
<a class="dropdown-item" href="">View Profile</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">Edit Profile</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="change_password.php">Change Password</a>
</div>
</li>
<li class="nav-item">
<a class="nav-link" href="../logout.php">Logout</a>
</li>
</ul>
</div>
</nav><br>
<nav class="navbar navbar-expand-lg navbar-light" style="background-color: #e3f2fd">
<div class="container-fluid">
<?php
if(isset($_POST['add_cat']))
{
$connection = mysqli_connect("localhost","root","");
$db = mysqli_select_db($connection,"lms");
$query = "insert into category values('','$_POST[cat_name]')";
$query_run = mysqli_query($connection,$query);
header("Location:admin_dashboard.php");
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 70/88
10/14/24, 3:00 PM Library Management System Project | Software Development
}
?>
Features:
Admin can use this feature to Issue any book from library to the user.
Database will store the student id and book details for security.
Code:
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 71/88
10/14/24, 3:00 PM Library Management System Project | Software Development
issue_book.php
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<title>Issue Book</title>
<meta charset="utf-8" name="viewport" content="width=device-width,intial-scale=1">
<link rel="stylesheet" type="text/css" href="../bootstrap-4.4.1/css/bootstrap.min.css">
<script type="text/javascript" src="../bootstrap-4.4.1/js/juqery_latest.js"></script>
<script type="text/javascript" src="../bootstrap-4.4.1/js/bootstrap.min.js"></script>
<script type="text/javascript">
function alertMsg(){
alert(Book added successfully...);
window.location.href = "admin_dashboard.php";
}
</script>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="admin_dashboard.php">Library Management System
(LMS)</a>
</div>
<font style="color: white"><span><strong>Welcome: <?php echo $_SESSION['name'];?>
</strong></span></font>
<font style="color: white"><span><strong>Email: <?php echo $_SESSION['email'];?>
</strong></font>
<ul class="nav navbar-nav navbar-right">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" data-toggle="dropdown">My Profile </a>
<div class="dropdown-menu">
<a class="dropdown-item" href="">View Profile</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">Edit Profile</a>
<div class="dropdown-divider"></div>
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 72/88
10/14/24, 3:00 PM Library Management System Project | Software Development
<a class="dropdown-item" href="change_password.php">Change Password</a>
</div>
</li>
<li class="nav-item">
<a class="nav-link" href="../logout.php">Logout</a>
</li>
</ul>
</div>
</nav><br>
<nav class="navbar navbar-expand-lg navbar-light" style="background-color: #e3f2fd">
<div class="container-fluid">
<?php
if(isset($_POST['issue_book']))
{
$connection = mysqli_connect("localhost","root","");
$db = mysqli_select_db($connection,"lms");
$query = "insert into issued_books
values(null,$_POST[book_no],'$_POST[book_name]','$_POST[book_author]',$_POST[student_id],1,'$
_POST[issue_date]')";
$query_run = mysqli_query($connection,$query);
#header("Location:admin_dashboard.php");
}
?>
These are the basic modules we require to make our LMS Project , you can add some more exiting
features using your own new idea as well.
Coding phase is the most important and time consuming phase after this phase we will be having
a source code for our project and it will be through for testing phase.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 75/88
10/14/24, 3:00 PM Library Management System Project | Software Development
steps and considerations for the testing phase of a library management system:
1. Unit Testing:
Test individual modules or components of the system in isolation to ensure they function as
intended.
Identify and fix any bugs or issues found at the module level.
2. Integration Testing:
Verify that different modules and components of the LMS work together seamlessly.
Test data flow and interactions between various parts of the system.
3. Functional Testing:
Validate that the LMS performs its intended functions accurately and efficiently.
Test basic functionalities such as adding, updating, and deleting books, managing user
accounts, and generating reports.
5. Performance Testing:
Assess the system’s performance under normal and peak load conditions.
Check response times, scalability, and overall system stability.
6. Security Testing:
Identify and rectify any security vulnerabilities in the system.
Ensure that user data is handled securely, and unauthorized access is prevented.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 76/88
10/14/24, 3:00 PM Library Management System Project | Software Development
7. Usability Testing:
Evaluate the LMS from an end-user perspective to ensure ease of use.
Gather feedback on user interfaces, navigation, and overall user experience.
8. Compatibility Testing:
Test the LMS on various browsers, operating systems, and devices to ensure cross-platform
compatibility.
9. Regression Testing:
Conduct tests to ensure that new changes or fixes do not negatively impact existing
functionalities.
Re-run previously executed test cases to verify the overall system stability.
You can follow the E Portfolio Website project to follow how to host your web projects on
GitHub.
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 77/88
10/14/24, 3:00 PM Library Management System Project | Software Development
The ideal length of the ppt should be min 10 slides and maximum 15 slides , you will not have too
much time to explain your project so prepare your presentation carefully using important key points.
Some of the key points (slides) which your presentation should have are given below:
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 78/88
10/14/24, 3:00 PM Library Management System Project | Software Development
10. Summary
Let’s create a sample PowerPoint presentation for Library Managment System Project:
1 / 11
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 79/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Abstract
Introduction
Related Work
Methodologies Used
Features
Result and Discussion
Acknowledgement
Want to learn Software Testing and Automation to help give a kickstart to your career? Any
student or professional looking to excel in Quality Assurance should enroll in our course, Complete
Guide to Software Testing and Automation, only on GeeksforGeeks. Get hands-on learning
experience with the latest testing methodologies, automation tools, and industry best practices
through practical projects and real-life scenarios. Whether you are a beginner or just looking to
build on existing skills, this course will give you the competence necessary to ensure the quality
and reliability of software products. Ready to be a Pro in Software Testing? Enroll now and Take
Your Career to a Whole New Level!
P paras… Follow 17
Next Article
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 81/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Similar Reads
SRS of Waste Management System Project in Software Development
We as humans know better about waste, its harmful effects, and the importance of managing the
waste to keep our communities clean and healthy. Similarly, we design and develop software multipl…
7 min read
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 82/88
10/14/24, 3:00 PM Library Management System Project | Software Development
9 min read
Python Tutorial Computer Science DevOps System Design School Subjects Commerce
Python Programming GATE CS Notes Git High Level Design Mathematics Accountancy
Examples Operating Systems AWS Low Level Design Physics Business Studies
Django Tutorial Computer Network Docker UML Diagrams Chemistry Economics
Python Projects Database Management Kubernetes Interview Guide Biology Management
Python Tkinter System Azure Design Patterns Social Science HR Management
Web Scraping Software Engineering GCP OOAD English Grammar Finance
OpenCV Tutorial Digital Logic Design DevOps Roadmap System Design Income Tax
Engineering Maths Bootcamp
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 87/88
10/14/24, 3:00 PM Library Management System Project | Software Development
Databases Preparation Corner Competitive Exams More Tutorials Free Online Tools Write & Earn
SQL Company-Wise JEE Advanced Software Development Typing Test Write an Article
MYSQL Recruitment Process UGC NET Software Testing Image Editor Improve an Article
PostgreSQL Resume Templates UPSC Product Management Code Formatters Pick Topics to Write
PL/SQL Aptitude Preparation SSC CGL Project Management Code Converters Share your Experiences
MongoDB Puzzles SBI PO Linux Currency Converter Internships
Company-Wise SBI Clerk Excel Random Number
Preparation IBPS PO All Cheat Sheets Generator
Companies IBPS Clerk Recent Articles Random Password
Colleges Generator
https://www.geeksforgeeks.org/library-management-system/#step-4-requirement-gathering-creating-srs-for-library-mangement-system 88/88