You are on page 1of 130

FACULTY OF: Faculty of Information Computing Management (FOCIM)

COURSE: Bachelor of Science in Information Security and Forensics (BISF)


PROJECT TITLE: Bahati Library Management System
REGISTRATION NUMBER: 21/05880

UNIT CODE: BISF 2208


NAME:Narchson Muthomi
SUPERVISOR: M u t i n d a M u t i a
DATE: 23/11/2023
FINAL DOCUMENTATION............................................................................................................6
Project proposal..........................................................................................................................6
SRS.............................................................................................................................................2 0
1.0 Introduction......................................................................................................................20
1.1 Purpose......................................................................................................................20
1.2 Scope.........................................................................................................................21
What the System Will Not Do..........................................................................................21

System Benefits and Objectives......................................................................................22

1.3 Definitions, Acronyms and Abbreviations.................................................................2 3

1.4 Overview(summary of the SRS document)..............................................................23

2.0 General Description.........................................................................................................25

2.1 System Perspective...................................................................................................25

2.2 System Functionality..................................................................................................25

2.3 User Characteristics...................................................................................................28

1. Students.......................................................................................................................28
2. Library Staff.................................................................................................................28

3. Administrators..............................................................................................................29

2.4 General Constraints...................................................................................................29


2.5 Assumptions and Dependencies...............................................................................3 0

3.0 Specific Requirements.....................................................................................................30

3.1 Functional Requirements...........................................................................................30

3.1.1 Inputs and Outputs...........................................................................................30


3.1.2 Processing........................................................................................................3 1
3.2 User Interface Requirements....................................................................................33

User Interfaces.................................................................................................................33

Hardware Interfaces.........................................................................................................34

Software Interfaces..........................................................................................................34
4.0 Appendices......................................................................................................................35

Results of User Surveys.................................................................................................3 5

User Satisfaction Survey............................................................................................35


SDS.............................................................................................................................................3 7
1. Overview............................................................................................................................37
1.1 Purpose and Scope..................................................................................................3 8

1.2 Project Scope............................................................................................................38

Functional Scope.......................................................................................................3 8
Technical Scope.........................................................................................................38
Scope Limitations.......................................................................................................38

Out of Scope..............................................................................................................38

2. System Overview...............................................................................................................39

2.1 Level 0 Data Flow Diagram.......................................................................................39


2.2 Level 1 DFD..............................................................................................................40
3. System Architecture...........................................................................................................42

3.1 System Components..................................................................................................42

3.1 System Components..................................................................................................42

4. Software Design................................................................................................................4 3

4.1 Pseudocode and Flowcharts for Level 1 DFD Processes.........................................43


4.1.1 Viewing Books Pseudocode.............................................................................44

4.1.2 Managing Books Pseudocode..........................................................................44


4.1.3 Managing Users................................................................................................46
5. Database Design...............................................................................................................48

5.1 Database....................................................................................................................48
Major Entities and Attributes......................................................................................48

Primary and Foreign Keys........................................................................................4 8

5.2 Physical Description of DBMS Schema....................................................................49

5.3 Access Methods...................................................................................................50


5.4 Database Updates...............................................................................................50

6. Human Machine Interface.................................................................................................50


6.1 System Input Interface Design..................................................................................50

6.2 System Output Design..............................................................................................51

7. System Integrity Controls..................................................................................................51


8. References........................................................................................................................5 1
IMPLEMENTATION.....................................................................................................................51
1. Introduction........................................................................................................................51
1.1 Purpose......................................................................................................................51
1.2 Scope.........................................................................................................................51
2. System Architecture...........................................................................................................52
2.1 Overview....................................................................................................................52
2.2 Technologies Used.....................................................................................................52
3. User Roles........................................................................................................................52
3.1 Student.......................................................................................................................52
3.2 Faculty Member........................................................................................................52

3.3 Librarian.....................................................................................................................52
4. Database Design...............................................................................................................52
4.1 Entities.......................................................................................................................53
4.2 Relationships.............................................................................................................5 3
4.3 Schema......................................................................................................................53
6. Security Considerations.....................................................................................................53

6.1 Authentication and Authorization...............................................................................53


6.2 Input Validation..........................................................................................................5 3

7. Deployment Guidelines......................................................................................................53
Review...................................................................................................................................54
TESTING.....................................................................................................................................55
1. Introduction........................................................................................................................55
1.1 Goals and Objectives................................................................................................55
1.2 Scope.........................................................................................................................55
1.3 Major Constraints.......................................................................................................56

2. Test Plan...........................................................................................................................56

2.1 Software to Be Tested...............................................................................................56


2.2 Testing Strategy.........................................................................................................56

2.2.1 Unit Testing.......................................................................................................56

2.2.2 Integration Testing.............................................................................................57

2.2.3 Validation Testing..............................................................................................58

2.2.4 High Order Testing...........................................................................................59

2.2.5 Recovery Testing..............................................................................................6 0

2.2.6 Security Testing.................................................................................................61

2.2.7 Performance Testing.........................................................................................61

2.2.8 Stress Testing...................................................................................................6 2

2.2.9 Alpha/Beta Testing............................................................................................62

2.3 Testing Resources and Staffing................................................................................62

2.4 Test Work Products...................................................................................................63


2.5 Test Plan Record Keeping........................................................................................6 3

2.6 Test Metrics...............................................................................................................63


2.7 Testing Tools and Environment.................................................................................63

2.8 Test Schedule...........................................................................................................6 3


2.9 Test Record Keeping and Test Log...........................................................................63
USER MANUAL..........................................................................................................................64
1. Introduction........................................................................................................................64
2. Requirements....................................................................................................................6 4

2.1 Computer Requirements............................................................................................64

2.2 User Requirements....................................................................................................65


3.0 SYSTEM NAVIGATION..................................................................................................6 5
3.1 system components...................................................................................................65

3.2 Getting started.................................................................................................................65


3.2.1 Default page............................................................................................................65
3.2.2 Login pages..................................................................................................................66
3.2.2.1 Admin Login page................................................................................................66
3.2.2.2 User Login page..................................................................................................67
3.2.3 Panels...........................................................................................................................67
3.2.3.1 Admin panel.........................................................................................................67

Manage books...........................................................................................................6 8

Adding books.............................................................................................................69

Issuing books.............................................................................................................69
Managing requested books.......................................................................................70

3.2.3.2 Student panel.......................................................................................................71

Book requests............................................................................................................71

Issued books..............................................................................................................71
3.2.4 Fine management...................................................................................................72

3.2.5 Password management..........................................................................................73

3.2.6 Overdue management......................................................................................73


3.2.7 User signup page...................................................................................................74
FINAL DOCUMENTATION

Project proposal

INTRODUCTION

Background

Bahati Bookshop is an institution that manages book lending through the traditional
method which is paper-based and inefficient in tracking and managing books. In today's
digital age, the demand for efficient and user-friendly systems is on the rise. The Library is
facing

challenges in managing their book collections and facilitating easy access to students. To
address these challenges, I propose the implementation of a comprehensive Book
Lending System (BLS). This system aims to streamline book borrowing processes,
enhance user experience, and promote a culture of reading and knowledge sharing.

PROBLEM STATEMENT

The existing system is a traditional book lending system which is often cumbersome,
paper-based, and lacks the flexibility to meet the diverse needs of modern libraries
and institutions. Common issues include:

● Manual Data Entry - Traditional systems often rely on manual data entry for cataloging,
issuing, and other tasks. This can be time-consuming and error-prone, leading to

