0% found this document useful (0 votes)
91 views14 pages

Software Requirements Specification: Version 1.0 Approved

The document is a software requirements specification for a BookZilla library management system. It outlines the purpose, document conventions, intended audience, product scope, and overall description. The product perspective is a web-based replacement for offline library management systems. Key functions include an admin interface to add book details, user registration and authentication, tracking borrowed books, and generating reports. The system will use a database to store user records and book data. Programming languages include Python, CSS, HTML, PHP, and JavaScript.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
91 views14 pages

Software Requirements Specification: Version 1.0 Approved

The document is a software requirements specification for a BookZilla library management system. It outlines the purpose, document conventions, intended audience, product scope, and overall description. The product perspective is a web-based replacement for offline library management systems. Key functions include an admin interface to add book details, user registration and authentication, tracking borrowed books, and generating reports. The system will use a database to store user records and book data. Programming languages include Python, CSS, HTML, PHP, and JavaScript.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

Software Requirements

Specification
for

BookZilla Library management


system
Version 1.0 approved

Prepared by:

Karthik Raj R | 20BCE1420


Yash Seth | 20BCE1789
Raminedi Santhosh | 20BCE1477

Created on : 15 / 08 / 2021
Table of Contents
Table of Contents .......................................................................................................................... ii
Revision History ............................................................................................................................ ii
1. Introduction ..............................................................................................................................3
1.1 Purpose ............................................................................................................................................. 3
1.2 Document Conventions .................................................................................................................... 3
1.3 Intended Audience and Reading Suggestions................................................................................... 3
1.4 Product Scope ................................................................................................................................... 3
1.5 References......................................................................................................................................... 4
2. Overall Description ..................................................................................................................4
2.1 Product Perspective .......................................................................................................................... 4
2.2 Product Functions ............................................................................................................................. 4
2.3 User Classes and Characteristics ...................................................................................................... 5
2.4 Operating Environment .................................................................................................................... 5
2.5 Design and Implementation Constraints ........................................................................................... 5
2.6 User Documentation ......................................................................................................................... 6
2.7 Assumptions and Dependencies ....................................................................................................... 6
3. External Interface Requirements ...........................................................................................6
3.1 User Interfaces .................................................................................................................................. 6
3.2 Hardware Interfaces.......................................................................................................................... 7
3.3 Software Interfaces ........................................................................................................................... 7
3.4 Communications Interfaces .............................................................................................................. 7
4. System Features .......................................................................................................................8
4.1 System Feature 1 .............................................................................................................................. 4
4.2 System Feature 2 (and so on)............................................................................................................ 4
5. Other Nonfunctional Requirements .....................................................................................12
5.1 Performance Requirements............................................................................................................. 13
5.2 Safety Requirements ....................................................................................................................... 13
5.3 Security Requirements.................................................................................................................... 13
5.4 Software Quality Attributes ............................................................................................................ 13
5.5 Business Rules ................................................................................................................................ 14
6. Other Requirements ..............................................................................................................14
Appendix A: Glossary..................................................................................................................14
Appendix B: Analysis Models .....................................................................................................14
Appendix C: To Be Determined List ..........................................................................................14

Revision History
Name Date Reason For Changes Version
1. Introduction
1.1 Purpose
The principal objective of this archive is to outline the prerequisites of the Library
Management framework. The report gives a definite depiction of both utilitarian and non-
functional requirements proposed by the customer. The primary motivation behind this
project is to keep up with a simple flow framework utilizing computers and to give various
reports. The reason why we make a document such as this is to give a good environment to
keep up with the maintenance of the details of the books and library members. This
undertaking portrays the equipment and programming interface necessities utilizing ER
charts and UML outlines.
This product can be implemented in any library and increase accessibility of the books of a
library via a website.

1.2 Document Conventions


