You are on page 1of 82

Software Requirements Specification for

E-Library Management System

Version 1.0

Department of Computer Science & Information Technology


University of Sargodha
Title of the Project: E-Library Management System
Project Supervisor: Prof. Qurat-ul-Ain

Project Team:
Name of Student Roll Number Signature

Talha Shahab 16BSCS19663 _________________

Ishtiaq Ahmed 16BSCS19670 _________________

Date: ____________________

ii
Acknowledgment
The satisfaction that accompanies that the successful completion of any task would be
incomplete without the mention of people whose continued cooperation made it
possible, whose constant guidance and encouragement crown all efforts with success.
At first, we thank Almighty Allah for giving us a greater chance to make this happen.
We are incredibly grateful and remain indebted to our guide & course teacher, Prof.
Qurat-ul-Ain, for being a source of inspiration and for her constant support. We are
thankful to them for their continuous constructive criticism and invaluable suggestions,
which benefited us greatly while developing this project.
We wish to say thanks to our classmates who helped us sharing their opinion with a
great mind and to all staff members who were directly or indirectly instrumental in
enabling us to stay committed.

iii
Contents
Abstract...................................................................................................... 1
1. Introduction ........................................................................................... 3
1.1 Background ........................................................................................................ 3
1.2 Problem Statement ............................................................................................ 3
1.2.1 Drawbacks of the present systems .............................................................. 3
1.3 Aim and Objectives ........................................................................................... 4
1.4 Scope and Features ............................................................................................ 4
1.5 Tools and Languages ......................................................................................... 5
1.6 Methodology....................................................................................................... 6
2. System Requirement Analysis ............................................................. 8
2.1 Information Gathering...................................................................................... 8
2.1.1 Determination of system requirements ....................................................... 8
2.2 Technology Specifications ................................................................................. 9
2.3 System Feasibility .............................................................................................. 9
2.3.1 Technical Feasibility .................................................................................. 9
2.3.2 Behavioral Feasibility .............................................................................. 10
2.3.3 Temporal Feasibility ................................................................................ 10
2.4 Functional Requirements................................................................................ 10
2.4.1 User Login ................................................................................................ 10
2.4.2 Password Recovery .................................................................................. 11
2.4.3 Register New book .................................................................................... 11
2.4.4 Search Book .............................................................................................. 12
2.4.5 Publisher Maintenance............................................................................. 12
2.4.6 Member Maintenance ............................................................................... 13
2.5 Non-Functional Requirements ....................................................................... 14
2.5.1 Performance Requirement ........................................................................ 14
2.5.2 Safety Requirements ................................................................................. 14
2.5.3 Security Requirements .............................................................................. 14
2.5.4 Software Quality Attributes ...................................................................... 14
2.5.5 Efficiency requirements ............................................................................ 14
2.5.6 Reliability requirements ........................................................................... 14
2.5.7 Usability requirements ............................................................................. 14
3. System Design ...................................................................................... 16
iv
3.1 Architectural Design ....................................................................................... 16
3.2 Flow Charts ...................................................................................................... 17
3.2.1 User Login ................................................................................................ 17
3.2.2 Searching Book......................................................................................... 18
3.2.3 Adding, Updating, or Deleting Book Information .................................... 19
3.2.4 Book Reservation ...................................................................................... 20
3.2.5 Book Return .............................................................................................. 21
3.2.6 Book Issuance ........................................................................................... 22
3.2.7 User Profile Update ................................................................................. 23
3.3 ER Diagram ..................................................................................................... 24
3.4 Use Case Diagrams .......................................................................................... 25
3.4.1 Use Case: Administrator .......................................................................... 25
3.4.2 Use Case: Operator.................................................................................. 26
3.4.3 Use Case: Member ................................................................................... 27
3.5 Activity Diagrams ............................................................................................ 28
3.5.1 Activity Diagram: Login ........................................................................... 28
3.5.2 Activity Diagram: View User Details ....................................................... 29
3.5.3 Activity Diagram: Search Book ................................................................ 29
3.5.4 Activity Diagram: Reserve Book .............................................................. 30
3.5.5 Activity Diagram: Issue Books ................................................................. 31
3.5.6 Activity Diagram: Return Books .............................................................. 32
3.5.7 Activity Diagram: Add/Remove Books ..................................................... 33
3.5.8 Activity Diagram: Add/Remove Users ..................................................... 34
3.6 Sequence Diagrams ......................................................................................... 35
3.6.1 Sequence Diagram: Login Process (Successful) ...................................... 35
3.6.2 Sequence Diagram: Login Process (Failed) ............................................ 35
3.6.3 Sequence Diagram: Signup Process (Successful) .................................... 36
3.6.4 Sequence Diagram: Signup Process (Incomplete Data) .......................... 37
3.6.5 Sequence Diagram: Signup Process (User Already Exists) ..................... 38
3.6.6 Sequence Diagram: Book Search (Book Found) ..................................... 38
3.6.7 Sequence Diagram: Book Search (Book Not Found) ............................... 39
3.6.8 Sequence Diagram: Book Issue (Successful) ........................................... 40
3.6.9 Sequence Diagram: Book Issue (Failed).................................................. 40
3.6.10 Sequence Diagram: Book Return........................................................... 41
3.6.11 Sequence Diagram: Book Return with Fine .......................................... 42
v
3.6.12 Sequence Diagram: Add New Book ....................................................... 42
3.6.13 Sequence Diagram: Book Removal ....................................................... 43
3.6.14 Sequence Diagram: Password Change ................................................. 44
3.7 Data Dictionary................................................................................................ 45
Table 3.7.1 Data dictionary for admin table ..................................................... 45
Table 3.7.2 Data dictionary for books table ..................................................... 46
Table 3.7.3 Data dictionary for borrowed_books_log table ............................. 46
Table 3.7.4 Data dictionary for members table ................................................ 46
Table 3.7.5 Data dictionary for shipment_log table ......................................... 47
3.8 Database Design ............................................................................................... 48
3.9 User Interface Design ...................................................................................... 49
3.9.1 Home Page ............................................................................................... 49
3.9.2 Login Page ............................................................................................... 50
3.9.3 Admin Panel ............................................................................................. 51
3.9.4 Books Info ................................................................................................. 52
3.9.5 Add New Book .......................................................................................... 53
3.9.6 Edit Book .................................................................................................. 54
3.9.7 Delete Book .............................................................................................. 55
3.9.8 Borrowing Book Basic Form .................................................................... 56
3.9.9 Borrowing Book Member Checking ......................................................... 57
3.9.10 Admin Profile Settings ........................................................................... 58
3.9.11 Staff Accounts......................................................................................... 59
3.9.12 Member Panel: Search Books ................................................................ 60
3.9.13 Access Denied ........................................................................................ 61
4. Testing .................................................................................................. 63
5. Implementation and Maintenance .................................................... 68
6. Summary.............................................................................................. 70
7. Personal Reflection ............................................................................. 72
8. Future Scope ........................................................................................ 74
8.1 Extensibility ..................................................................................................... 74
8.2 Reusability ........................................................................................................ 74
8.3 Understandability ............................................................................................ 74
8.4 Cost-effectiveness............................................................................................. 74
9. References ............................................................................................ 76
vi
E-Library Management System Abstract