inaccuracies in library records.

● Limited Search Capabilities - Traditional cataloging systems may not offer


advanced search features, making it harder for users to find specific books or
materials.
● Overdue Management - Managing overdue books and enforcing fines can be
a complex and sometimes contentious process, leading to user dissatisfaction.
● Limited Space - Physical libraries may face space constraints due to the need to store
a large number of books and materials, limiting their ability to expand their collections.

● Security Concerns - Libraries need to ensure the security of their collections,


which includes protecting books from theft and damage.

● Resource Allocation - Libraries must allocate resources for tasks like manual
cataloging, issuing, and recovery, which can be resource-intensive.
● Lack of Real-time Information - Traditional systems may not provide real-time

information on book availability, making it challenging for users to know if a book


is currently on the shelf.

PROPOSED SOLUTION

The Libre University Book Lending System will change the way the library manages book
lending procedures. The system is a modern Book Lending System that replaces
traditional, manual methods of book management. It will streamline and automate various
processes

related to book borrowing, cataloging, and management, offering a more efficient


and user-friendly experience. Key features of the system include:

User Accounts - Users can create accounts with their credentials, enabling
easy identification and tracking of borrowed items.

Inventory Management - Automates cataloging and inventory management tasks,


reducing manual data entry and errors.

Fine Management - Automates the calculation and collection of fines for overdue
items, streamlining the process and reducing disputes.
Borrowing and Reservations - Users can browse the catalog, request, reserve items,
and borrow books digitally. The system manages due dates and reservations seamlessly.
Reporting and Analytics - Offers reporting tools for library administrators to analyze
usage data, track trends, and make data-driven decisions.

Benefits of the new system include:

Efficiency - Streamlines library operations, reducing the workload on staff and


enabling them to focus on user services.

User Experience: Offers a user-friendly interface and enhances the overall experience
with features like recommendations.

Cost Savings: Reduces administrative costs and the need for physical storage space.

Data-Driven Decision-Making: Provides valuable insights into user behavior and book

usage.

OBJECTIVES

The new Libre University Book Lending System is intended to achieve the following
objectives:

General objective

The primary objective of this project is to design, develop, and implement a robust Book

Lending System that will revolutionize the book lending process, making it more efficient
and user-friendly.

specific objectives

Seamless User Experience

To provide a user-friendly interface that simplifies book searching, reservation, borrowing, and
return processes. Users should be able to effortlessly access and interact with the system,
fostering a positive experience.

Efficient Inventory Management

To automate cataloging, inventory tracking, and item availability updates. Library staff
should spend less time on manual data entry and more on value-added services.
Cost Reduction

To reduce administrative costs associated with manual processes, such as cataloging and fine
management. The library should achieve cost savings and allocate resources more
efficiently.

Data-Driven Decision-Making

To offer reporting and analytics tools for library administrators to track usage trends and
make informed decisions. Library management should be able to optimize resource allocation
and collection development.

Sustainability and Environmental Impact

To promote sustainability by reducing paper-based processes and transportation needs. The


system should align with eco-friendly practices, contributing to environmental
conservation.

User Transition and Adoption

To facilitate a smooth transition for users from the traditional system to the digital lending

platform. Students should embrace the new system and find it at least as convenient as the old
one.

LITERATURE REVIEW

Introduction

The Evolution of Library Management Systems and Digital Lending Platforms

In an era marked by rapid technological advancements and a shift toward digitalization, libraries
and educational institutions have faced the challenge of adapting their traditional book lending
systems to meet the changing needs and expectations of users. This literature review explores
the evolution of library management systems and the emergence of digital lending platforms,

shedding light on key trends, challenges, and opportunities in the field.


Transition to Digital Libraries

The shift from traditional to digital libraries has been a significant trend over the past two
decades. Libraries have been increasingly integrating digital resources, including e-
books,
e-journals, and multimedia content, into their collections. This shift has necessitated the
development of robust digital lending platforms to facilitate the borrowing and access of these
resources.

"Libraries in the Digital Age" by Joseph Janes highlights the transformative impact of digital
technology on libraries. The study emphasizes the need for libraries to provide digital
services that align with the changing information-seeking behaviors of users. Digital lending
platforms emerge as a crucial component in this transition.

User-Centric Approaches

User-centric design and user experience have gained prominence in the development of
digital lending systems. Researchers like Nancy Fried Foster, in her work "Studying Students:
The

Undergraduate Research Project at the University ofRochester," emphasize the importance of


understanding user needs and behaviors in the design of library systems. User-friendly
interfaces, personalized recommendations, and seamless borrowing processes are critical features
that

enhance user satisfaction.

Challenges and Constraints

Several challenges have been identified in the literature regarding the implementation of digital
lending systems. Issues related to copyright compliance and digital rights management are
often discussed. The work ofKenneth D. Crews, such as "Copyright Lawfor Librarians and

Educators," addresses the complexities of copyright in the digital realm. These legal
considerations have a direct impact on the availability of digital resources in lending platforms.

Impact on Library Operations

The adoption of digital lending systems has not only influenced user experiences but has also
transformed library operations. "Library Automation and Digital Library Practices" by
Jonathan Lazar and Michael Takats describes the automation of cataloging, inventory
management, and

real-time availability tracking made possible by digital systems. These efficiencies free up
library staff for more value-added tasks.
The Role of Big Data and Analytics

Emerging trends also include the application of big data and analytics in library systems.
Researchers likeShubhangi Bhattacharya, in her work "Big Data Analytics for Libraries:
A Review," explore how data analytics can help libraries make data-driven decisions,
improve resource allocation, and enhance user experiences through personalized
recommendations.

Future Directions and Adaptation

In response to the challenges and opportunities presented by digital lending platforms, libraries
are actively exploring ways to adapt and innovate. Initiatives such as the "Open Library"
project, which aims to provide free digital access to millions of books, exemplify efforts to
expand digital lending access.

Conclusion

The literature reviewed here underscores the evolving nature of library management systems and
the pivotal role of digital lending platforms in shaping the future of libraries. User-centric
design, legal considerations, operational efficiency, data analytics, and adaptation to emerging
trends are all integral aspects of modern library systems. Understanding these trends and
challenges is

crucial for libraries and educational institutions as they strive to provide seamless,
accessible, and user-friendly book lending services in the digital age.

Two similar book lending systems that have been developed and are widely used are Koha
and Evergreen. Both are open-source library management systems that cater to libraries and

institutions looking to automate and streamline their book lending processes.

Koha

Strengths
Open Source - Koha is open-source software, which means it is freely available for use and
can be customized to meet the specific needs of a library or institution.
Active Community - Koha has a vibrant and active community of users and developers,
which leads to regular updates, bug fixes, and the development of new features.

Weaknesses

Resource-Intensive - Running Koha may require more resources in terms of hardware


and technical support than some smaller libraries can afford.

Customization Complexity – customizing Koha may require significant technical expertise


to maintain.

Evergreen

Strengths

Open Source - Evergreen is open-source, providing flexibility and cost-effectiveness


for libraries.

Stability - Evergreen has a reputation for stability and reliability, making it an attractive
option for libraries seeking long-term solutions.

Weaknesses

Complexity - While it offers powerful features, Evergreen can be complex to set up


and configure, requiring specialized expertise.

Resource Intensive - Like Koha, running Evergreen can be resource-intensive in terms


of hardware and technical support.

