0% found this document useful (0 votes)
8 views46 pages

Library Management System Report 2024

The document presents a report on a Library Management System (LMS) developed by students at Abaarso Tech University as part of their Bachelor's degree in Software Engineering. It outlines the objectives, methodology, and expected outcomes of the LMS, which aims to automate library operations, improve user experience, and enhance resource management. The research emphasizes the importance of technology integration and user-friendly design in addressing the challenges faced by traditional library systems.

Uploaded by

Abdifatah taho
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views46 pages

Library Management System Report 2024

The document presents a report on a Library Management System (LMS) developed by students at Abaarso Tech University as part of their Bachelor's degree in Software Engineering. It outlines the objectives, methodology, and expected outcomes of the LMS, which aims to automate library operations, improve user experience, and enhance resource management. The research emphasizes the importance of technology integration and user-friendly design in addressing the challenges faced by traditional library systems.

Uploaded by

Abdifatah taho
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

DEPARTMENT OF SOFTWARE ENGINEERING

ABAARSO TECH UNIVERSITY

Library management system

[Link] Maxamud Ahmed


[Link] Omer Abdi
[Link] Abdi Mohamed
[Link] Mahad Ibrahim
[Link] Mohammed Hassan

2024

1
Library management system
By
[Link] Maxamud Ahmed
[Link] Omer Abdi
[Link] Abdi Mohamed

[Link] Mahad Ibrahim


[Link] Mohammed Hassan

Project Supervisor: Hamse Yusuf Jama

A REPORT SUBMITTED IN PARTIAL FULFILLMENT OF


THE REQUIREMENTS FOR THE BACHELOR OF SCIENCE IN
SOFTWARE ENGINEERING

DEPARTMENT OF SOFTWARE ENGINEERING


ABAARSO TECH UNIVERSITY
2024

2
DECLARATION
I declare that I am the author of this paper and that any assistance I received in its preparation is
fully acknowledged and disclosed in the paper. I have also cited any sources from which I used
data, ideas, or words, either quoted directly or paraphrased. I also certify that this paper was
prepared by me specifically for the partial fulfillment of the degree of Software at Abaarso Tech
University.

Mohamed Omer
Signature ………………...
Date …………………….

Abdishakur Maxamud
Signature ……………….
Date …………………….

Sakariya Mohamed
Signature ……………….
Date …………………….

Suber Abdi
Signature ……………….
Date …………………….

Ibrahim Mahad
Signature ……………….
Date …………………….

3
Approval Sheet

This dissertation research paper entitled "Library Management System" has been done under me
supervision and has been submitted to the faculty for examination with my approval as the
candidate’s advisor.

Name and Signature of Supervisor:

Name and Signature of Chairman:

Name and Signature of Panelist:

Name and Signature of Panelist:

Name and Signature of Panelist:

Date of Comprehensive Examination:

Grade:

Name and Signature of Director of Department:

4
Dedication

We dedicate this thesis to our dearest family, especially our fathers and mothers, who have
worked.
diligently in this academic achievement, financially and morally. We also dedicate it to our best
friends who have helped us approvingly and cooperatively in our academic struggle. We wish all
of them a long, healthy life on Earth and in Paradise hereafter.

5
Acknowledgements
First of all, we are honored to thank the Almighty ALLAH (SCW) for keeping us healthy and
allowing us to complete this thesis and for guiding us successfully through this program.

Secondly, we would like to express our genuine gratitude to our research supervisor, Mr. Hamse
Yusuf Jama of Abaarso Tech University, Somaliland, for his endless support, perceptive
comments, guidance, encouragement, supervision, diligence, and effective communication. His
support was invaluable in the preparation of this tangible thesis and in helping us reach this stage
of our academic career. We also extend our great thankfulness to the staff of the Software
Engineering department, especially Mr. Abdishakur Mohumed Ducale (Dean), and the rest of the
staff who contributed indirectly to the completion of this research study.

Thirdly, many thanks to our dearest and incomparable mothers who inspired and encouraged us
to accomplish what we have realized so far. We also thank our dear families, brothers, sisters,
classmates, friends, and relatives for their continuous and everlasting motivation, which helped
us overcome any barriers.

Finally, we would like to express our sincere gratitude to our respondents who kindly provided
responses for the execution of the study.

6
Abstract