Abstract
This report describes the project development of E-Library Management System that was
developed to manage the daily book transaction and manage the member, books record more
efficiency. It can improve management of the book property in the library.

Today, most libraries use either a manual system to track day-to-day activity or use desktop
spreadsheets like MS Excel applications to manage everyday activity. This proposed Library
Management System will run in client-server mode. The user can check the book availability,
search the books, library staff can issue, receive a book, and management can check the report.
The system will store historical data. Management can anytime view the total book status,
library card status. The E-Library Management System is used to overcome the entire problem
they are facing currently and make complete atomization of manual or semi-automatic library
management system. This project of "E-LIBRARY MANAGEMENT SYSTEM" gives us
the complete information about the library. We can enter the record of new books and retrieve
the details of books available in the library. We can issue the books to the students and maintain
their records, and we can also check how many books are given and stock available in the
library.

1
E-Library Management System Abstract

Chapter 1
Introduction

2
E-Library Management System Introduction

1. Introduction
Information Technology has revolutionized human life and has made lives more manageable
by the various kinds of applications. With the help of Information Technology, many systems
have been produced and invented that helps peoples in daily life. This project is concerned with
developing a Library Management System to make library management more efficient and
easier to handle. The library management system enables a fully automated library service.
1.1 Background
The library is a treasure house of knowledge. A well-organized library is an asset to the school,
college, university, or neighborhood. A Library is concerned with books, reference, members,
and many other issues. Thus, the process of handling a library manually is very troublesome
and clumsy.
Concerning this point of view, the computerized system for handling library management
activities provides a comprehensive way to lessen physical labour, reduce the manual method's
complexity, etc. This project shows a more comfortable way to maintain books, members, book
circulation, financial transactions, etc. These facilities make this project more useful.
The focus has been on presenting information and comments in a comfortable and intelligible
manner throughout the project. The project is beneficial for those involved with the library,
such as management authority, the users, and those who want to know about Library
Management System. We tried to include all the essential features to provide the best services
to the users and management. All of these can be modified according to the demand of time.
1.2 Problem Statement
Today most of the library uses either a manual system for tracking the day-to-day activity or
using a desktop, stand-alone system to manage the everyday activity. Borrowing books,
returning books, or viewing available books is done manually, where members have to go to
the library and have to ask the librarian. Then librarian checks if the book is available. If
members borrow a book or return a book, the library card is requested. Librarian will also have
to maintain records manually. All of these steps would take hours. These systems take more
effort and provide fewer features with the chance of incorrect information. In this proposed
online eLibrary Management System, it will run on the internet. Users can online check the
book availability, search the books, library staff can issue, receive a book, and check the report
from different locations via the internet.
1.2.1 Drawbacks of the present systems
The drawbacks or disadvantages are the critical points for the development of the proposed
system. Some of the flaws are as follows:
➢ Slow retrieval of information
➢ Repetition of the same information
➢ Inaccurate or inconsistent information
➢ Fast report generation is not possible
➢ Tracing a book is difficult
3
E-Library Management System Introduction

➢ Security and integrity problems


➢ Enormous human resources are required
➢ Time-consuming
➢ Concurrent access is not available
➢ Information about the issue/return of the books is not adequately maintained.
➢ Stock information is not easily accessible.
➢ Automated calculations are not available.
➢ Members are not allowed to search the books independently.
➢ Backup and recovery problem

1.3 Aim and Objectives