❖ Entire document should be justified.
❖ Convention for Main title
➢ Font face: Times New Roman
➢ Font style: Bold
➢ Font Size: 18
❖ Convention for Sub title
➢ Font face: Times New Roman
➢ Font style: Bold
➢ Font Size: 14
❖ Convention for body
➢ Font face: Times New Roman
➢ Font Size: 12
❖ Convention for points
➢ Dot points will be used
➢ In the case of sub-points, the asterisk and arrow points will be used.
➢ In case of sequences numbers have also been used.

1.3 Intended Audience and Reading Suggestions


Intended audience is developers, project managers, marketing staff, users, testers, and
documentation writers.
The suggested sequence for this document to be read is from the introduction to the rest of
the document.

1.4 Product Scope


This product is used for updating the manual library system into an internet-based application
so that the users can know the details of their accounts, availability of books and maximum
limit for borrowing and also help the librarians to manage the library in a more efficient way.

The product is made for the use of librarians and library and will work as an easy way for
users to access libraries. It will have an efficient user interface for the library management
process and the use of library by users.
The goal of this project is to make libraries more accessible to everyone, and make the
system of library management more efficient.

This product will be useful to any institute that has a library, a public library etc. This product
is useful as it can be easily implemented or incorporated into an institute, as it has a flexible
system which can be modified to suit the institute.

We have used python, CSS, html, php, JavaScript for this project to make it as efficient as
possible.

1.5 References
➢ Books
Software Requirements and Specifications: A Lexicon of Practice, Principles and
Prejudices (ACM Press) by Michael Jackson
Software Requirements (Microsoft) Second EditionBy Karl E. Wiegers
Software Engineering: A Practitioner’s Approach Fifth Edition By Roger S. Pressman
➢ Websites
https://www.geeksforgeeks.org/

2. Overall Description
2.1 Product Perspective
This is a new self-contained product made to make borrowing books from libraries much
easier and encourage people to read more books. This product aims to be a replacement for
the current offline system of borrowing books. It’s intended to implement newer and more
efficient functionalities to the current system.
This product is a website which uses html, css, javascript, python, php etc.
The proposed Library Management System will take care of the current book detail at any
point of time. The book issue, book return will update the current book details automatically
so that user will get the update current book details.

2.2 Product Functions


i. A system for an Admin who can enter the book details like name, author name, etc.
ii. Users can register the details of the book they want to borrow to the website.
iii. The facility to check whether the Users are authorized or not.
iv. Admin can view the report of the books which were borrowed and the fine details to
improve the system.
v. Admin can monitor every activity which is performed by system.
vi. Users can view the details of borrowed books.
vii. DB to maintain user records.
viii. Search system to search books.
ix. Data analysis of the books to recommend popular books.
x. Categorizing the books under different genres.
xi. The ability to review books after reading then.
xii. Users receive email alerts when they borrowed it over time
2.3 User Classes and Characteristics
i. Users
ii. Admin/librarian

2.4 Operating Environment


1.Vscode (code)
2.Xampp (server)
3.phpMyAdmin. (database)
4. Windows operating system.

2.5 Design and Implementation Constraints


1. The specific hardware and software due to which the product will be run.
2. On the basis of listing requirements and specification the project will be developed and
run
3. The end users (admin) should have proper understanding of the product
4. The system should have the general report stored
5. The information of all the users must be stored in a database that is accessible by the
Library System
6. Any update regarding the book from the library is to be recorded to the database and the
data entered should be correct
2.6 User Documentation
Step by step user manual will be present on the website to guide the user in processes such as
registration, borrowing, returning etc. An online chat bot will be implemented to help answer
general questions regarding the processes of the system such as traversing, issuing, returning,
reviewing, etc.

Contacts such as phone numbers and emails to a online help-desk will also be provided to
help the users have a seamless experience on the library website.

2.7 Assumptions and Dependencies


The assumed factors in this project are:
• The code should be error free and should not have any problems.
• The server should be able to handle many people using the website.
• Users should have internet connection to be able to access the website and use it.
• The database has been efficiently made and is fast to access.
• User information stored is safe and cannot be stolen.

The dependencies are: -


• The specific hardware and software on which the product will be run.
• It depends on the competence of the librarians and admins.
• The system should be able to store a report of the information
• The information of users should be stored and should only be accessible to the
admins/librarians.
• The information stored can be accessed by the library system.
• Any updates to book information or user information should be recorded in the database.