This research project aims to design and implement an efficient Library Management System
(LMS) to streamline the operations of a library, enhancing both user experience and
administrative processes. The primary objectives are to develop a system that manages book
inventories, automates lending and return procedures, tracks overdue items, and facilitates user
account management. Additionally, the system aims to provide comprehensive reporting tools
for library staff to monitor usage patterns and manage resources effectively.

The research methodology involves a systematic approach to software development, employing


the Agile methodology to ensure iterative progress and user feedback integration. The project
begins with a requirement analysis phase, where the needs of librarians and library patrons are
gathered through surveys and interviews. Based on these requirements, a detailed design
blueprint is created, outlining the system architecture, database schema, and user interface
layouts.

The development phase uses a combination of technologies such as HTML, CSS, PHP A
relational database management system (RDBMS) like MySQL is employed to store and manage
data. The system undergoes rigorous testing, including unit testing, integration testing, and user
acceptance testing, to ensure functionality, reliability, and user-friendliness.

Upon completion, the LMS is deployed in a controlled environment, where its performance is
monitored and any issues are promptly addressed. The project concludes with a comprehensive
evaluation, documenting the system's effectiveness in improving library operations and user
satisfaction. This research offers valuable insights for educational institutions and public libraries
seeking to enhance their management processes through technology

7
DECLARATION........................................................................................................................2
Approval Sheet...........................................................................................................................3
Dedication...................................................................................................................................1
Acknowledgements.....................................................................................................................1
Abstract.......................................................................................................................................2
CHAPTER ONE......................................................................................................8
INTRODUCTION......................................................................................................................8
1.3 Objectives of the Project................................................................................................10
1.4 Scope of the Project........................................................................................................11
1.5 Procedure/Methodology.................................................................................................12
1.6 Expected Outcome..........................................................................................................12
CHAPTER TWO...................................................................................................14
LITERATURE REVEIW........................................................................................................14
2.2 Existing Systems.................................................................................................................14
2.3 Disadvantages of Existing Systems...................................................................................14
2.4 Proposed System.................................................................................................................14
2.5 Advantages of Proposed System...................................................................................15
2.6 Design and Implementation..............................................................................................15
2.7 Methodology.......................................................................................................................16
CHAPTER THREE...............................................................................................17
SYSTEM ANALYSIS..............................................................................................................17
3.1 Introduction........................................................................................................................17
3.2 Requirements Analysis......................................................................................................17
3.2.1 Methods of Requirements Gathering........................................................................17
3.2.2 Functional Requirements...........................................................................................17
3.2.3 Non-Functional Requirements...................................................................................18
3.3 System Design.....................................................................................................................18
3.3.1 System Architecture....................................................................................................18
3.3.2 User Interface Design..................................................................................................19
3.4 Data Modeling....................................................................................................................20

8
3.4.1 Conceptual Data Model..............................................................................................21
3.4.2 Logical Data Model.....................................................................................................21
3.4.3 Physical Data Model....................................................................................................21
3.5 Process Modeling................................................................................................................21
3.6 Feasibility Analysis.............................................................................................................24
CHAPTER FOUR.................................................................................................26
SYSTEM DESIGN...................................................................................................................26
4.0 Introduction........................................................................................................................26
4.1 Architectural Design..........................................................................................................26
4.2 User Interface Design.........................................................................................................27
4.3 Physical Database Design..................................................................................................33
4.3.1 Database Schema.........................................................................................................33
4.3.2 Data Dictionary...............................................................................................................33
CHAPTER FIVE...................................................................................................36
IMPLEMENTATION AND TESTING.................................................................................36
5.1 Introduction........................................................................................................................36
5.2 Development Tools and Environment used.....................................................................36
5.2.1 System testing..............................................................................................................36
5.2.2 Unit testing...................................................................................................................36
5.2.3 Module testing.............................................................................................................37
5.2.4 Integration testing.......................................................................................................37
5.2.5 Testing..........................................................................................................................37
5.1Sample Codes.......................................................................................................................37
CHAPTER SIX......................................................................................................42
SUMMARY AND CONCLUSION.........................................................................................42
6.1 Conclusion for the Project Objectives..............................................................................42
6.2 What we have learned during this project?.....................................................................42
6.3 Future Improvements........................................................................................................42
References.................................................................................................................................43

9
10
CHAPTER ONE
INTRODUCTION