However the proposed Libre Book Lending system will ensure:


Scalability and Adaptability -The proposed system will be designed to be scalable and

adaptable, allowing libraries to grow and evolve with changing needs, emerging
technologies, and future trends in library services.
Compliance with Copyright and Digital Rights - The system will incorporate robust digital

rights management and copyright compliance mechanisms, ensuring that all digital resources
are licensed appropriately, reducing legal risks.

Cost Savings and Resource Efficiency - By reducing administrative costs associated


with manual processes and physical storage, the system will enable Libre University to
allocate resources more efficiently, thus maximizing their budgets.

METHODOLOGY

Research Methodology

The development and implementation of the Book Lending System will follow a
structured methodology that includes:

Requirements Gathering and Analysis - Conduct interviews and surveys with students
and library personnel to understand their needs, preferences on a book lending system.

Observation - Observe how students and library personnel interact with the system in real-
life scenarios.

Interviews - Conduct in-depth interviews with stakeholders to explore their perceptions of


the system's impact on book lending and overall satisfaction.

Regulatory compliance review - Engage legal experts to review the system's compliance
with regulations ensuring that it meets all necessary legal requirements.
Literature review - Review existing literature on book lending systems, similar solutions
to gather insights and best practices.
Usability testing - Conduct usability testing sessions with representative users (students and

library personnel) to gather feedback on the system's user interface, navigation, and overall
user experience.

Surveys and Questionnaires - Administer surveys and questionnaires to students and library
personnel to gather feedback on their experience, including aspects like security,
convenience, and efficiency.

Development Methodology

The Libre Library Book Lending System will follow the Waterfall method. The Waterfall
Model is a traditional and linear approach to software development, where each phase of the
project

follows in a sequential order, with one phase completing before the next one begins.

Requirements Gathering and Analysis - Conduct interviews and surveys with


students and library personnel to understand their needs, preferences on a book lending
system.

System Design and Architecture Planning – Make decisions regarding


technology stack, database design, and system architecture.

Software Development and Testing - write the code for the software components,

including the user interface, database interactions, and back-end logic. Carry out
rigorous testing including unit testing, integration testing, and system testing. Fix issues
and bugs.

Integration with Existing Systems (if applicable) – Identify Integration points


and develop APIs (Application Programming Interfaces) or data connectors, to
facilitate seamless data exchange between the Book Lending System and other
systems.
User Training and Documentation – Create a Comprehensive user documentation,

including user manuals and tutorials to assist users in navigating the system and
resolving common issues.

Deployment and Ongoing Support - After thorough testing and user training,
deploy the Book Lending System to production servers. The system is made
accessible to
librarians and end-users, and real-world usage begins. Perform Regular backups,
security monitoring, and performance optimization.

PROJECT CONSTRAINTS

The Libre University Book Lending System will revolutionize how the institution manages
book lending.

objectives

● To streamline and automate the book borrowing process.

● To enhance user experience by offering a user-friendly interface.

● To provide real-time information on book availability.

● To reduce administrative costs and improve resource allocation.

● To encourage user engagement through book requests.

● To ensure compliance with copyright and digital rights management.

scope boundaries

● Development of a web and mobile application for users.

● Integration with the existing library catalog and management systems.


● Implementation of automated cataloging and inventory management.

● User registration, authentication, and profile management.

● Borrowing, reservation, and fine management processes.

● Real-time book availability information.


● Reporting and analytics features for library administrators.

Constraints

Budget limitations for system development and maintenance.

Time constraints, such as a fixed project deadline.

Existing hardware and software infrastructure that must be integrated.

Data security and privacy regulations that must be adhered to.

Availability of skilled personnel for system development and support.

Exclusions
Physical hardware procurement or upgrades (e.g., new servers or barcode scanners).

Training of library staff or users beyond the system's user documentation.

Marketing or promotion of the system to library patrons.

Development of custom hardware or specialized devices for book lending.

Integration with non-library systems or services not related to book lending.

Assumptions

Stable Internet Connection - The system assumes that users have access to a stable
internet connection to browse the catalog and request for books.

User Responsibility - Users are assumed to be responsible for returning borrowed books on
time and adhering to library policies, including fine payment when necessary.
User Internet Access - The system assumes that users have internet access and necessary
the
devices (e.g., computers, smartphones, tablets) to interact with the digital platform.
BUDGET AND RESOURCES

Budget

The following budget estimate is outlined and may change with time as system requirements
and scope increases.

Item Quantity Availability Estimated Actual


cost(KES) cost(KES)

Desktop 2 None 50,000 30,000


computer

Hosting server 1 Available 50,000 50,000

Backup & 2 TB Hard 500 GB HDD 20,000 20,000


Disk Drive
storage

Security 1 None 50,000 50,000


firewalls

Regulatory 6,000 3,5000


compliance

Total 230,000 153,000

Resource Specifications Usage

Desktop computer/laptop Any computer with Library administrator


decent computing and students
power

Firewalls Any computer with To protect the server


decent computing from cyber attacks
power

Compliance certificates All certificates from the Ensure compliance to the


local authorities law
Task no Task Durati Expected Actual start Expected Actual Deliverable
on (in end date
days) start date date enddate

1 Idea generation 10 13/09/2023 16/09/2023 20/09/2023 22/09/202 Decide


3 and
Settle on
a
System
idea

2 Proposal 3 24/09/2023 25/09/2023 27/09/2023 30/09/202 Proposal


3
drafting ready

3 Proposal 1 2/10/2023 3/10/2023 4/10/2023 6/10/2023 presentatio


n
presentation

4 System 4 7/10/2023 8/10/2023 11/10/2023 12/10/202 System


3
Requirements requiremen
specifications t
s

5 System design 30 12/10/2023 13/10/2023 11/11/2023 12/11/202 System


& 3
design
programming

6 System testing 3 13/11/2023 14/11/2023 16/11/2023 17/11/202 Testing


3
& debugging

7 System 7 18/11/2023 19/11/2023 25/11/2023 26/11/202 Implemen


3 tat ion
implementation

8 Final 1 27/11/2023 27/11/2023 28/11/2023 28/11/202 Final


3
presentation document
REFERENCES

“Library Management System” by Dr. D. Y. Patil School of Engineering and


Technology, Pune.

● This project documentation provides insights into the development of a


library management system, including features, architecture, and user
interfaces.

● Reference Link:

http://www.someshwar.kolekar.info/UploadPdf/LIBRARY%20MANAGEMENT.pdf
“Library Management System Using C++" by Divyanshu Srivastava and Sambit Bikas Pal.

● This research paper presents the development of a library management system


using C++, highlighting the system's functionalities and design.

● Reference Link:

https:// www. academia. edu/37881242/ Library_ Management_ System_ Using_C ++

“Design and Implementation of Library Management System" by Ashraful Hassan


and Tawfiq Shahriar Huque.

● This paper discusses the design and implementation of a library management system
with a focus on automation and user experience.

● Reference Link:https://ieeexplore.ieee.org/document/7307272

“Library Management System" by Tutorials Point.

● This online tutorial provides an overview of library management systems, their


features, and the technologies used in their development.

● Reference Link:

https://www.tutorialspoint.com/library_management_system /index.htm

SRS
1.0 Introduction

1.1 Purpose
The purpose of this Software Requirements Specification (SRS) is to outline the
functional and non-functional requirements for Libre University Book Lending System.
It
is intended to serve as a reference document for students,library
administrators,developers and all parties involved in the development of the system.