The project aims to prepare a web-based automation system for the library that mainly focuses
on basic operations in a library like adding new members, new books, and updating further
information, searching books and members to borrow and return books. This project aims to
provide simplicity and security, and efficiency to the management and reduce managing
personnel in the library. Different privileges are given to different types of users.
The critical points of the objective are:
➢ To eliminate paperwork in the library
➢ To design a user-friendly interface
➢ To faster retrieval of information
➢ To provide accurate information to its users
➢ To record every transaction in computerized system so that problem such as record
file missing won’t happen again
➢ To complete the system according to project schedule
The problems, which existed in the earlier system, will be removed to a large extent.
This project will go a long way in satisfying users' requirements. The E-Library Management
system's computerization will improve efficiency and reduce human stress, thereby indirectly
improving human recourses.
1.4 Scope and Features
E-Library Management System aims at providing a complete solution for all the library
requirements of Medium and small-scale libraries. Presently we have few public libraries in
the country with even a few computerized, but the number is sure to grow as the focus shifts
more on education. It will be a great help to these libraries if there is software available to help
them with their day-to-day tasks.
The E-Library Management System is an online application for assisting a librarian in
managing a book library. The system would provide a basic set of features to add/update

4
E-Library Management System Introduction

members, add/update books, and check-in specifications for the methods based on the client's
statement of need.
From an end-user perspective, the eLibrary Management System Project consists of two
functional elements: an enhanced searchable database for the search books, managing library
members, issuing and receiving books, and a report generation system.
The features that are available to the librarian acting as an administrator are:
➢ A librarian can issue a book to the student
➢ Can view the different categories of books available in the library
➢ Can view the list of books available in each category
➢ Can take the book returned from students
➢ Add books and their information of the books to the database
➢ Edit the information of the existing books.
➢ Can check the report of the issued Books.
➢ Can access all the accounts of the students.
The features available to the students/members are:
➢ Can view the different categories of books available in the library
➢ Can view the list of books available in each category
➢ Can own an account in the library
➢ Can view the books issued to him
➢ Can put a request for a new book
➢ Can view the history of books issued to him previously
➢ Can search for a particular book
The Library data entry-operator will be able to log in and add/remove/update/delete categories,
books only.
1.5 Tools and Languages
➢ HTML 5
➢ CSS 3
➢ Bootstrap Framework
➢ JavaScript
➢ PHP
➢ MySQL

5
E-Library Management System Introduction

➢ Microsoft Visual Studio


➢ XAMPP
All of the above tools and languages are free to use and does not require a purchased license.
1.6 Methodology
To provide the solution in achieving the objectives, we will be carrying out a detailed literature
review to understand better current library research, studies, operations, and implementation
using modern technology. Design an Online Library Management System that can be used by
both librarians and library members. Designing simple, friendly, and less complicated will be
the priority. The interface will be responsive. In the development cycle, we will use
implementation and unit testing. To develop this complete system, we will use the System
Development Cycle (SDLC).

6
E-Library Management System Introduction

Chapter 2
System Requirement Analysis

7
E-Library Management System System Requirement Analysis

2. System Requirement Analysis


2.1 Information Gathering
The information has been gathered by conducting the surveys. Questionnaires and interviews
with the librarians and users are used to collect this information—actual observation of work
activities involved collecting forms and documents involved in a library's functioning. Then
we have studied the requirements to identify the features that our system should have and input
and output methods. The information has been gathered by conducting the surveys.

2.1.1 Determination of system requirements

➢ Why is such a system required?


Such a system is required to solve the problems of library management through a software
solution in an efficient manner, as well as to save time. Also, to result in a systematic data
storage system for the library. The key points are as follows:
• Improved customer service through greater access to accurate information.

• Increased productivity and job satisfaction among staff members because it eliminates
duplication of effort.

• More economical and safer means of storing and keeping track of information.

• Easier access to information like management reports and stock and more accurate and
faster results from statistical analyses.

• Reduces errors and eliminating the boredom of long and repetitive manual processing.

• Greater accountability and transparency in operations.

• Improved efficiency and effectiveness in administration and management as it has


unprecedented access to real-time information.

• More reliable security for sensitive and confidential information.

• Appropriate knowledge-based action and intervention can now take place in a timelier
manner.

➢ If you have any previous version of this system, then what are the problems with that?
The previous systems are based on manual work, spreadsheets, or desktop-based stand-alone
systems. The manual systems require a lot of human resources, time, and effort. Manual
systems have duplication of information, which leads to incorrect information. The
spreadsheets also require more human effort and time as it is hard to keep them maintain as
they are not fully automated. The stand-alone or desktop-based application only has
information stored on one computer or device, which only the librarian or the operator can
access. It also requires other users to approach him for information. More information on
drawbacks or flaws in previous systems has been discussed in section 1.2.1 of this document.

8
E-Library Management System System Requirement Analysis

➢ What are your requirements?


The primary requirement is to maintain the information quickly while saving time and effort.
All the essential functions of the library will be done through the software. It should have a
user-friendly interface and support the fast retrieval of searched data. The proposed system
must be faster so that the administrator does not have to wait long to retrieve any information.
The system Reliability must be ensured so that there is no threat of data loss. It should be
Scalable so that shortly the system can be expanded and customized to the library's growing
needs.

➢ How to proceed with the problem-solving?


By analyzing the requirements gathered.

2.2 Technology Specifications


For the implementation of the system, a hosting server and domain name is required. The
hosting server should allow to have a MySQL database and supports PHP. To use the system,
the following are the minimum requirement for every user.
Minimum Hardware Requirements
• Intel Pentium 4 or equivalent.

• 1 GB RAM or higher.