1.0 Introduction

Introduction to a Library Management System (LMS): A Library Management System is a


software application used by libraries to manage their resources efficiently. It helps librarians
organize, catalogue, and circulate books, journals, media, and other materials available in the
library. Let’s break down the key components of a Library Management System (LMS),
including the problem background, problem statement, objectives, scope, and procedure:

1.1 Background

The problem background of school library management systems (LMS) can vary based on
different contexts and regions. Let’s explore some common challenges faced by school libraries
in managing their resources effectively:

Lack of Qualified Personnel: Many school libraries are managed by individuals who lack formal
training or background in library management.

The need to find qualified librarians or administrators who understand library science and
effective management remains a core challenge.

Insufficient Support from Administrators: School administrators or principals play a crucial role
in supporting library operations. Lack of prioritized focus on libraries and inadequate support
from school leadership can hinder effective management.

Resource Constraints: School libraries often face limitations in terms of funding, space, and
equipment. The availability of space and proper maintenance of equipment are essential for
efficient library operations.

Expanding Roles and Expectations: School libraries are expected to go beyond providing reading
books. They must also offer other information sources such as audiovisual materials, multimedia

11
resources, and internet access. Balancing these expanded roles while maintaining traditional
library functions can be challenging.

Technology Integration: The integration of technology into library services is crucial.

Managing digital resources, online catalogs, and ensuring access to information on the internet
require technical expertise and infrastructure.

Changing Learning Environments: As teaching and learning methods evolve, school libraries
must adapt. They need to align with modern educational practices, including project-based
learning, research, and information literacy.

User Engagement and Outreach: Encouraging students and teachers to actively use the library is
essential. Promoting library services, organizing events, and creating a welcoming environment
are ongoing challenges.

In summary, addressing these challenges involves a combination of qualified staff,


administrative support, technological advancements, and a holistic approach to library
management.

1.2 Problem Statement

The current library management systems face several challenges that impact their efficiency and
effectiveness. Here are the key issues that an LMS should address:

Manual Processes and Record Keeping: Issue: Managing libraries manually is cumbersome and
prone to errors. Challenge: Librarians spend significant time recording book transactions,
maintaining borrower information, and updating inventory. Solution: An LMS should automate
these processes, ensuring accurate record-keeping and efficient management.

Efficient Book Allocation and Search: Issue: Library users expect a more efficient way to find
specific books or locate materials based on keywords. Challenge: Traditional cataloging systems
may not provide seamless search capabilities. Solution: An LMS allows users to search for
books, add new titles, update existing records, and download resources.

User Expectations and Technology Integration: Issue: Users demand modern features and
convenience. Challenge: Integrating technology into library services while meeting user

12
expectations can be complex. Solution: An LMS should handle check-in/check-out processes,
borrower transactions, and provide a user-friendly interface.

Resource Constraints and Staffing: Issue: Libraries often face limitations in funding, space, and
qualified personnel. Challenge: Efficiently managing resources within these constraints is
essential. Solution: An LMS streamlines resource allocation, monitors book availability, and
optimizes library operations.

User Experience and Accessibility: Issue: Libraries serve diverse user needs, including students,
researchers, and casual readers. Challenge: Ensuring a positive user experience and accessibility
for all patrons is critical. Solution: An LMS should provide a user-friendly interface, facilitate
resource discovery, and enhance engagement.

In summary, the problem statement for an LMS revolves around improving library operations,
enhancing user experiences, and addressing the limitations of manual systems. By implementing
an effective LMS, libraries can streamline processes, provide efficient search capabilities, and
better manage their resource.

1.3 Objectives of the Project


Certainly! Let’s outline the objectives of a Library Management System (LMS) in a clear and
itemized manner. These objectives are essential for efficient library operations and improved
user experiences:

Automating Library Processes: Objective: Develop an LMS that automates manual tasks such as
book issuance, returns, cataloging, and inventory management. Rationale: Automation reduces
human errors, saves time, and ensures accurate record-keeping.

Efficient Resource Management: Objective: Enable librarians to efficiently allocate and track
resources (books, journals, multimedia) within the library. Rationale: Effective resource
management ensures optimal utilization and availability for library users.

User-Friendly Interface: Objective: Design an intuitive and user-friendly interface for both
librarians and patrons. Rationale: A well-designed interface enhances user experiences,
encourages library usage, and simplifies interactions.