1.2 Scope
The system to be developed is Libre University Book Lending System.
The University Book Lending System will encompass the following functionalities
and capabilities:

1. User Registration and Authentication:


○ Allow students, library staff, and administrators to create accounts.
○ Authenticate users securely to access the system.
2. Book Catalog Management:
○ Maintain an updated catalog of all available books.
○ Include book details, such as title, author, ISBN, and available copies.
3. Book Checkout and Return:
○ Enable students to check out available books.
○ Support the return of borrowed books.
4. Reservation of Books:
○ Allow users to reserve books that are currently checked out.

○ Provide notifications when reserved books become available.


5. Due Date Notifications:
○ Send reminders to users about upcoming due dates.

○ Generate overdue notices for late returns.


6. Reporting and Analytics:
○ Offer reporting features for library staff and administrators.
○ Provide insights into book utilization, user activity, and
system performance.
What the System Will Not Do
The University Book Lending System will not cover the following aspects
or functionalities:

1. Book Procurement:
○ The system will not manage the process of acquiring new books for the
library. This responsibility remains with the library staff outside the system.
2. Financial Transactions:

○ The system will not process financial transactions, such as fines for
late returns or book purchases. Any monetary transactions will be
handled through separate channels.

3. Content Management:
○ The system will not be responsible for managing the content or digital
copies of books. It will focus solely on tracking physical book copies
within the library.

System Benefits and Objectives

The primary benefits and objectives of the University Book Lending System are
as follows:

1. Efficient Book Management:


○ Streamline the tracking and management of physical book copies within
the university library, making it easier for library staff to maintain an
organized collection.

2. User Convenience:
○ Enhance the user experience by providing students with a user-
friendly platform for browsing, reserving, and checking out books.

3. Reduced Administrative Overhead:


○ Automate and simplify administrative tasks, reducing the workload
on library staff related to book lending and tracking.
4. Data-Driven Decision Making:
○ Provide comprehensive reporting and analytics to library staff and
administrators, enabling data-driven decisions to optimize book
availability and user satisfaction.

5. Notification and Reminder System:


○ Ensure that users receive timely notifications about due dates,
reservations, and book availability, reducing late returns and enhancing
user

communication.
6. Compliance and Security:
○ Maintain compliance with university policies regarding data access and
security, safeguarding user data and ensuring a safe and secure
environment for all system users.

7. Improved User Experience:


○ Create a more user-centric library experience by offering convenient online
services, ultimately contributing to the university's reputation for
excellence in library services.

1.3 Definitions, Acronyms and Abbreviations


● SRS: Software Requirements Specification

● UI: User Interface

● DB: Database
● OS: Operating System

● API: Application Programming Interface

1.4 Overview(summary of the SRS document)


This SRS document is organized into the following sections:
● Section 1: Introduction
○ 1.1 Purpose - Outlines the objectives of the SRS and defines its
intended audience.
。 1.2 Scope - Describes the detailed scope of the system, including what
the system will and will not do, as well as its benefits and objectives.
。 1.3 Definitions, Acronyms, and Abbreviations - Provides definitions and
explanations of key terms and abbreviations used throughout the
document.
。 1.4 Overview - The present section, offering a succinct summary of
what each subsequent chapter contains.
● Section 2: General Description
。 2.1 System Perspective - Defines the system's context, including whether
it is a standalone or distributed system, and presents a block diagram of
major components and external interfaces.

。 2.2 System Functionality - Details the functions and capabilities of


the system, ensuring that no assumption is made regarding user
knowledge.
。 2.3 User Characteristics - Outlines the characteristics, expectations,
and requirements of various user types, including students, library staff,
and administrators.

。 2.4 General Constraints - Identifies regulatory policies,


hardware limitations, safety, and security considerations.
。 2.5 Assumptions and Dependencies - Lists assumptions made about
the system and its users and highlights any external dependencies.
● Section 3: Specific Requirements
。 3.1 Functional Requirements - Describes inputs and outputs, data
processing, sequences of operations, responses to abnormal situations,
and methods for transforming inputs to outputs.

。 3.2 User Interface Requirements - Specifies user interface


elements, hardware and software interfaces, communication
requirements, and additional system constraints.
。 3.3 Other Requirements - Covers factors such as frequency of use,
accessibility, data retention, and operational periods, backup, and
recovery operations.
● Section 4: Appendices

Results of Surveys: Presents sample data from user satisfaction and


accessibility/performance surveys, aiding in understanding user expectations
and system requirements.

2.0 General Description

2.1 System Perspective

The University Book Lending System will be a standalone application. Below is a


block diagram illustrating the major components, interconnections, and external
interfaces:

User Interface

Application

Database (DB)

2.2 System Functionality

The University Book Lending System will perform a range of detailed functions to
ensure the efficient management of the library's book collection and to enhance the
user experience. The following is an in-depth description of these functions:
1. User Registration and Authentication:
○ Allow new users to create accounts by providing personal information,
such as name, student ID, and contact details.

○ Verify user identities through email confirmation or other secure methods.


。 Ensure that registered users have unique usernames and are not
duplicating existing accounts.
。 Enable password recovery and reset procedures.
2. Book Catalog Management:
。 Maintain a comprehensive catalog of books, including details like
title, author, ISBN, publication year, genre, and availability status.
。 Categorize books into sections or genres for easy navigation.
。 Update the catalog as new books are added to the library and remove
books that are no longer in circulation.
。 Display book cover images and detailed descriptions to help users
make informed selections.
3. Book Checkout and Return:
。 Allow registered users to search for books by title, author, or genre
and check the availability of each book.
。 Permit users to borrow books by selecting available copies.
。 Record the user's details, the borrowed book, and the due date
upon checkout.

。 Handle book returns by updating availability and calculating late fees if


applicable.
。 Generate receipts for successful book checkouts and returns.
4. Reservation of Books:
。 Enable users to reserve books that are currently checked out by other
users. 。 Notify users when reserved books become available for checkout.
。 Implement a queuing system to prioritize reservations based on the
order they were made.
5. Due Date Notifications:
。 Send automated notifications to users in advance of the due date,
reminding them to return borrowed books.
。 Calculate and display late fees for books returned after the due date.
。 Escalate overdue notifications and provide information on the steps
to resolve outstanding book returns.
6. Reporting and Analytics:
。 Provide library staff and administrators with access to a variety of
reports, such as:
■ Book utilization reports: Showing the popularity of specific books.
■ User activity reports: Tracking the frequency and types
of interactions with the system.
■ System performance reports: Monitoring the system's
responsiveness and uptime.
。 Allow users to generate personal reading history reports.
7. User Notifications and Communication:
。 Facilitate communication between the system and users
through notifications and messages.
。 Notify users about the status of their reservations, availability of
reserved books, and overdue books.
。 Display important announcements and updates from the library
or university.
8. Privacy and Security:
。 Ensure user data privacy by employing secure encryption methods
to protect sensitive information.
。 Implement access control measures to prevent unauthorized access to
user accounts and system data.
。 Maintain audit logs to track system usage and changes to the database.

9. Accessibility Features:
。 Implement accessibility features to accommodate users with disabilities,
including support for screen readers, alternative text for images,
and adaptable font sizes.

10. User Assistance and Support:


○ Provide user assistance through FAQs, online help, and contact forms
for support inquiries.

○ Offer a chat or ticket-based support system for addressing user issues


and questions.

2.3 User Characteristics