3. External Interface Requirements


3.1 User Interfaces
The software provides an interactive graphical interface for the user and the admin to operate
on, which enables them to perform required tasks such as create, update, review and delete
details of the book.

It allows the users to view the issued books, as well as search for all the books present on our
system. It provides security features such as password protected login and secure browsing. It
provides access for the admin to customize the user interface.

A modular approach is applied to enable easy updating and prevents catastrophic failure of
the entire system.

The user interface includes ease of access and simple to use features that implement the core
functionalities required for a library management system as well as additional functionalities
that keep the system secure and up to date with the recent technologies helping implement a
complete application.
3.2 Hardware Interfaces
• Database interfacing will use standard TCP/IP protocols, but using FOSS libraries.
• Http protocols are used to serve the website.
• We will be using a dedicated server for the database.
• It should be accessible to anyone with an internet connection and a compatible device.
• It will be compatible with the following browsers: Chrome, edge, brave, Mozilla firefox.

3.3 Software Interfaces


• Login and registration Interface: - In case the user is not yet registered, he can enter
the required details and register to create his account. Once his account is created, he
can login using the correct username and password. If the user entered either his
username or password incorrectly then an error message appears.
• Search system interface: - Users or a librarian can enter the type of book they are
looking for and the title they are interested in, they can then check for the availability
and reviews of the book.
• Genre View: - The librarian will categorize the books in different genres and will be
able to modify it. The users will be able to search for books under the specific genre
they are looking for.
• Librarian’s Control Panel: - It is a control panel for librarians which will allow them
to add/remove users and books from the system and manage lending options.

3.4 Communications Interfaces

Communication interfaces that are being utilized for the Library Management System are
TCP/IP for data transmission and SMTP/HTTP for generating emails of reports from the
software. All the data transmission interfaces should have fast transfer rates and reliable
connections which helps maintain a reliable and efficient system.

FOSS protocols are observed to ensure ease of access to the open-source contributors and
helps maintain a consistent code base. Version control programs such as Git are used to
maintain consistency and allow easy code sharing and maintenance.

Security features are set up on every level to reduce the abuse and unauthorized access of the
system.
4. System Features
4.1 Login and registration system
4.1.1 Description and Priority

It is a high priority system that helps us to verify the user, without verification and
logging in the user will not be able to use any of the features of the website. The user
first has to register by filling the appropriate information, and then the user will be
able to login and use the features of the website. The benefits are that unverified users
cannot borrow or steal books. There is a risk level of 9 in the fact that user
information is being handled. Failure in handling user information would lead to
lesser users using the website.

4.1.2 Stimulus/Response Sequences

• User First registers to the website by filling in the appropriate information and
making a username and password.
• We will then verify the information.
• The user will then try to login to the website by entering the correct username
and password.
• If there is a match according to our database then the user will be able to login.
• If there is no match then we will show the result that there is something wrong
with the username and password.

4.1.3 Functional Requirements

1. A compatible web browser.


2. A working internet connection.
3. The database will store the user information once they have registered.
4. Database follows acid properties and is efficient in retrieving data and makes no
errors.
5. The user data is safely stored.
6. The system is always maintained in a consistent state.
7. Only verified users must have the access to the system.
4.2 Search system
4.2.1 Description and Priority

It is a high priority system that helps the user to easily find the books he/she wants to
borrow. The benefits of such a system are really high and there is little to none penalty,
and a risk level of 1 in this system.

4.2.2 Stimulus/Response Sequences

• User logs in to the website and is verified.


• The user can then search for a book using the search bar for the book they are
looking for.
• The name of the book the user is looking for is taken and compared to existing
books in the database.
• If there is a match according to our algorithm then we will show the availability
of the book.
• If there is no match then we will show the result that there is no such book in
the library.

4.2.3 Functional Requirements

1. A compatible web browser.