13
Security and Privacy: Objective: Ensure data security, privacy, and access control within the
LMS. Rationale: Protecting user information and maintaining confidentiality are critical for trust
and compliance.

Reporting and Analytics: Objective: Provide reporting tools for librarians to analyze usage
patterns, popular titles, and resource availability. Rationale: Data-driven insights help optimize
library services and collection development.

In summary, an effective LMS addresses these objectives to enhance library services, improve
user satisfaction, and streamline operations.

1.4 Scope of the Project


The scope of a library management system (LMS) encompasses various aspects that aim to
streamline and enhance the operations of a library. This comprehensive approach ensures that a
library management system can meet the diverse needs of its users and staff, providing a
consistent, effective, and efficient service. Here’s an outline based on the information gathered:

Management Fundamentals: An LMS supports the core functions of a library, such as acquiring,
cataloging, loaning, and reporting on stock/information to enable effective service management.

User Accessibility: It allows users to discover what items or information the library holds and
facilitates the borrowing or accessing of required items/information.

Technological Integration: Modern LMSs incorporate information and communication


technologies to improve library services and operations, leading to efficiency, quality, economy,
and satisfaction.

Managerial Aspects: The system is managed at different levels, requiring qualities of an effective
manager, and understanding the managerial role within library organizations.

Adaptability and Growth: Good management in libraries involves adopting proven principles
from non-library sectors to contribute to successful operations, with the potential for future
enhancements and expansion.

14
1.5 Procedure/Methodology
The procedure or methodology used in library management typically involves a structured
approach to ensure efficient and effective service delivery. Here’s a general outline of the
methodology based on the search results:

Team Formation: Assemble a team with diverse skills to address various aspects of the project.

Requirement Gathering: Collect detailed requirements to create a Software Requirement


Specification (SRS) document, which guides the entire project.

System Design: Develop use case diagrams, entity-relationship (ER) models, and data flow
diagrams to plan the system architecture.

Implementation: Create the library management system using appropriate technologies for both
frontend and backend development.

Testing: Conduct thorough testing to ensure the system meets all functional and non-functional
requirements.

Deployment: Implement the system within the library environment, ensuring all components are
properly integrated.

Maintenance: Provide ongoing support and updates to the system to accommodate changes and
improvements over time.

Documentation: Maintain comprehensive documentation throughout the project for reference


and future enhancements.

This methodology ensures that the library management system is developed systematically,
meeting the needs of both library staff and patrons.

1.6 Expected Outcome


The expected outcomes of a library management system (LMS) are to streamline library
operations and enhance the user experience. Here are some key outcomes based on the search
results:

Improved Staff Performance: An LMS is designed to boost overall staff performance, making
their tasks more efficient and less time-consuming.

15
Time Savings: Both librarians and patrons save significant time due to the automation of routine
tasks and self-service capabilities.

Enhanced User Experience: Patrons enjoy a better experience with easy access to library
resources and services.

Effective Reporting and Oversight: An LMS provides better reporting tools for oversight,
helping to make informed decisions about library management.

Privacy and Security: Ensures the privacy, security, and safety of user data and library resources.

These outcomes collectively contribute to a more organized, accessible, and user-friendly library
environment.

16
CHAPTER TWO
LITERATURE REVEIW

2.1 Introduction

In this section, we introduce the chapter by outlining its purpose and importance. We will
explore the existing library management systems, their limitations, and the need for an improved
system. We will also provide an overview of the proposed Library Management System, which
aims to enhance user experience and efficiency.

2.2 Existing Systems


In this part, we examine the various library management systems currently in use within
universities. These systems range from basic cataloging software to more advanced integrated
solutions. We analyze their functionalities, including book cataloging, borrowing, returning
processes, and user interface design.

2.3 Disadvantages of Existing Systems


This section focuses on the limitations and issues associated with the existing systems. Key
points include:
 Poor User Experience: Many current systems have outdated interfaces, making them
difficult to use for both students and librarians.
 Inefficiency: The existing systems often require manual interventions, leading to time-
consuming processes and errors.
 Poor Book Management: Inadequate tracking of books leads to issues such as misplaced
books and difficulties in inventory management.
 Limited Functionality: Some systems lack essential features such as online access,