• Hard Disk – Minimum 2GB


Minimum Software Requirements
An Internet Browser that supports HTML5 or modern web languages is required. Google
Chrome, MS Chromium Edge, and Mozilla Firefox are recommended.

2.3 System Feasibility


2.3.1 Technical Feasibility
The technical feasibility of the system counts for the technical acceptance of the system. It
refers to the ability to take advantage of the current state of the technology in technology in
pursuing further improvement. The personnel's technical capability of the personnel and the
power of the available technology should be considered. In technical feasibility, the following
issues are taken into consideration:
➢ Whether the required technology is available or not?
The project's work can be done with the current equipment and existing software technology
that the organization possesses. PHP and Web Languages are used as a primary technology
that is easy to use.
➢ Whether the required resources are available?
The system does not have any rigid hardware and software requirements. There is an
availability of people who can perform the software engineering activities required to develop
the plan. Hence, the system is technically feasible.
9
E-Library Management System System Requirement Analysis

2.3.2 Behavioral Feasibility


Behavioral feasibility is the measure of how effective the user uses the system. Behavioral
efficiency is one of the significant factors of feasibility analysis. The new or the proposed
system should be easy to operate, convenient in maintenance, and effective in its working.
Thus, behavioral feasibility is a crucial factor to be considered for the effective working of the
system. Behavioral feasibility is dependent on human resources available for the project and
involves projecting whether the system will operate and be used when installed. The system is
behaviorally feasible if it fulfills the following:
• The proposed system will be easy to operate.

• Existing members will not be affected in any way.

• Retrieval of information will be easy, accurate, and fast.

2.3.3 Temporal Feasibility


Temporal feasibility means whether the project is completed in the given time or not. One of
the most challenging aspects of project management is the formulation of estimates of the time
required to develop a system. Estimates and schedules approximate the hours, days, or months
of efforts needed to produce the desired design. It depends on factors like programmers,
program complexity, etc.

2.4 Functional Requirements


The functional requirements are explained as below:
2.4.1 User Login
Description of Feature
This feature is used by the user (librarian/library admin) to login into the system. They are
required to key in the user id and password before they allow entering the system. The user id
and password will be verified, and an invalid id cannot enter the system.
Stimulus / Response Sequences
Stimulus: A user runs the system.
Response: System request for user id and password.
Stimulus: User enters user id and password at the textbox provided.
Response: The system verifies the user id and password with the data inside the
database. If the user id is invalid or the password does not match, a
message box will be prompt out to notify the user. If valid, the user
successfully login to the Library Management System.
Functional Requirements
• The user id is provided when they register as staff.

• The system must only allow the user with a valid id and password to enter the system.

10
E-Library Management System System Requirement Analysis

• The system must perform an authorization process that decides what the user's level
can access.

• The user must able to log out after they finished using the system.

2.4.2 Password Recovery


Description of Feature
This feature is used by the user (librarian/library admin) whenever they forget their login
password.
Stimulus / Response Sequences
Stimulus: User runs the system.
Response: System request for user id and password.
Stimulus: The user forgets the password and presses the "Forget Password."
Response: The system sends the email which contains the applicant's password to
his email. The email is sent when the staff was registered. No validation
because only the user can open his mailing account.
Functional Requirements
The system must be able to send the correct password to the user's mailbox.

2.4.3 Register New book


Description of Feature
This feature can be performing by all users to register new books to the library.
Stimulus / Response Sequences
Stimulus: User press Register new book.
Response: System prompts Add Book form.
Stimulus: User enters the Book ISBN and key in the related information. The user
chooses a quantity of how many new books were bought and the
purchase price.
Response: System will validate the information entered, such as ISBN length, price
entered, and correct format. If all the data were entered correctly, the
system would add the book into [book] table. The row entered into
[book] depends on how many books were purchased. After entering the
database, the system will prompt a message box stating that the book
was entered successfully.
Functional Requirements
• The system must be able to verify the information.

• The system must enter the correct copies quantity into the book copies table.

11
E-Library Management System System Requirement Analysis

• The repeated ISBN should not be allowed to enter into the database.

2.4.4 Search Book


Description of Feature
This feature is found in the book maintenance part. Users can search the book based on ISBN,
book title, category, or publisher. Once the user key in character into the Search textbox, the
system will filter and show the books that fulfil the search criteria.
Stimulus / Response Sequences
Stimulus: User press Book maintenance
Response: The system shows all books.
Stimulus: User selects search criteria and key in a word as a keyword.
Response: The system will use the keyword and search for the database. For
example, the user selects ISBN, after that key in '1'. The system will
search the database and looks for the book whose ISBN contains '1'
character. After that, the system will show out the filtered text at
listview.
Functional Requirements
• The system must search the database based on selected search type (ISBN, book title,
etc.)

• The system must able to filter the book based on the keyword entered.

• The system must able to show out the filtered book in listview.

2.4.5 Publisher Maintenance


Description of Feature
This feature is used to register, edit information of the book's publisher.
Stimulus / Response Sequences
Stimulus: The user press registers new publisher.
Response: System prompts Add publisher form.
Stimulus: To add a new publisher, the user clicks 'Add' and enters the information.
The publisher id is generated automatically. On the other hand, if the
user wants to change the publisher information, they need to select a
publisher and click' Edit,' the textbox will become enable to change the
data.
Response: System will store the latest information in the database.
Functional Requirements
• The system must able to auto-generate the publisher id.

• The system must not generate the same publisher id.