The University Book Lending System is designed to accommodate different types of


users, each with distinct characteristics, expectations, and requirements. The
system's user base includes:

1. Students

General Characteristics:

● Educational Level: Varies from undergraduate to postgraduate students.


● Experience: Range from freshmen to seniors, each with varying familiarity
with university systems.

● Technical Expertise: Basic computer skills, but not necessarily advanced


technical knowledge.

Specific User Requirements:

● Easy-to-navigate user interface to search and reserve books.


● Clear notifications about due dates and reserved book availability.
● An accessible and user-friendly system that does not require advanced
technical skills.

2. Library Staff
General Characteristics:

● Educational Level: Typically possess a degree in library science or a related field.


● Experience: Experienced in library operations and systems.
● Technical Expertise: Proficient in library software and databases.

Specific User Requirements:

● Advanced features for catalog management, including bulk book updates.


● Reporting and analytics tools for monitoring book circulation and
system performance.

● Administrative privileges for system management and user support.

3. Administrators

General Characteristics:

● Educational Level: Hold advanced degrees, often in leadership or


management roles.

● Experience: Extensive experience in administrative roles within the university.


● Technical Expertise: Proficient in system administration and high-
level decision-making.

Specific User Requirements:

● Access to comprehensive reporting and analytics for data-driven decisions.


● Ability to configure system settings, such as security parameters and notifications.
● High-level control over user management and system policies.

2.4 General Constraints


● Regulatory Policies: The system must adhere to university policies
regarding access, modification, and data handling.

● Hardware Limitations: The system should be compatible with the


university's hardware specifications.
● Safety and Security: Robust security measures must be implemented to
safeguard data and user privacy.

2.5 Assumptions and Dependencies

● Users have access to compatible devices.


● Internet connectivity is available for certain features.
● Users will follow university book lending policies.

3.0 Specific Requirements

3.1 Functional Requirements

3.1.1 Inputs and Outputs

Sources of Inputs:

1. User Registration Data: Provided by users during registration, including


names, email addresses, student IDs, and contact information.

2. Book Catalog Information: Imported from the university's book


catalog database, containing details like titles, authors, ISBNs, and
availability.

3. Book Checkout/Return Requests: Entered by users when checking out


or returning books.

4. Reservation Requests: Submitted by users to reserve books that are


currently unavailable.

Destination of Outputs:
1. User Dashboards: Where users view their account information,
book reservations, and due dates.

2. Email Notifications: Sent to users for due date reminders and


reservation availability notifications.
3. Reports: Generated for library staff and administrators for book utilization,
user activity, and system performance.

Quantities, Units of Measure, Ranges of Valid Inputs and Outputs:

● User registration data: Typically text-based (e.g., names), alphanumeric, and


valid email addresses.

● Book catalog information: Various text-based attributes (e.g., book titles,


authors), ISBNs, and availability statuses (e.g., 'available,' 'checked out').

● Book checkout/return requests: User-specific data (e.g., user ID, book


details), date and time stamps.

● Reservation requests: Book details (e.g., ISBN), user details (e.g., user ID).
● Report data: Depends on the specific report type, typically numerical data or
text summaries.

Timing:

● User registration process: Typically takes a few minutes to complete.


● Book availability check: Nearly instantaneous, as it involves a database query.
● Book checkout process: A few seconds to record the transaction and
update availability.

● Report generation: Ranges from a few seconds for simple reports to minutes
for complex analytics, depending on data volume and system load.

3.1.2 Processing

Validation of Input Data:


● User registration data must be validated for email format, uniqueness
of usernames, and completeness of required fields.

● Book catalog data is validated through database integrity constraints.


● Book checkout/return and reservation requests must ensure that users are in
good standing and books are available.

Exact Sequence of Operations: The sequence of operations for user registration,


book checkout/return, and reservations follows a consistent pattern:

1. User initiates a specific action (e.g., registering, checking out a book).


2. The system validates the request and user details.
3. Appropriate data updates are made, such as recording the book transaction
or reserving a book.

4. Notifications are sent, if necessary (e.g., confirming a successful reservation).


Responses to Abnormal Situations:
● In case of invalid user registration data, the system will display error messages
and prompt the user to correct the data.

● If a book is unavailable for checkout due to reservation conflicts, the system


will notify the user and suggest alternative actions.

● During system errors or failures, the system will display alert messages
and potentially log the error for system administrators.

Methods to Transform Inputs to Outputs:

● Book availability check involves querying the book catalog database to


determine if a book is available.

● Report generation uses algorithms and queries to retrieve and aggregate data.
● User notifications use email services to send messages to users.
● Validation of input data relies on rule-based checks for data consistency
and integrity.

3.2 User Interface Requirements

User Interfaces

1. User Registration Form:


○ A web-based form for users to create new accounts, including fields
for name, email, student ID, and password.

2. Book Search and Reservation Page:


○ A web page where users can search for books, check availability, and make
requests.
○ Includes search filters, book descriptions, and the option to request
for books.

3. User Dashboard:
○ A user-specific web page displaying information such as checked-
out books, due dates, and user account details.
4. Administrative Console:
。 A secure web-based interface for administrators and library staff to
manage the system.
。 Includes tools for catalog management, user management, reporting,
and system configuration.

Hardware Interfaces

● PC Requirements: The system should be compatible with standard PCs with


the following specifications:
。 RAM: 4GB or higher
。 Processor Speed: Intel Core i5 or equivalent
。 Free Disk Space: At least 10GB

Software Interfaces

● Operating System Platform: The system will be developed to run on


modern Windows, macOS, and Linux operating systems.
● Web Development Stack: The user interfaces will be developed using
HTML, CSS, and JavaScript for web compatibility.
● Database Management System: The system will utilize a relational
database management system MySQL to store and manage data.
● Communication Interfaces: The system may require online communication
for sending book requests to the administrators.

Other Requirements

● Frequency of Use: The system should be designed for daily use, with multiple
concurrent users.
● Accessing Capabilities: The system should support access from a range
of devices, including desktop computers, laptops, tablets, and smartphones.
● Static and Dynamic Organization: The user interfaces should be designed
for easy navigation, with dynamic elements like search filters and real-time

reservation status updates.


● Data Retention Requirements: The system must retain user account data
and transaction history for auditing purposes. Data retention should comply
with relevant privacy regulations.

● Operations:
○ Interactive Operations: Users should be able to perform interactive
actions like searching for books and making reservations in real-
time.

○ Unattended Operations: Background processes should handle tasks


like sending automated notifications and generating reports.

○ Backup and Recovery Operations: Regular system backups should be


scheduled, and a recovery plan should be in place to restore the system
in case of data loss or system failures.

4.0 Appendices

Results of User Surveys

User Satisfaction Survey

After doing some research in Libre University all the parties (students,administrators
and library staff) were optimistic that once developed the new system will revolutionize
all the library activities.

Sample Data:

Record 1: John Doe


○ Survey Date: 2023- 10- 10
○ User Type: Student
。 Overall Satisfaction: John expressed his eagerness to use the upcoming
system and indicated a high level of anticipation. He believes that such
a system will greatly improve the book lending process at the
university.

● Record 2: Sarah Smith