comprehensive reporting tools.
 Absence of Systems in Some Universities: There are universities without any library
management systems, relying solely on manual processes which are prone to errors and
inefficiencies.

2.4 Proposed System


In this section, we present the proposed Library Management System designed to address the
shortcomings of the existing systems. The proposed system includes the following features:

17
 User-Friendly Interface: A modern and intuitive interface that enhances user experience
for both students and librarians.
 Efficient Book Management: Improved tracking and inventory management to ensure
books are easily located and accounted for.
 Online Access: Providing online access to the library catalog and user accounts, allowing
students to check book availability and manage their loans remotely.
 Integration: Seamless integration with other university systems such as student
information systems and digital libraries.
 Comprehensive Reporting: Advanced reporting tools to provide insights into library
usage, book circulation, and user behavior.

2.5 Advantages of Proposed System


This final section outlines the benefits of the proposed Library Management System. The
advantages include:
 Enhanced User Experience: The modern interface and improved usability make it easier
for users to navigate the system.
 Increased Efficiency: Automation of processes reduces time and effort required for
routine tasks, allowing staff to focus on more critical activities.
 Better Book Management: Accurate tracking and inventory management ensure books
are always available when needed.
 Remote Access: Online features allow users to access the library resources from
anywhere, at any time.
 Improved Integration: The system’s ability to integrate with other university systems
creates a more cohesive and efficient ecosystem.
 Actionable Insights: Comprehensive reporting tools provide valuable data to help
improve library services and decision-making.

2.6 Design and Implementation


With the advancement of network technology, LMS are becoming increasingly popular. An
effective LMS has roles for both users and administrators.
User Functions
 Login.
 Viewing the details of the books.
 Viewing Transaction.
Administrator Functions
 Book management.
 User management.
 Category management.
 Administrator management.
Reporting.

18
2.7 Methodology
This LMS platform allows users to search and borrow books online based on titles, authors, and
subjects. Key functionalities include catalog management, product management, customer
management, and a digital borrowing system. The system provides users with a catalog of
various books available in the library, categorized by subjects such as Biochemistry,
Engineering, Medicine, Mathematics, Pharmacy, and Computer Science.
The LMS is implemented using a backend database and a web browser frontend. The
development process utilizes the following tools:
- Programming Language: Hypertext Preprocessor (PHP)
- Development Environment: XAMPP
- Database Management System: MySQL

19
CHAPTER THREE
SYSTEM ANALYSIS

3.1 Introduction
System analysis is a critical phase in developing the Library Management System (LMS). It
involves understanding the needs and requirements of the library, designing the system to meet
these requirements, and ensuring the feasibility and efficiency of the system. This chapter covers
the requirements analysis, system design, data and process modeling, and feasibility analysis of
the LMS.

3.2 Requirements Analysis


Requirements analysis identifies the needs and constraints of the system from various
stakeholders' perspectives. This section details the methods used for requirements gathering, the
identified functional and non-functional requirements, and the tools used for documentation.

3.2.1 Methods of Requirements Gathering


• Interviews: Conduct structured interviews with librarians, staff, and users to gather detailed
information about their needs and expectations.

• Questionnaires: Distribute surveys to a broader audience to collect quantitative data on user


requirements and preferences.

• Observation: Observe library operations to identify inefficiencies and areas where automation
can improve processes.

•Document Analysis: Review existing documentation, such as library records, to understand


current workflows and identify gaps.

3.2.2 Functional Requirements


Functional requirements define what the system should do.

• Catalog Management: The system should allow adding, updating, deleting, and searching for
library items.

20
• User Management: It should manage user accounts, including registration, authentication, and
roles.

• Borrowing and Returning: The system should handle the borrowing and returning of items,
including due date tracking and fine calculation.

• Inventory Management: It should manage the inventory of items, tracking their availability
and condition.

• Reporting: The system should generate various reports for library statistics, user activity, and
inventory status.

3.2.3 Non-Functional Requirements


Non-functional requirements define how the system performs its functions.

• Performance: The system must process transactions efficiently with minimal latency.

• Usability: The interface should be user-friendly and intuitive.

• Scalability: It should be scalable to handle future growth in users and items.

• Reliability: The system must be reliable with minimal downtime.

3.3 System Design


System design translates requirements into a blueprint for the LMS. This section includes system
architecture, user interface design, and database design.