12
E-Library Management System System Requirement Analysis

• When the user clicks the publisher on listview, the system should show the publisher
information on the textbox.

• The system should not allow PublisherID to be changed when the user clicks 'Edit.'

2.4.6 Member Maintenance


Description of Feature
This feature can be performing by all users to register, edit the information of a member.
Stimulus / Response Sequences
Stimulus: User press Member Registration.
Response: System prompts Member Registration form.
Stimulus: To add a new member, the user clicks 'Add' and enters the information.
The member id is generated automatically. On the other hand, if the user
wants to change the member information, they need to select a member
and click' Edit,' the textbox will become enable to change the data. Click'
Member Renewal' will add one year more valid status for the member.
Response: System will store the latest information in the database.

Functional Requirements
• The system must able to auto-generate the member id.

• The system must not generate the same member id.

• When the user clicks the member on the listview, the system should show the member
information on the textbox.

• The system should not allow MemberID to be changed when the user clicks 'Edit.'

• The system should validate the ic, email, and other info before inserting it into the
database.

13
E-Library Management System System Requirement Analysis

2.5 Non-Functional Requirements


The non-functional requirements are explained as below:
2.5.1 Performance Requirement
The proposed system that we will develop will be used as the Chief performance system that
interacts with the Faculty and Students. Therefore, it is expected, the database would likely
perform all the requirements functionally well that are specified by the user.

2.5.2 Safety Requirements


If the system crashes or faces a cyber-attack, all the files should be recovered by the database's
backup copy.

2.5.3 Security Requirements


We are going to develop a secured database. There are different categories of users, namely
Faculty, administrator, Operator, Students, etc. Depending upon the type of the user, the access
rights are decided for that user. For example, if the user is an administrator, he can only modify
the data, delete, append, etc. while no other user can perform these tasks

2.5.4 Software Quality Attributes


The Quality of the database is maintained in such a way so that it can be very user friendly to
all the users of the database.

2.5.5 Efficiency requirements


With the library management system, librarians should be able to process faster when they
process book transactions.

2.5.6 Reliability requirements


The system must perform accurately towards member requests. For example, when the
librarian saves the edited profile detail, the details must be changed according to the latest
details after reviewing their detail. When members return the book after the expired date, the
fine should be calculated accurately. It will also have a validity check to check the input to
prevent wrong data type in the registration form.

2.5.7 Usability requirements


This system must be designed with user-friendly and easy-to-use staff to perform their job
nicely. It must have explicit instructions to guide the user through the system. Besides that, the
description of the error message should be clear.

14
E-Library Management System System Requirement Analysis

Chapter 3
System Design

15
E-Library Management System System Design

3. System Design

3.1 Architectural Design

Internet
Server

Two-Tier Architecture

Users

The two-tier architecture is where a client talks directly to a server, with no intervening server.
It is simple to build. In our project, this architecture is implemented because the client that is
the user sends a request to the server that the server fulfils by merely referring to the database
and retrieving the information asked for.

Architectural Context Diagram

Users E-Library Database


Management
System

16
E-Library Management System System Design

3.2 Flow Charts

3.2.1 User Login


Login is the system that authenticates users to use the system to prevent unauthenticated users
from using the system. To login into the system, the user will provide login credentials like
username and password. The system verifies the user from the database and authenticates if
the credentials are valid. The system will redirect the user to a page containing dynamic
content, only regarding that specific user.

Start

Forget Yes
Password?

No Password Reset
Mechanism

Ask User for login info

Is Login
No
Display Error info
correct?

Yes

User Control

End
17
E-Library Management System System Design

3.2.2 Searching Book


The book search is one of the main key features of the system that helps users search books if
the book is available in the library, what is its shelf number. The searching feature also enables
users to search the book-by-book name, book author's name, ISBN.

Start

Asks for Book details, like book name,


author, ISBN

Searches database according to the input

Displaying results of the book from


database

End

18
E-Library Management System System Design

3.2.3 Adding, Updating, or Deleting Book Information


In this flow chart, the user is acted as an administrator, operator, or librarian. Only the library
staff should use this feature to provide only valid information to the system for result accuracy.

Start

No Is user
logged in?

Yes
Redirect to login

User inputs the book details, for adding,


removing or updating the book info

Asks User
for No
verification

Yes

End
19
E-Library Management System System Design

3.2.4 Book Reservation


Book reservation is the system feature that would help users reserve the book for him if it is
available, and the user will reach out to the library later in the book.

Start

No Is user
logged in?

Yes
Redirect to login

User inputs the book details

Is book
available & No
not reserved
by another
user? Display message
Book is not available
Yes for reserve

Add the book to user’s reserve


list

End

20
E-Library Management System System Design

3.2.5 Book Return

Start

Input book id and user id

Is there any
fine on the Yes
book for the
specified
user?

No Ask the specified user


to pay the fine

Does the
Yes user want to
reissue the
book to
him?

Re-Issue the book to


him No

Update the database records

End
21
E-Library Management System System Design

3.2.6 Book Issuance

Start

Does the
No person have
active
membership?

Yes

Is book No
available?

Notify user that


book is not
Yes available

Issue the book to the user and update


the database record.

End

22
E-Library Management System System Design

3.2.7 User Profile Update

Start

User want
No to change Yes
his
password?

Ask user for old password

User want
No to update Ask user for new
his profile password
info?

Yes Confirm new password

Display Error: New


passwords does not match

Is the new
No password
and confirm
password
Update User’s profile same?