。 Survey Date: 2023- 10- 10
。 User Type: Library Staff
。 Overall Satisfaction: Sarah emphasized the importance of an efficient book
lending system for the library's daily operations. She eagerly anticipates
the development of this system to reduce administrative overhead.
● Record 3: Emily Johnson
。 Survey Date: 2023- 10- 10
。 User Type: Administrator
。 Overall Satisfaction: Emily, in her administrative role, is excited about the
potential of the new system to provide valuable insights through reporting
and analytics. She envisions improved decision-making with the system
in place.

● Record 4: Michael Brown


。 Survey Date: 2023- 10- 10
。 User Type: Student
。 Overall Satisfaction: Michael expressed optimism about the system but
hopes that it will offer an intuitive and user-friendly interface for
searching, requesting and reserving books.

● Record 5: Lisa Green


。 Survey Date: 2023- 10- 10
。 User Type: Library Staff
。 Overall Satisfaction: Lisa, as a library staff member, highlighted the
importance of continuous improvement. She anticipates that the system
will evolve to meet evolving user needs and library requirements.
● Record 6: Maria Garcia
○ Survey Date: 2023- 10-09
○ User Type: Student
○ Performance Expectations: Maria hopes that the system will
perform efficiently even during peak usage times, providing a
smooth user experience.

● Record 7: Kevin Turner


○ Survey Date: 2023- 10-09
○ User Type: Library Staff
○ Performance Expectations: Kevin anticipates that the system will be
reliable and responsive, allowing library staff to serve users effectively.
SDS

1. Overview
1.1 Purpose and Scope
The purpose of the Libre University Book Lending System is to provide a platform for
students and faculty to borrow and return books from the university's library. This
SDS outlines the design and architecture of the system.

1.2 Project Scope

Functional Scope
The functional scope of the system includes:

● User registration and management.


● Book catalog management.
● Borrowing and returning books.
● Managing user accounts, book availability, and due dates.

● Notifications for overdue books.


● Reporting and analytics.

Technical Scope
The technical scope includes the use of modern web-based technologies, database
management,and secure user authentication. The system should be accessible
from various devices and browsers.

Scope Limitations
The system will not handle financial transactions, such as book fines. It will also
not integrate with external library systems.

Out of Scope
The following functionalities are out of scope:
● Integration with external payment systems.
● Integration with external library databases.

● Support for e-books or digital content.


● Handling lost or damaged books.
2. System Overview

2.1 Level 0 Data Flow Diagram


Overview of the Libre University Book Lending System

Main entities of the Level 0 Data Flow Diagram include:

1. Managing All the Library: Represents the overarching management


entity responsible for overseeing all library functions and operations.

2. Managing All the Books: Encompasses activities related to book


cataloging, inventory management, and categorization within the library system.

3. Managing All the Book Issues: Focuses on the processes associated with
book borrowing, returns, fines, and overdue book management.

4. Managing All the Authors: Handles author information, including


details, biographies, and associated books.

5. Managing All the Publishers: Manages publishers'information, books


published, and associated details.

6. Managing the Students: Involves user management related to students


or members, including registration, borrowing rights, and user profiles.
2.2 Level 1 DFD
Main entities of the Level 1 DFD:
1. Processing Library Records and Generating Reports: Involves activities related
to managing and maintaining the entire library system and its associated reporting.

2. Processing Book Records and Generating Reports: Focuses on book-related

processes, cataloging, and generating comprehensive reports about all books within
the library.

3. Processing Issued Book Records and Generating Reports: Manages


processes concerning issued books, including borrowing, returns, fines, and report
generation of all issued books.

4. Processing Authors' Records and Generating Reports: Manages and


maintains author-related information and generates comprehensive reports of all
authors in the system.
5. Processing Publisher Records and Generating Reports: Handles publisher
information and generates reports encompassing all publishers associated with
the library.

6. Processing Student Records and Generating Reports: Manages student


records, including profiles, memberships, and generates reports encompassing all
registered

students or members.

Level 2 dfd
3. System Architecture

3.1 System Components


● User Interface (UI)
● Application server
● Database Management System (DBMS)

● User

3.1 System Components


● User Interface (UI)
● Application server
● Database Management System (DBMS)
● User
Database: The database serves as the core data storage component of
the system, housing all pertinent application data. This includes user
profiles

for students, library staff, and administrators. Moreover, it acts as a

repository for all books integrated into the system.

Application Server: Functioning as the intermediary link, the application


server orchestrates the connection between the database and the users.
It manages user requests and delivers database results, serving as the

central pivot that connects the mobile application (users) to the database.

Desktop Application (Frontend): The desktop application is the


user- facing component of the automated system, offering an intuitive

graphical user interface (GUI). The design emphasizes enhancing user


experience by providing distinct pages based on user account types. For
instance, the system admin accesses a different user profile compared
to other user categories, each having tailored functionalities.

Users: The users represent the human aspect of the automated system,
categorized into different types as previously outlined in the
documentation. They access the system primarily through the mobile

application, requiring a designated account for system access. Each User's account
is specific to their status, roles, and user type, ensuring

tailored access and functionalities based on individual permissions


and roles within the system.
4. Software Design

4.1 Pseudocode and Flowcharts for Level 1 DFD Processes


4.1.1 Viewing Books Pseudocode
BEGIN
IF User is Student or Faculty

Display List of Available Books


ELSE
Display Manage Books Options

IF Option is View Books


Display List of All Books
END

4.1.2 Managing Books Pseudocode


BEGIN
IF User is Library Staff
Display Manage Books Options
IF Option is Add Book

Add Book to Database


IF Option is Update Book

Update Book in Database


IF Option is Delete Book

Delete Book from Database

ELSE
Display Error: Unauthorized Access
END
4.1.3 Managing Users
This process is dedicated to administrative user management within
the Libre University Book Lending System.
1. Open Application:
• The admin initiates the application.
2. Navigate to Administrative Functions:
• Accesses the personal page offering various administrative

functions, including user management.


3. Manage Users:
• The admin selects the "Manage Users" option,
providing functionalities to block or deactivate a user.

• Block/Deactivate User:
• This action disables the user's account,
preventing access to the system.

4. Confirmation and Application Exit:


• The admin confirms the action and exits the application.
Managing users Pseudocode
BEGIN
IF User is Library Administrator

Display Manage Users Options


IF Option is Add User

Add User to Database

IF Option is Update User


Update User Information in Database
IF Option is Delete User

Delete User from Database

ELSE
Display Error: Unauthorized Access
END
5. Database Design

5.1 Database

Major Entities and Attributes

The database will be normalized to ensure there is no redundancy, with


appropriate relationships between entities.
Primary and Foreign Keys
All tables will have primary keys for identification, and foreign keys where necessary to
establish relationships.

1---n Relationship
1. Books Table:
• A data table containing all books managed within the library system,

accessed by the intended audience.


2. Users Table:
A data table containing information on all application users, including

faculty members, students, and administrators.


3. User Books Table:
• A data table mapping books with theirrespective posters, enabling
the generation of reports on the book's reach and engagement.

5.2 Physical Description of DBMS Schema

Attribute Description Example

BookID Unique identifier for a 101010


book

IssueDate Date of issue 29/10/2023


BookCourse Field related to the book Computing

Returndate Date to return the book 4/11/2023

Default user table


Attribute Data type Default Required Auto Primary
Key
value Increment

UserID Numeric None YES YES YES

Attribute varchar None YES No No

Username Varchar None YES No No

Password MD5 hash None YES No No

Booklist Alphanum None No No No


eri c

Data dictionary

Variable Variable Name Variable type Variable length

USER_ID USER_ID Numeric 7

Book_ID Book_ID Numeric 7