3.3.1 System Architecture


The system architecture defines the structure and interaction of system components.

• Client-Server Architecture: The LMS uses a client-server model where client applications
interact with a server to request services.

• Three-Tier Architecture: The system is divided into presentation, application logic, and data
storage tiers.

• Presentation Tier: The user interface.

• Application Logic Tier: The business logic.

21
• Data Storage Tier: The database.

3.3.2 User Interface Design


The user interface (UI) should be intuitive and user-friendly.

• Dashboard: A central dashboard providing access to key features like catalog management and
reporting.

• Search Interface: A search bar for finding library items.

• Forms: Data entry forms for adding new items, registering users, and borrowing/returning
items.

• Reports: Interfaces for generating and viewing reports.

22
3.3.3 Database Design

Database design defines the data structures and relationships.

• Entity-Relationship Diagram (ERD): ** Visual representation of the database schema.

• Entities: Books, Users, Loans, Returns, Fines.

• Relationships: Users can borrow multiple books; books can be borrowed multiple times.

• Normalization: Ensuring the database is normalized to eliminate redundancy and maintain


data integrity.

23
3.4 Data Modeling
Data modeling creates a representation of the data structures required by the LMS.

3.4.1 Conceptual Data Model


Defines the high-level structure of the database.

• Book, User, Loan) and their attributes (e.g., Book ID, Title, User ID, Borrowed Date).

3.4.2 Logical Data Model


Details the logical structure of the database.

• Tables and Relationships: Defining tables and their relationships.

• Book Table: Book ID, Title, Author, ISBN, Category, Status.

• User Table: User ID, Name, Email, Role.

• Loan Table: Loan ID, User ID, Book ID, Borrowed Date, Due Date.

3.4.3 Physical Data Model


Implements the logical model in a database management system (DBMS).

• Database Implementation: Implementing the logical model in a DBMS like MySQL.

• Indexes and Keys: Defining primary keys, foreign keys, and indexes to optimize performance.

3.5 Process Modeling


Process modeling creates diagrams representing the system's processes and workflows.

3.5.1 Data Flow Diagrams (DFD)

Visualizes the flow of data within the system.

• Context Diagram: High-level DFD showing the LMS as a single process interacting with
external entities.

24
Level 2 DFD: Detailed DFD breaking down the LMS into subprocesses.

25
3.5.2 Use Case Diagrams

Illustrates the interactions between users and the system.

• Actors and Use Cases: Identifying actors (e.g., users, administrators) and their interactions
(e.g., search books, borrow books).

26
3.5.3 Activity Diagrams

Shows the workflows for key processes.

• Borrowing a book: Visual representation of the steps involved in borrowing a book.

3.6 Feasibility Analysis


Feasibility analysis assesses the practicality of the LMS project.

27
3.6.1 Technical Feasibility

• Technology Assessment: Evaluating the technologies required for the LMS (software,
hardware, network).

• Skills and Expertise: Assessing the availability of the technical skills needed.

3.6.2 Economic Feasibility

• Cost-Benefit Analysis: Estimating the costs and benefits of the LMS.

• Budget Considerations: Ensuring the project is within budget.

3.6.3 Operational Feasibility

• User Acceptance: Assessing whether users will accept and use the LMS.

• Operational Impact: Evaluating the impact on current library operations.

3.7 Summary

This chapter provided a comprehensive system analysis of the LMS. Starting with requirements
analysis, we identified the functional and non-functional requirements. We then detailed the
system design, including the architecture, UI, and database design. Data and process modeling
provided a deeper understanding of the system's structure and workflows. Finally, we conducted
a feasibility analysis to evaluate the LMS's technical, economic, and operational viability. This
thorough analysis forms the foundation for the successful development and implementation of
the LMS.

28
CHAPTER FOUR
SYSTEM DESIGN

4.0 Introduction
This chapter of the project document which provides a system design of this project design is the
association between requirements specification and the final solution. The goal of the design
process is to produce a representation model of a system, which can be used later to build that
system.

The produced model is called the design of the system it is a plan for a solution to the system
design is the process of defining the elements of a system such as the architecture modules,
components, the different interfaces of those components, and the data that goes through that
system.

4.1 Architectural Design


The objective of architecture design is to determine how the software components of the
information system will be assigned to the hardware devices of the system. The Architecture
design flows primarily from the nonfunctional requirements, such as Operational, performance,
security, and other requirements.