Yes

End
23
E-Library Management System System Design

3.3 ER Diagram

24
E-Library Management System System Design

3.4 Use Case Diagrams


There are the following main use cases for the E-Library Management System. They defined
as separately for better understanding of the system.
3.4.1 Use Case: Administrator

Login
/Logout

View/ Update
Profile

Add New
Book

Update
/Delete Book

Search Books

Administrator
Create New
Users

Block
/Unblock
Users

Issue /Return
E-Library Management System

Books

Organize
Categories

Reports

25
E-Library Management System System Design

The administrator is the one who will have access to every feature of the system and could
control everything of the system, like creating other users account, blocking or unblocking
other accounts of the system.

3.4.2 Use Case: Operator


The operator is the user one step lower than the administrator and one step higher than the
normal library members or students. The operator could be the lower staff of the library that is
only allowed for data entry like recording books information to the system.

Login
/Logout

View/ Update
Profile

Add New
Book

Update
/Delete Book

Search Books

Operator
E-Library Management System

Issue Book

Return Book

Organize
Categories

26
E-Library Management System System Design

3.4.3 Use Case: Member


The library member is the one for the library is available. The member could be a student or
teacher who wants to borrow books from the library or to read in the library. They will have to
pay for membership fees. In this system, they can log in to the system and view their profile,
for example, their borrowed books, names, password, and reserve a book.

Login /Logout

View/ Update
Profile

Search Books

View History

View borrowed

E-Library Management System


Books
Member

Reserve Book

View Fine

27
E-Library Management System System Design

3.5 Activity Diagrams


Activity diagram is another important behavioral diagram in UML diagram to describe
dynamic aspects of the system. Activity diagram is essentially an advanced version of flow
chart that modeling the flow from one activity to another activity. There are the following
activity diagrams for the system:

3.5.1 Activity Diagram: Login

28
E-Library Management System System Design

3.5.2 Activity Diagram: View User Details

3.5.3 Activity Diagram: Search Book

29
E-Library Management System System Design

3.5.4 Activity Diagram: Reserve Book

30
E-Library Management System System Design

3.5.5 Activity Diagram: Issue Books

31
E-Library Management System System Design

3.5.6 Activity Diagram: Return Books

32
E-Library Management System System Design

3.5.7 Activity Diagram: Add/Remove Books

33
E-Library Management System System Design

3.5.8 Activity Diagram: Add/Remove Users

34
E-Library Management System System Design

3.6 Sequence Diagrams


3.6.1 Sequence Diagram: Login Process (Successful)

3.6.2 Sequence Diagram: Login Process (Failed)

35
E-Library Management System System Design

3.6.3 Sequence Diagram: Signup Process (Successful)

36
E-Library Management System System Design

3.6.4 Sequence Diagram: Signup Process (Incomplete Data)

37
E-Library Management System System Design

3.6.5 Sequence Diagram: Signup Process (User Already Exists)

3.6.6 Sequence Diagram: Book Search (Book Found)

38
E-Library Management System System Design

3.6.7 Sequence Diagram: Book Search (Book Not Found)

39
E-Library Management System System Design

3.6.8 Sequence Diagram: Book Issue (Successful)

3.6.9 Sequence Diagram: Book Issue (Failed)

40
E-Library Management System System Design

3.6.10 Sequence Diagram: Book Return

41
E-Library Management System System Design

3.6.11 Sequence Diagram: Book Return with Fine

3.6.12 Sequence Diagram: Add New Book

42
E-Library Management System System Design

3.6.13 Sequence Diagram: Book Removal

43
E-Library Management System System Design

3.6.14 Sequence Diagram: Password Change

44
E-Library Management System System Design

3.7 Data Dictionary


Table Name: admin
Description: This table stores data about admins
Fields Data Type Null/Not Null Default Value Rules
ID Int (11) Not Null - AUTO_INCREMENT
Name Varchar (30) Not Null - -
email Varchar (60) Not Null - -
password Varchar (60) Not Null - MD5 Encryption
status Int (2) Not Null - Format: 0,1
level Varchar (20) Not Null - -

Field Example Data


ID 1
Name Talha Shahab
email tshahab98@outlook.com
password 62cc2d8b4bf2d8728120d052163a77df
status 1
level admin
Table 3.7.1 Data dictionary for admin table

Table Name: books


Description: This table stores data about books
Fields Data Type Null/Not Null Default Value Rules
ID Int (11) Not Null - AUTO_INCREMENT
Name Varchar (100) Not Null - -
Authors Varchar (50) Not Null - -
Edition Int (11) Null NULL -
Publisher Varchar (50) Null NULL -
ISBN Bigint (20) Null NULL -
Category Varchar (50) Null NULL -
Details Text Null NULL -
Price Float Null NULL -
Stock Int (11) Not Null - -
Borrowed Int (11) Null NULL -

Field Example Data


ID 1
Name Securing the Cloud: Computer Security Techniques and Tactics
Authors Vic J.R. Winkler
Edition 2
Publisher Syngress, Elsevier
ISBN 9781597495929
Category Computer Science
Details Technical Editor: Bill Meine
Price 550
Stock 10
45
E-Library Management System System Design

Borrowed 9
Table 3.7.2 Data dictionary for books table

Table Name: borrowed_books_log