5.3 Access Methods

The system will use SQL queries to access and modify the database.

5.4 Database Updates

Database updates will occur through SQL INSERT, UPDATE, and DELETE
statements, ensuring data consistency.
6. Human Machine Interface

6.1 System Input Interface Design

The UI will include forms for user registration, book management, and
user management, with appropriate input validation and error handling.
6.2 System Output Design

The UI will display book lists, user details, and notifications, with clear and user-
friendly layouts.

7. System Integrity Controls

The system will include authentication and authorization mechanisms to ensure data
integrity and security. It will also have regular backup procedures to prevent data
loss.

8. References
Software Design Document (SDD) Templates:

• GitHub: A repository containing various SDD


templates. SDD Templates on GitHub

• TechWhirl: Offers a comprehensive SDD template


and guidelines. TechWhirl SDD Template

IMPLEMENTATION

1. Introduction

1.1 Purpose
The purpose of the Libre University Book Lending System is to provide an efficient and

user-friendly platform for students and faculty members to borrow and return books from the
university library. The system aims to streamline the book lending process, reduce
administrative workload, and enhance the overall library experience.

1.2 Scope
The scope of this document encompasses the technical details and implementation guidelines
for the Libre University Book Lending System. It covers the system architecture, user roles,

database design, API specifications, security considerations, and deployment guidelines.


2. System Architecture

2.1 Overview
The system architecture of Libre University is based on a three-tier architecture:

● Presentation Tier: The user interface accessible through web browsers and mobile
devices.

● Application Tier: The business logic and functionality of the system, implemented using
PHP,CSS and HTML.

● Data Tier: The database where user data, book records, and transaction history are
stored, using a relational database management system (RDBMS) MYSQL.

2.2 Technologies Used

● Frontend: HTML and CSS

● Backend: PHP

● Database: MYSQL

3. User Roles

3.1 Student

● View available books

● Borrow books

● Return books

● View personal borrowing history

● Request for a book

3.2 Faculty Member


● Same privileges as students

● Reserve books for courses

● Extend borrowing periods for course-related books


3.3 Librarian
● Manage book inventory

● Approve book reservations

● Generate reports on book transactions

4. Database Design
4.1 Entities

● User

● Book

● Transaction

● Reservation

4.2 Relationships

● One-to-Many relationship between User and Transaction

● Many-to-Many relationship between Book and User (for borrowed books)

● Many-to-Many relationship between Book and Reservation

4.3 Schema

● User (user_id, username, password, role)

● Book (book_id, title, author, availability)

● Transaction (transaction_id, user_id, book_id, borrow_date, return_date)

● Reservation (reservation_id, user_id, book_id, reservation_date)

6. Security Considerations

6.1 Authentication and Authorization

● Use role-based access control to restrict functionalities based on user roles

6.2 Input Validation


● Implement input validation to prevent SQL injection and other security vulnerabilities

7. Deployment Guidelines

Training involves making sure that users are fully conversant with how the system works
despite providing the user manual to the enterprise management. These will include providing a
system tour on the whole system and making the users participate throughout the whole
process.

Additionally, the application will provide a platform on which the users can raise issues
for assistance.

The training aids to be used include:


1. User tutorials and guides on first login.

2. A User manual accessible from the application to be available for users who want
to refer to it.

Review

This is a process of verifying whether the application is in order. This is meant to ensure that
the application is acting normally and as prescribed by the configurations in place.

Part of the application review is the software maintenance plan. This is an elaborate and

continuous system that allows the developer and the system owners to track the progress of
an application to determine how the application is performing. This can be used to help back
track the application to its original course by rectifying errors as their come up.

Software maintenance can also be used to add functionality to the application for it to be
more productive. There are different modes of software maintenance as discussed below;

1. Corrective maintenance – this is repairing/processing performance failures or

rectifying misleading information. In this case this would mean corrective measures
to minimize errors.

2. Adaptive maintenance – this means altering of the program to be in line with required

conditions due to changes of the business environment for example, change in


business operations etc.

3. Perfective maintenance – this is for adding functionality to the application for more

productivity this is meant to improve performance, increase efficiency, effectiveness


and other benefits.
Activities in software maintenance are;

1. Correcting coding and design errors – this is done when there is an issue of the
delivery of the system, particularly not being in terms with what the system is supposed
to
achieve.

2. Updating documentation/ test data – this is the additional of not included data in
prior documentations e.g. Addition of extra source code and its functionality.

3. Upgrading user support.

4. Enhancement – this is the adding, modifying or redeveloping of code to


support changes.

Reasons for maintaining software

1. Necessary to keep up with the changing user needs and operational environment.

2. To modify code and make it more enhanced.

3. To ensure the code is clean of bugs.

4. A well maintained software results to a more reliable system and with faster
response time.

TESTING
1.2 Scope
1. Introduction

1.1 Goals and Objectives

The primary goal of testing the Libre University Book Lending System is to ensure
its reliability, functionality, security, and performance. The objectives are to identify
and

rectify any defects, validate the system's compliance with requirements, and assess
its overall quality.

1.2 Scope
The testing will cover all components and features of the Libre University Book
Lending System, including user registration, book searching, lending, return,
notifications, and administrative functions.

1.3 Major Constraints

● Limited testing time and resources.


● Dependency on external libraries and services.

● Compatibility with various web browsers and devices.

2. Test Plan

2.1 Software to Be Tested

The software to be tested includes the Libre University Book Lending System in
its entirety, comprising both front-end and back-end components.

2.2 Testing Strategy

The testing strategy encompasses various testing levels:

2.2.1 Unit Testing

Unit testing will focus on testing individual components and functions within the
system, ensuring each works as intended.

Component Description Test Cases Expected Status

Results

Login Test user Test with Successful Pass/Fail


login valid and login, error
Functionality
functionality invalid message

credentials

Registration Validate user Verify all Form Pass/Fail


fields, submission
Form registration
validation
form messages success

Search Test book Search with Relevant Pass/Fail


Algorithm search results
search keywords,
algorithm filters applied

Borrow Book Test book Borrow a Book Pass/Fail


book, check marked as
Feature borrowing
borrowed
availability
functionality

Return Book Validate Return a Book Pass/Fail


book return book, check marked as
Feature
returned
functionality transaction

2.2.2 Integration Testing

Integration testing will verify that the different components interact seamlessly and
that data flows correctly between them.

Component Description Test Expected Status


Scenarios
Results

User Test user Register, Successful Pass/Fail


Registration login, check login, session
registration
user
and Login and login
session
integration

Book Validate Search for Accurate Pass/Fail


Database integration books, book

with the book retrieve book information


Integration
database details

Borrow-Return Test the Borrow, return Successful Pass/Fail


Workflow end-to-end a book, transaction,
book update
inventory
borrowing inventory

process

Notifications Check Trigger Users Pass/Fail


integration notifications receive
Integration
with on book notifications
notification events

systems

2.2.3 Validation Testing

Validation testing will confirm that the system meets the specified requirements and
is user-friendly.

Component Description Test Criteria Validation Status

Checks

User Interface Validate the User- Intuitive, Pass/Fail


user friendly,
consistent
interface responsive
design
design, layout
User Verify user Registration, Secure, Pass/Fail
Authentication authentication login, error-free
process process
password
recovery

Database Ensure data Data retrieval, Accurate and Pass/Fail


Consistency consistency storage, up-to-date
and data
synchroniza
tio