29
4.2 User Interface Design
A user interface is the part of the system with which the users interact. It includes the
screen displays that provide navigation through the system, the screens and forms that
capture data, and the reports that the system produces.

 Output Design: Screen & Print layouts


 Input (form) Design: For entering data

Dashboard

30
Login

Add book

31
Add course

Add student

32
List book

Borrow book

33
Add borrow

Add book return

34
Return book

Edit book

35
4.3 Physical Database Design
Is the process of transforming a logical data model into an actual physical database? Physical
database modeling deals with designing the actual database based on the requirements gathered
during logical database modeling. All the information gathered is converted into relational
models and business models. Objects are defined at a level called a schema level. A schema is
considered a group of objects which are related to each other in a database.

4.3.1 Database Schema

4.3.2 Data Dictionary


The data dictionary is a set of tables SQL uses to maintain information about the database. The
data dictionary contains information about the tables, indexes, clusters, and so on. Using data
Dictionary Database applications can be made much simpler if you maintain a body of data that

36
describes your tables. Every Programming task in a database application needs to know
something about the tables it is working with, so every program in a framework and many
programs in an application can benefit from a central store of information about the database.
Table 1: admin
Column Data type Identity Null able Default
PK ID Int
Username Varchar (255)
Password Varchar (255)
first name Varchar (255)
last name Varchar (255)
photo Varchar (255)
Created date date

Table 2: books
column datatype identity Null able default
PK id INT
isbn Varchar (20)
FK category_id int

title Text
author Varchar(150)
publisher Varchar(150)
publisher_date date
status int

Table 3: Borrow
column datatype identity Null able default
pk Id int
FK Student_id int
FK Book_id int
Date_borrow date
status int

Table 4: Category
column datatype identity Null able default
pk id int
name Varchar(100)

37
Table 5: Course
column datatype identity Null able default
pk id int
title text
code Varchar(15)

Table 6: return
column datatype identity Null able default
PK id int
FK Student_id int
FK Book_id int
Date_return date

Table 7: students
column datatype identity Null able default
PK id int
FK Student_id Varchar(150)
firstname Varchar(150)
lastname Varchar(150)
photo Varchar(200)
FK Course_id int
Create_on date

38
CHAPTER FIVE
IMPLEMENTATION AND TESTING
5.1 Introduction
Implementation is the stage in the project where the theoretical design is turned into a working
system. The implementation phase constructs install and operate the new system. The most
crucial stage in achieving a new successful system is that it will work efficiently and effectively.

5.2 Development Tools and Environment used


Microsoft Visual Studio is an integrated development environment (IDE) from Microsoft. It is
used to develop computer programs, as well as websites, web apps, web services, and mobile
apps. Visual Studio uses Microsoft software development platforms such as Windows API,
Windows Forms, Windows Presentation Foundation, Windows Store, and Microsoft Silverlight.

Justification: Visual Studio was selected for its robust features, including debugging, code
navigation, and integration with version control systems.

MySQL is an open-source relational database management system (RDBMS) that utilizes


structured query language (SQL). It is one of the most popular databases in the world, known for
its reliability, robustness, and ease of use. MySQL is used in a variety of applications, including
web applications, data warehousing, e-commerce, and logging applications.

Justification: MySQL was chosen for its reliability, ease of use, and strong support for
transactional operations.

5.2.1 System testing


System testing is the testing complete and fully integrated software system that evaluates the
system's compliance with its specified requirements. System testing falls within the [Link]
rule system testing takes as its input all of the integrated software components.

5.2.2 Unit testing


A unit is the smallest testable part of any software. Unit testing is a level of software testing
where individual units or components of the software are tested. A unit is the smallest testable
part of any software.

39
5.2.3 Module testing
The module testing is the testing of complete code objects as produced by the compiler when
built from the source. A library may be composed of a single compiled object.

5.2.4 Integration testing


The integration testing is known as the software that we use that allows as creating the program
easily and successfully which includes Visual Studio and MySQL.

5.2.5 Testing
Software testing is the process of executing a program or application with the intent of finding
software bugs. It can also be stated as the process of validating and verifying a software program
or application or product.

5.1Sample Codes
Sample of Login Code