Description: When a book is borrowed or return, the data is save in this table
Fields Data Type Null/Not Default Value Rules
Null
ID Int (50) Not Null - AUTO_INCREMENT
Book_ID Int (50) Not Null - -
Member_ID Int (50) Not Null - -
Issued_Date Date Not Null Current_timestamp() -
Due_Date Date Not Null - -
Returned_Date Date Not Null - -
Status Varchar (10) Not Null - Format: Borrowed,
Return

Field Example Data


ID 1
Book_ID 1
Member_ID 1
Issued_Date 2021-05-28
Due_Date 2021-06-03
Returned_Date 2021-06-02
Status Returned
Table 3.7.3 Data dictionary for borrowed_books_log table

Table Name: members


Description: This table stores data about library members
Fields Data Type Null/Not Null Default Value Rules
ID Int (11) Not Null - AUTO_INCREMENT
Name Varchar (60) Not Null - -
Email Text Not Null - -
Password Text Not Null - MD5 Encryption
Contact Varchar (15) Not Null - -
Last_Fee Date Null - -
Status Tinyint (1) Not Null - Fromat: 0,1

Field Example Data


ID 1
Name Isthiaq Ahmad
Email Ishtiaqahmad4651@gmail.com
Password 62cc2d8b4bf2d8728120d052163a77df
Contact 03003030300
Last_Fee 2021-06-02
Status 1
Table 3.7.4 Data dictionary for members table

46
E-Library Management System System Design

Table Name: shipment_log


Description: This table stores data about books shipments until dispatch
Fields Data Type Null/Not Null Default Rules
Value
ID Int (11) Not Null - AUTO_INCREMENT
Member_ID Int (11) Not Null - -
Book_ID Int (11) Not Null - -
Address Text Not Null - -
Zip_Code Varchar (11) Not Null - -
Shipped Date Date Null NULL -
Due_Date Date Not Null - current_timestamp()

Field Example Data


ID 1
Member_ID 1
Book_ID 1
Address House No. 007, Khushab
Zip_Code 41000
Shipped Date 2021-06-02
Due_Date 2021-07-22
Table 3.7.5 Data dictionary for shipment_log table

47
E-Library Management System System Design

3.8 Database Design

48
E-Library Management System System Design

3.9 User Interface Design


3.9.1 Home Page

49
E-Library Management System System Design

3.9.2 Login Page

50
E-Library Management System System Design

3.9.3 Admin Panel

51
E-Library Management System System Design

3.9.4 Books Info

52
E-Library Management System System Design

3.9.5 Add New Book

53
E-Library Management System System Design

3.9.6 Edit Book

54
E-Library Management System System Design

3.9.7 Delete Book

55
E-Library Management System System Design

3.9.8 Borrowing Book Basic Form

56
E-Library Management System System Design

3.9.9 Borrowing Book Member Checking

57
E-Library Management System System Design

3.9.10 Admin Profile Settings

58
E-Library Management System System Design

3.9.11 Staff Accounts

59
E-Library Management System System Design

3.9.12 Member Panel: Search Books

60
E-Library Management System System Design

3.9.13 Access Denied

61
E-Library Management System System Design

Chapter 4
Testing

62
E-Library Management System Testing

4. Testing
After completing every part of the software, there is a need for software testing to prove that
the module is functioning correctly or not, and it fulfils all requirement of the user.
Tester Name: Ishtiaq Ahmad
Module Name: Login
Username Ishtiaq123@gmail.com Password 123
Expected Result:

Invalid username or password.

Comments from Supervisor: none

Tester Name: Ishtiaq Ahmad


Module Name: Add Member
Test Method Key in invalid data
Expected Result:

Message prompt out to tell user that information is blank or in wrong format.

Comments from Supervisor: none

Tester Name: Ishtiaq Ahmad


Module Name: Add Member
Test Method Key in invalid data
Expected Result:

Message prompt out to tell user that user already exist with this email address.

Comments from Supervisor: none

Tester Name: Ishtiaq Ahmad


Module Name: Add Member
Test Method Key in correct information
Expected Result:

Message prompt out to tell user that member account is created and member will be asked
to create password at first login.

Comments from Supervisor: none

63
E-Library Management System Testing

Tester Name: Ishtiaq Ahmad


Module Name: Add New Book
Test Method Key in invalid data
Expected Result:

Message prompt out to tell user that information is blank or does not allow information in
wrong format.

Comments from Supervisor: none

Tester Name: Ishtiaq Ahmad


Module Name: Add New Book
Test Method Key in correct information
Expected Result:

Message prompt out to tell user that book has been added to the database.

Comments from Supervisor: none

Tester Name: Ishtiaq Ahmad


Module Name: Book Management
Test Method Key in invalid data
Expected Result:

Message prompt out to tell user that information is blank or does not allow information in
wrong format.

Comments from Supervisor: none

Tester Name: Ishtiaq Ahmad


Module Name: Book Management
Test Method Key in correct information
Expected Result:

Message prompt out to tell user that database is updated.

Comments from Supervisor: none

64
E-Library Management System Testing

Tester Name: Ishtiaq Ahmad


Module Name: Add New Book
Test Method Key in correct information
Expected Result:

Message prompt out to tell user that book has been updated in the database.

Comments from Supervisor: none

Tester Name: Ishtiaq Ahmad


Module Name: Member Management
Expected Result:

Show all members in the list.


When block or active button is click of the member, their account gets blocked or activated
Create new member accounts with their email addresses and passwords will be created at
their first login.

Comments from Supervisor: none

Tester Name: Ishtiaq Ahmad


Module Name: Staff Accounts
Test Method Key in correct information
Expected Result:

Create new staff accounts and activate/block previous accounts.

Comments from Supervisor: none

Tester Name: Ishtiaq Ahmad


Module Name: Book Borrow
Test Method Key in correct information
Expected Result:

Message prompt out to tell user that book has been by that user and data is saved.

Comments from Supervisor: none

65
E-Library Management System Testing

Tester Name: Ishtiaq Ahmad


Module Name: Book Borrow
Test Method Key in invalid data
Expected Result:

Message prompt out to tell user that information is blank or does not allow information in
wrong format.

Comments from Supervisor: none

Tester Name: Ishtiaq Ahmad


Module Name: Book Return
Test Method Key in correct information
Expected Result:

Message prompt out to tell user that record is saved that the book has been returned by the
specific user.

Comments from Supervisor: none

Tester Name: Ishtiaq Ahmad


Module Name: Book Return
Test Method Key in invalid data
Expected Result:

Message prompt out to tell user that information is blank or does not allow information in
wrong format.

Comments from Supervisor: none

66
E-Library Management System Testing

Chapter 5
Implementation and Maintenance

67
E-Library Management System Implementation and Maintenance

5. Implementation and Maintenance


For the implementation and maintenance of this system, the administrator must have the
following tools and environment:
• A webserver to host this application

• The webserver must allow MySQL database and PHP

• A domain name for the system website

• System Training

• Internet connection

• A web browser to access the system through the internet

To, implement E-Library Management System following procedure needs to be followed:

• The package contains a zip file. Extract the zip file and there should be folder named
LMS and database backup file lms.sql.
• Create a database named lms in the server. Then select the database and click on the
import button.
• Choose the backup file lms.sql, extracted from the zip file, and click go button to
restore the database backup which will also create database tables.
• Now, copy the LMS folder to the server, in htdocs folder or public_html.
• Open the config.php file in includes folder, from LMS folder.
• You’ll find the following part of code:

$servername = "localhost";
$username = "root";
$password = "";
$dbname = "lms";

• Change the credentials according to your server credentials if necessary.

68
E-Library Management System Implementation and Maintenance

Chapter 6
Summary

69
E-Library Management System Summary

6. Summary
The Library management system needs to be computerized to reduce human errors and to
increase efficiency. In this document, the proposed Library management system will be a
computerized management system developed to maintain all library work. Library
management systems are designed to store all the information about books and members. The
main focus of this project is to lessen the human effort and encourage efficient record keeping.
Every user of the system and books are assigned a unique id number. So, they can be accessed
correctly and without errors. The main aim of the project is to get the correct information.
Paper analysis of positive points and constraints on the components can be safely concluded
that the whole system will be made through our level best analysis. We wish our system will
go a long way by satisfying users requirements. The computerization of Library Management
will improve efficiency and reduce human stress, thereby indirectly improving human
recourses.

70
E-Library Management System Summary

Chapter 7
Personal Reflection

71
E-Library Management System Personal Reflection

7. Personal Reflection
In this project development process, we have learnt a lot of new knowledge and programming
code from this project. Besides that, there are also some problems that appears as biggest
challenge during the development process. During system design stages, the problem appears
on how to construct the EntityRelationship diagram and Data Flow Diagram. Assignments and
studies materials in Diploma level studies materials are referred back. Some sample diagram
and researches are done via Internet for more reference.
On the other hand, the biggest harvest gained through this project development process is the
importance of communication between teammates. The communication is very important
because there must be integration between 2 teammate’s systems. We must communicate at
early stage so that there is no crash when integration. In addition, discussion is needed in
developing the project to match among library system and library web site. A good
communication is needed to avoid unnecessary problems appear and delay the completion time.

72
E-Library Management System Personal Reflection

Chapter 8
Future Scope

73
E-Library Management System Future Scope

8. Future Scope
For future enhancement, there are few suggestions to improve the system abilities. There is a
future scope of this facility that many more features such as online lectures video tutorials can
be added by teachers as well as online assignments submission facility, a feature Of group chat
where students can discuss various issues of engineering can be added to this project thus
making it more interactive more user friendly and project which fulfils each user need in the
best way possible.
This application can be easily implemented in various situations. We can add new features as
and when we require. Reusability is possible as and when require in this application. All the
modules are flexible.
8.1 Extensibility
This software is extendable in ways that its original developers may not expect. The following
principles enhance extensibility like hiding data structure, avoid traversing multiple links or
methods, avoid case statements on object type and distinguish public and private operations.
8.2 Reusability
Reusability is possible as and when required in this application. We can update it next version.
Reusable software reduces design, coding and testing cost by amortizing effort over several
designs. Reducing the amount of code also simplifies understanding, which increases the
likelihood that the code is correct. We follow up both types of reusability: Sharing newly
written code within a project and reusing previously written code on new projects.
8.3 Understandability
A method is understandable if someone other than the creator of the method can understand
the code (and the creator after a time-lapse). We use the method, which small and coherent,
helps to accomplish this.
8.4 Cost-effectiveness
Its cost is under the budget and make it within the given period. It is desirable to aim for a
system with a minimum cost subject to the condition that it must satisfy the entire requirement.

74
E-Library Management System Future Scope

Chapter 9
References

75
E-Library Management System References

9. References
• Software Engineering: A Practioner's Approach by Roger S. Pressman

• https://scribd.com

• https://www.educative.io

• https://en.wikipedia.org/wiki/Library_management

• https://www. academia.edu

________________

76

You might also like