Security and Assess Data Secure data, Pass/Fail


system encryption,
Privacy user privacy
security
access
controls,

privacy

Usability Evaluate User Easy, Pass/Fail


interactions, efficient,
usability
user-friendly
navigation,

user flows

2.2.4 High Order Testing

This testing level assesses the system's performance under real-world


conditions, including its response time,scalability, and concurrency handling.

Component Description Test Expected Status


Scenarios
Results

Load and Evaluate Simulate Stable Pass/Fail


Performance system multiple performanc
under load users, e, low
heavy traffic latency

Scalability Assess Increase Scalable, no Pass/Fail


system's load and resource
monitor exhaustion
scalability
resource
usage

Concurrency Test Simulate No data Pass/Fail


system's concurrent corruption,
Handling
ability to
user actions reliable
handle
concurrency

Failover and Check Simulate Minimal Pass/Fail


system downtime,
Recovery system
failover and
failures, data
recovery
recovery recovery
process

2.2.5 Recovery Testing

Recovery testing will ensure the system can recover gracefully from
unexpected failures, including power outages, server crashes, or data
corruption.

Recovery testing is the forced failure of the system in a variety of ways to verify
that recovery is properly performed.

Some of the recovery testing that will be used includes:

1. Switching off server when the application is loading data after that
checking the validity of applications data integrity.
2. Sudden restarting the computer while the system is running and after
that checking the validity of applications data integrity.
3. Switching off data when the application is running and observe what happens.

4. Testing whether authentication forms can be bypassed by the user session.

2.2.6 Security Testing

Security testing will assess the system's resilience against vulnerabilities and
ensure that sensitive user data is adequately protected.

Concepts covered in security testing are: confidentiality, integrity,


authentication, authorization, availability and non-repudiation.

1. Confidentiality – a security measure which protects against the disclosure


of information to parties other than the intended recipient.

2. Integrity – a measure intended to allow the receiver to determine that the

information which it receives has not been altered in transit or by other than
the originator of the information.

3. Authorization – process of determining that the requestor is allowed to receive


a service or perform an operation. This will ensure access control to the
system.
4. Availability – this entails assuring information and services will be ready
for use when expected. It will also ensure that information is kept available
to authorized persons when they need it.

2.2.7 Performance Testing


Performance testing will evaluate the system's responsiveness and resource
utilization under different loads.

2.2.8 Stress Testing

Stress testing will assess the system's behavior under extreme conditions to
identify potential bottlenecks or weaknesses.

This can be done by flooding the application with;

1. New users- this is meant to measure how the application can


accommodate a lot of users.

2. Books-books for different audiences can be sent in bulk to examine


the practicability of the system under high pressure.

3. Books access requests- the application should handle the pressure of having
a lot of people accessing Books. This will be telling of how the application can

handle the pressure.

2.2.9 Alpha/Beta Testing

Alpha and beta testing will involve real users to gather feedback on usability
and uncover any unanticipated issues.
2.3 Testing Resources and Staffing

This application does not require a lot of resources; the application can be deployed to
a random sample of users in Libre University which has computer labs (Beta testers).
The
device owners will then be trained on how to use the application and a study will be
conducted to determine how the users interact with the application and how well
the application responds to the user needs. The users identified should be from all

organization levels i.e. students, teachers, administration, departments.

2.4 Test Work Products

The test work products will include test cases, test scripts, test reports, and defect
logs.

2.5 Test Plan Record Keeping

All test plans, test results, and associated documentation will be maintained
for reference and future improvements.

2.6 Test Metrics

Metrics will be collected and analyzed to measure testing progress, defect density,
test coverage, and other relevant indicators.

2.7 Testing Tools and Environment

Tools and environments, such as test automation tools, browsers, databases,


and virtualization software, will be used as needed.

2.8 Test Schedule


The testing schedule will outline timelines and milestones for each testing phase
and their dependencies.

2.9 Test Record Keeping and Test Log

All testing activities, results, issues, and resolutions will be documented in a test log
for reference and future assessments.
This testing document serves as a roadmap to ensure that the Libre University Book
Lending System is thoroughly tested, validated, and ready for deployment. It
outlines the strategy, resources, and schedule for a successful testing process.

USER MANUAL

1. Introduction

Welcome to Libre University's Book Lending System! This system has been designed
to streamline and simplify the process of borrowing and returning books within the

university community. Whether you are a student, faculty member, or staff,


Libre University Book Lending System is here to enhance your library
experience.

In this user manual, you will find comprehensive information on how to use the
system effectively, from installation to borrowing and returning books. Please read
through this manual carefully to make the most of the features provided by Libre
University Book Lending System.

2. Requirements

Before you start using the Libre University Book Lending System, ensure that
your system meets the following requirements.

2.1 Computer Requirements

To run the system smoothly, your computer should meet the following specifications:
● Operating System - The system is compatible with Windows 10, macOS,
and Linux.

● Web Browser - We recommend using the latest versions of Google


Chrome, Mozilla Firefox, or Microsoft Edge for the best user experience.
● Internet Connection - A stable internet connection is required for accessing
the online features of the system.

● Hardware - A computer with a minimum of 4GB RAM and a dual-core


processor is recommended.

2.2 User Requirements

As a user of the Libre University Book Lending System, please ensure that you:

● Have a Valid University ID - You must possess a valid university ID to


access the system and borrow books.

● Understand Library Policies - Familiarize yourself with the university


library's borrowing policies and adhere to them while using the system.

● Keep Login Credentials Secure - Protect your login credentials and do


not share them with others to ensure the security of your account.

● Update Personal Information - Keep your contact information up-to-date


within the system to receive timely notifications and updates.

3.0 SYSTEM NAVIGATION

3.1 system components


The main components of Libre University Book Lending System are:

● Default page

● Login page - (Admin Login and User Login)

● Logout page

● User Signup page

3.2 Getting started


3.2.1 Default page
This is the page that first appears when the User or Library Administrator visits the system
Uniform Resource Locator (URL).

The User or Admin can then select the appropriate part of the homepage in order to login.
3.2.2 Login pages

3.2.2.1 Admin Login page


This page allows the admin to enter the username,password and verification code so as to
login to the system.
3.2.2.2 User Login page
This page allows the user to enter the Email Id,password and verification code so as to login
to the system.

3.2.3 Panels

3.2.3.1 Admin panel


The admin can perform various functions after logging in:

The admin can manage the book categories, he/she can edit or delete existing book categories.
Manage books

The admin can edit or delete existing books in the system.


Adding books
The admin can add a book to the system.

Procedure - Enter the book name,select the book category and publication, enter the ISBN
number, No of copies available and the price.

Issuing books

The admin can issue a new book to a student.

Procedure:

Enter the student ID, Book ID and Book Title.


Managing requested books
The admin can also manage books requested by the students so as to add them to the
system if they are available in the school library.
3.2.3.2 Student panel

After the user has successfully logged into the system, he/she can view the books
issued, books not returned yet or request a book.

Book requests
This page allows the user to request for a book.

Issued books
The issued books page allows the user to view the book name, ISBN, issued date,return
date and any fine incurred.
3.2.4 Fine management
This page allows the admin to set the fine on a particular day.
3.2.5 Password management
This page allows the admin to change the existing password to a new password.

3.2.6 Overdue management


The overdue report page allows the admin to view any overdue books, he/she can print the
list for record keeping purposes.
3.2.7 User signup page
This page allows a user to create an account so as to use the book lending system

You might also like