<?pup
session start();
include 'includes/[Link]';
if(asset($_POST['login'])) {
$username = $_POST['username'];
$password = $_POST['password'];

$sql = "SELECT * FROM admin WHERE username = '$username'";


$query = $conn->query($sql);

if($query->num_rows < 1){


$_SESSION['error'] = 'Cannot find account with the username';
}
else{
$row = $query->fetch_assoc();
if(password_verify($password, $row['password'])){

40
$_SESSION['admin'] = $row['id'];
}
else{
$_SESSION['error'] = 'Incorrect password';
}
}
}
else{
$_SESSION['error'] = 'Input admin credentials first';
}
header('location: [Link]');
?>

Sample of Add Student

<?php
include 'includes/[Link]';

if(isset($_POST['add'])){
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$course = $_POST['course'];
$filename = $_FILES['photo']['name'];
if(!empty($filename)){
move_uploaded_file($_FILES['photo']['tmp_name'], '../images/'.
$filename);
}
//creating studentid
$letters = '';
$numbers = '';
foreach (range('A', 'Z') as $char) {

41
$letters .= $char;
}
for($i = 0; $i < 10; $i++){
$numbers .= $i;
}
$student_id = substr(str_shuffle($letters), 0,
3).substr(str_shuffle($numbers), 0, 9);
//
$sql = "INSERT INTO students (student_id, firstname, lastname, course_id, photo,
created_on) VALUES ('$student_id', '$firstname', '$lastname', '$course', '$filename',
NOW())";
if($conn->query($sql)){
$_SESSION['success'] = 'Student added successfully';
}
else{
$_SESSION['error'] = $conn->error;
}

}
else{
$_SESSION['error'] = 'Fill up add form first';
}

header('location: [Link]');
?>

Sample of Borrow

<?php
include 'includes/[Link]';

42
if(isset($_POST['add'])){
$student = $_POST['student'];

$sql = "SELECT * FROM students WHERE student_id = '$student'";


$query = $conn->query($sql);
if($query->num_rows < 1){

if(!isset($_SESSION['error'])){
$_SESSION['error'] = array();
}
$_SESSION['error'][] = 'Student not found';
}
else{
$row = $query->fetch_assoc();
$student_id = $row['id'];

$added = 0;
foreach($_POST['isbn'] as $isbn){
if(!empty($isbn)){

$sql = "SELECT * FROM books WHERE isbn = '$isbn' AND status !=


1";
$query = $conn->query($sql);
if($query->num_rows > 0){
$brow = $query->fetch_assoc();
$bid = $brow['id'];

$sql = "INSERT INTO borrow (student_id, book_id, date_borrow) VALUES


('$student_id', '$bid', NOW())";
if($conn->query($sql)){
$added++;

43
$sql = "UPDATE books SET status =1 WHERE id = '$bid'";
$conn->query($sql);
}
else{
if(!isset($_SESSION['error'])){
$_SESSION['error'] =
array();
}
$_SESSION['error'][] = $conn>error;
}

}
else{
if(!isset($_SESSION['error'])){
$_SESSION['error'] = array();
}
$_SESSION['error'][] = 'Book with ISBN - '.$isbn.' unavailable';
}
} }

if($added > 0){


$book = ($added == 1) ? 'Book' : 'Books';
$_SESSION['success'] = $added.' '.$book.' successfully borrowed'
}

}
}
else{
$_SESSION['error'] = 'Fill up add form first';
}

44
header('location: [Link]');

?>

CHAPTER SIX
SUMMARY AND CONCLUSION

6.1 Conclusion for the Project Objectives


the Online Library Management System project has successfully met its objectives,
resulting in a highly functional, user-friendly, and secure platform that enhances both
user accessibility and operational efficiency. The system's scalable design ensures that it
can adapt to future growth, and its comprehensive reporting capabilities support informed
management decisions. Overall, the project represents a significant advancement in
library management technology, offering valuable benefits to both users and library staff.

6.2 What we have learned during this project?


We have learned during this project many things that we don’t know before like:

 importance of teamwork.
 Problem-Solving and Critical Thinking.
 Project Management.
 Technical Proficiency.

6.3 Future Improvements


 Natural Language Processing.
 Advanced Search Capabilities.

45
References

 W3 school’s website [Link]


 Php [Link]
 Mera Academy [Link]
 MySql [Link]

46

You might also like