2. A working internet connection.
3. The database will retrieve the information of the book the user has searched for.
4. Database follows acid properties and is efficient in retrieving data and makes no
errors.
5. The system is always maintained in a consistent state.
6. Only verified users must have the access to the system.

4.3 Borrowing System


4.3.1 Description and Priority

It is a high priority system that helps the user to borrow the book(s) they want from the
collection of books. The benefits of the system are high as they provide ease of access
and the core functionalities. There is little penalty and a risk level of 2 in the system.
4.3.2 Stimulus/Response Sequences

• User logs in to the website and is verified.


• User chooses the book(s) they want.
• User heads over to the borrowing system and lists the book id or name of the
book.
• If the book is available, or has not already been issued, the system issues it
under their name.
• If the book is unavailable, the system returns a "Book unavailable message".
4.3.3 Functional Requirements

1. A compatible web browser.


2. A working internet connection.
3. The database will store the information of the transaction once they have borrowed a
book.
4. Database follows acid properties and is efficient in retrieving data and makes no
errors.
5. The user data is safely stored.
6. Same Id’s for 2 or more books shall not be allowed.
7. The system is always maintained in a consistent state.
8. Only verified users must have the access to the system.

4.4 Recommendation System


4.4.1 Description and Priority

It is a medium priority system that provides additional functionality to the library


management system. It gives suggestions to the user based on previous books issued
and genres of books they generally search for. It is a high benefit system as it provides
the users with new results and helps reduce time choosing books. It has a risk factor of
3, because if a user forcefully makes bad searches, the system will get wrongly trained
for them and recommend them wrong books.

4.4.2 Stimulus/Response Sequences

• User logs in to the website and is verified.


• The recommendation system shows them a range of books that they may be
interested in, based on previous searches and issues.
• If the results are accurate, the user can choose the "These are helpful" option
which provides positive feedback for the system and enables better results.
• If the results are inaccurate, the user can select the "These are not helpful"
option which provides negative feedback for the system and it helps train the
model on what the user does not like and what not to recommend.

4.4.3 Functional Requirements

1. A compatible web browser.


2. A working internet connection.
3. It requires a ml model to learn the user’s preference.
4. The user data is safely stored.
5. Same Id’s for 2 or more books shall not be allowed.
6. The system is always maintained in a consistent state.
7. Only verified users must have the access to the system.
4.5 Email system
4.5.1 Description and Priority

It is a moderate priority that system provides a message or alerts through email


whenever the user borrowed a book from the library and alerts when the user has
borrowed it over time. It helps users to know their due time in case they forget and
warns them to not keep the book over time. This email system also provides monthly
reports to the users. There is a risk level of 6 since we are handling users email ids.
The penalties would be users facing problems if the email ids got into wrong hands and
the users losing trust in our website.

4.5.2 Stimulus/Response Sequences

• Whenever a user borrowed from the library it provides a message about the
books that the users has borrowed, date and time of when they borrowed and
due time.
• Once a book has been borrowed the software will check with the due date
every day.
• If a user has borrowed a book and has kept the book over time, we will send an
alert message through email that “You have borrowed the book over time” and
also about the penalties.
• Monthly reports will be sent to the users about the how many books they
borrowed in a month and the type of books they borrowed.

4.5.3 Functional Requirements

1. A compatible web browser.


2. A working internet connection.
3. The user data is safely stored.
4. The system is always maintained in a consistent state.
5. The user must have a valid e-mail.

4.6 Review System


4.6.1 Description and Priority

It is low priority system that allows the user to give a public rating and review about a
book they issued or read. This will help guide other users in the community to decide
whether a specific book is for them. It is a highly beneficial feature and it has a risk
level of 5 that bad users can result in a good book getting bad reviews and ratings. This
can be avoided by restricting the user to one review and rating per book.

4.6.2 Stimulus/Response Sequences

• After returning a book, the user will be given the option to provide a review
and rating for the book.
• If they choose to give the book a review or rating, then it will be recorded by
the system and it can be viewed by them under the "My Reviews" tab.
• The user may decide on not giving a review or rating for the book as well
4.6.3 Functional Requirements

