You are on page 1of 8

Requirements Specification

for
Library Management System

January 2024
Version 0.1

Prepared by Akshat Jain


Manit Bhopal
17 January 2004
Change History

Date Version Description Updated By


17 Jan 2024 0.1 Initial Draft Akshat Jain

Document Approvals

Name Role Signature

Page 2 of 8
Table of Contents
1 Introduction.......................................................................................................................................4
1.1 Purpose.......................................................................................................................................4
1.2 Document Conventions..............................................................................................................4
1.3 Project Scope.............................................................................................................................4
1.4 References..................................................................................................................................4
2 System Description............................................................................................................................4
3 Functional Requirements...................................................................................................................4
3.1 System Features.........................................................................................................................4
3.1.1 System Feature 1................................................................................................................5
3.1.2 System Feature 2................................................................................................................5
3.2 Use Cases...................................................................................................................................5
3.2.1 Use Case Diagrams............................................................................................................5
3.2.2 Use Case 1..........................................................................................................................5
3.2.3 Use Case 2..........................................................................................................................5
3.3 Entity Relationship Diagrams....................................................................................................5
3.4 Data Dictionary..........................................................................................................................6
3.4.1 Entity 1...............................................................................................................................6
3.4.2 Entity 2...............................................................................................................................6
4 External Interface Requirements.......................................................................................................6
5 Technical Requirements (Non functional).........................................................................................6
5.1 Performance...............................................................................................................................6
5.2 Scalability..................................................................................................................................6
5.3 Security......................................................................................................................................6
5.4 Maintainability...........................................................................................................................6
5.5 Usability.....................................................................................................................................6
5.6 Multi lingual Support.................................................................................................................6
5.7 Auditing and Logging................................................................................................................6
5.8 Availability.................................................................................................................................6
6 Open Issues........................................................................................................................................7

Page 3 of 8
1 Introduction

1.1 Purpose
The purpose of the Software Requirements Specification (SRS) for a Library Management System
is to clearly define and document the functional and non-functional requirements, providing a
shared understanding among stakeholders and serving as a guide for development, testing, and
project management.

1.2 Document Conventions


<Indicate any special document conventions used including notation or approaches used for
requirements capture. For example, you can specify that Crow's notation is used for ER diagrams.>

1.3 Project Scope


The system will include the following core features:

1) Member management: Register new members, manage member accounts, and track bor-
rowing history.
2) Resource management: Catalog books, journals, and other library resources, including
adding, editing, and searching.
3) Circulation management: Borrow and return resources, manage due dates, and generate
fines and alerts.
4) Search and discovery: Enable users to search the library catalog by title, author, subject,
and other criteria.
5) Online account management: Allow users to view their borrowing history, renew re-
sources, and update their account information.
6) Reporting and analytics: Generate reports on resource usage, borrowing trends, and mem-
ber activity.

1.4 References
 Open-Source Library Information System (OPALS): OPALS is a popular open-source
LMS with extensive documentation and user communities, offering valuable insights into
LMS functionalities and implementations. https://opalsinfo.net/
 Library Management Systems: An Introduction and Analysis" by Rowley.
 Concepts of Database Management Systems by Silberschatz et al.

2 System Description
2.1 Existing System Overview
The current library management system at "ABC University" operates as a manual, paper-
based system utilizing pen and registers. The existing system involves physical cataloguing,
user registration, and manual recording of book check-in and check-out transactions.
Current System Features:
- Manual book cataloguing and classification
- Physical user registration and authentication
- Paper-based check-in and check-out of books
- Limited reporting capabilities due to manual processes
2.2 Proposed System Overview
Recognizing the limitations of the manual, paper-based system, the proposed library management
system, "LMSX," aims to introduce digital automation by leveraging the MERN (MongoDB,
Express.js, React, Node.js) stack. Key objectives and features include:
System Objectives:
- Transition from a manual to a digital system for improved efficiency.
- Enable real-time updates for book availability and user management.
Scope of the System:
- The system will cover modules such as digital book cataloguing, online user registration, and
automated check-in/check-out.
- Integration with an external online catalogue for real-time book availability.
User Roles and Hierarchy:
- User roles include Librarian, Staff, and User.
- Librarians will have responsibilities such as digital book cataloging and managing user profiles.
Technological Stack:
- Developed using the latest version of the MERN stack (MongoDB, Express.js, React, Node.js).
- Utilizes Bootstrap 5 for a modern and responsive user interface.

3 Functional Requirements

3.1 System Features


This section outlines high-level system features required for the proposed library management
system, "LMSX." Each feature is uniquely tagged for reference in the traceability matrix.

3.1.1 System Feature 1


Description: Digital Book Cataloging
Input: Librarian inputs book details (title, author, genre, etc.) through a digital form.
Processing: The system processes the input and stores book information in the MongoDB database.
Output: Confirmation message indicating successful cataloging.
3.2 Use Cases

3.2.1 Use Case Diagram

3.2.2 Use Case 1


ID UC001
Description Book Reservation
Actors - User
- Librarian
Preconditions User must be logged in to invoke book reservation.
Basic Steps 1. User searches for a book using the online catalogue.
2. User selects a book and initiates the reservation.
3. The system checks book availability.
4. If available, the user confirms the reservation.
5. The system updates the reservation status in the database.
Alternate Steps If the book is not available, the system informs the user and provides
alternative options.
Exceptions If the user is not logged in, prompt the user to log in.
Business Link to the business rules specified in the system features section.
validations/Rules
Postconditions The book is reserved for the user.
3.3 ER Diagram

3.4 Data Dictionary


Table Name Column Name Description Primary Key
Member MID Unique member identifier Yes
Member F_name First name -
Member L_name Last name -
Member Phone Phone number -
Book ISBN Unique book identifier Yes
Book Title Book title -
Book Author Book author -
Borrows MID Member ID (foreign key) -
Borrows ISBN Book ISBN (foreign key) -
Borrows Checkout_date Date book borrowed -
Supplies ID Unique supply identifier Yes
Supplies Name Supply name -
Admin Name Administrator name -
Admin Login_id Unique login ID Yes
4 External Interface Requirements

5 Technical Requirements (Non-functional)

5.1 Performance
- The system should aim for a response time of under 3 seconds for standard operations.

5.2 Scalability
User Support: The system should support a minimum of 1000 concurrent users.
Data Encryption: User data, especially passwords, should be encrypted during transmission and
storage.

5.3 Maintainability
- Code Modularity:
- The system should be modular to facilitate ease of maintenance and updates.

5.4 Usability
User-Friendly Interface

6 Open Issues
List of open issues that require further clarification or resolution:
1. Offline Capability:
- Determine if any offline capability is required for users without consistent internet access.
2. Data Privacy Compliance:
- Confirm compliance with data privacy regulations and define necessary measures.
3. Integration Testing:
- Define a comprehensive plan for integration testing with external systems.
4. Scalability Plan:
- Develop a detailed plan for system scalability beyond the initial user load.
5. Legal Requirements:
- Identify any additional legal requirements and compliance measures.

These open issues will be tracked and addressed during the subsequent stages of the project.

You might also like