1. A compatible web browser.


2. A working internet connection.
3. The user data is safely stored.
4. Users can only review a book if they have borrowed the book before.
5. The system is always maintained in a consistent state.
6. Only verified users must have the access to the system.

4.7 Librarian management system


4.7.1 Description and Priority

It is a high priority system that allows librarians or admins to enter details of the books
like name, author, ssn number etc. and keep a check on the details of users.
Admins/librarians can also view the details of the users and book that have borrowed
from the library and can manage these records. There is risk level of 7 in this system
since user information is being handled. The penalty would be users losing trust in this
system.

4.7.2 Stimulus/Response Sequences

• Admins/librarians can enter, modify and view the details of the books.
• Admins/librarians can view the details of the users.
• Admins/librarians can manage the monthly and weekly reports of users.
• Admins/librarians can view every activity performed by the system.
• Admins/librarians can send mails to the users in case of overdue time and about
events of the library.
• Admins/librarians can remove users from the database if they perform any
unrelated practices.

4.7.3 Functional Requirements

1. A compatible web browser.


2. A working internet connection.
3. The user data is safely stored.
4. Database follows acid properties and is efficient in retrieving data and makes no
errors.
5. The librarian/admin is competent.
6. The system is always maintained in a consistent state.
7. Only verified users must have the access to the system.
5. Other Nonfunctional Requirements
5.1 Performance Requirements
The system’s fast and accurate performance is essential for operation.

The system shall have the provisions to handle expected as well as non-expected errors in
ways that guarantee no loss of information and prevent long downtime periods. For that
purpose, it should have an inbuilt error handler and detector to identify errors and deal with
them.

The system memory, I.e., the database, shall be optimized to be able to handle large amounts
of data without any fault.

5.2 Safety Requirements

The database supporting the system may crash at any time due to some error that wasn’t
predicted or a virus attack or an OS failure. For that purpose, it is required to have a backup
of the database, from time to time, to ensure minimal to no loss of data, in the case of failure.

Proper power backup shall be maintained at the server farm facility to cover for the situation
of unexpected power cuts

5.3 Security Requirements


System will utilize a secure database with security features implemented to prevent improper
use of sensitive data.

The users will be provided with a view of the system that allows them to only read
information and enter information where required, but it doesn’t allow them to modify or edit
anything, other than their personal info.

Access constraints shall be implemented to enforce access constraints on each user level.
Login system will prevent unauthorized access to the system. Passwords will be stored in an
encrypted manner to prevent fraudulent access of sensitive data.

5.4 Software Quality Attributes


Only the admins will have the access to make changes to the system. The users or members
shall not. The project should be open source to enable growth of the project and to help
establish a group of active contributors of code.

The database will be maintained in a very easy to use manner, to allow the database admins
to manage it easily. The code base and the server setup are such that it provides room for
scalability in the future.
5.5 Business Rules
1. It is sold to customers for a price.
2. Customers cannot sell the product to others; the product can only be sold by the
product owners.
3. The users should avoid illegal rules and protocols.
4. Neither admin nor member should cross the rules and regulations.
5. Once finalized the terms of agreement cannot be changed.

6. Other Requirements
• There are different categories of users namely Librarian/Admin, students etc.
Depending upon the category of user the access rights are decided. This means if the
user is an administrator/librarian they can modify, delete and append the data. All
other users except the Librarian only have the rights to retrieve the information about
database
• A separate view of the database for potential customers that does not leak any
important information.
• The developers are not allowed to show/use the code anywhere else.

Appendix A: Glossary
• Admin: It is the abbreviation for administrator who is a person responsible for
carrying out the administration of a business or organization.
• User: Is a person who uses the product.
• Client: Intended users for the software
• Database: A database is an organized collection of structured information, or data,
typically stored electronically in a computer system.
• Server: A server is a computer or system that provides resources, data, services, or
programs to other computers, over a network.
• FOSS: Free and open-source software.
• HTTP: Hypertext transfer protocol.

Appendix B: To Be Determined List


• Analysis Models

You might also like