0% found this document useful (0 votes)
35 views13 pages

AOOP Report

report

Uploaded by

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

AOOP Report

report

Uploaded by

Aliza Azhar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

LIBRARY MANAGEMENT SYSTEM

AOOP LAB PROJECT


REPORT

CE206L Advanced Object-Oriented


Programming
Spring Semester 2022

SUBMITTED BY:
ALIZA AZHAR (CE20F-151)

SUBMITTED TO:

SIR ADNAN AFROZE

Sir Syed University of Engineering & Technology


University Road, Karachi
75300 http://www.ssuet.edu.pk

AOOP PROJECT REPORT Page | 1


ACKNOWLEDGEMENT
In performing my project, we had to take the help and guideline of some
respected persons, who deserve our greatest gratitude. The completion of this
assignment gives us much Pleasure. I would like to show my gratitude to Sir
Adnan Afroze (AOOP Course Instructor), Sir Syed University of
Engineering and Technology for giving me a good guideline for assignment
throughout numerous consultations. I would also like to expand my deepest
gratitude to all those who have directly and indirectly guided me in making
this project.

I am highly indebted to my teachers for their guidance and constant supervision


as well as for providing necessary information regarding the project & also for
their support in completing the project and for their kind co-operation and
encouragement which help me in completion of this project.

Many people, especially my classmates itself have made valuable comment


suggestions on this proposal which gave us an inspiration to improve our project.
I thank all the people for their help directly and indirectlyto complete my project.

AOOP PROJECT REPORT Page | 2


TABLE OF CONTENTS

S.NO CONTENTS
1 ABSTRACT

2 INTRODUCTION

3 DESCRIPTION OF THE PROJECT

4 FUTURE SCOPE

5 METHODOLOGY

6 FLOW CHART

7 COMMANDS

8 SOURCE CODE

9 RESULT

10 APPLICATION

11 REFERENCE

12 CONCLUSION

AOOP PROJECT REPORT Page | 3


ABSTRACT
The Library Management System (LMS) GUI is a Java-based application designed to manage both
physical and digital books using a graphical user interface (GUI) built with Java Swing. This project
focuses on object-oriented programming (OOP) concepts, including encapsulation, inheritance, and
polymorphism. The system allows users to easily add, search, and display books through a user-
friendly interface, making library management more efficient and intuitive. Key functionalities include
the ability to differentiate between physical and digital books, with specific attributes for each, such as
format for digital books. This project serves as an enhancement to the console-based system by adding
visual interaction.

INTRODUCTION

The Library Management System GUI was developed to provide a more user-friendly interface for
managing books in a library. The previous console-based system required users to input commands, which
could be unintuitive for non-technical users. By introducing a GUI, we aimed to improve the usability of the
system, allowing users to interact with buttons, text fields, and dropdowns to perform operations such as
adding books, searching by title, and displaying all books in the library.

This project is a practical implementation of object-oriented programming principles. The Book class is
designed as an abstract class, with concrete subclasses for PhysicalBook and DigitalBook to illustrate
inheritance. Polymorphism is applied by treating all books uniformly when adding them to the system,
regardless of their specific type. Additionally, encapsulation ensures that book attributes (title, author, year,
format) are protected and can only be accessed through getter methods.

DESCRIPTION OF THE PROJECT


The system is divided into several key components:

 Adding Books: Users can add both physical and digital books. The GUI prompts the user to input the
book's title, author, and publication year, and for digital books, the file format (e.g., PDF, EPUB). Books
are stored in an ArrayList, which dynamically manages the collection.
 Displaying Books: The system retrieves and displays all books in the library in a text area within the
GUI. Users can see a detailed list of both physical and digital books with their respective information.
 Searching for Books by Title: The system allows users to search for books by entering the title. If a
match is found, the book’s details are displayed. If no match is found, the system notifies the user that
the book is not available.

These features are implemented using Java Swing components like JTextField for input, JButton for
actions, and JTextArea for displaying results. The system utilizes JComboBox to allow users to select
between physical and digital books when adding them.

AOOP PROJECT REPORT Page | 4


FUTURE SCOPE
The current version of the Library Management System provides basic functionalities, but it can be expanded
in several ways:

 Database Integration: Instead of storing book information in an ArrayList (temporary storage), a


database like MySQL could be integrated to provide permanent data storage. This would allow the
system to persist book records even after the program is closed.
 User Roles and Authentication: Implementing different user roles (admin and general users) would
allow better control. Admin users could have privileges to add, delete, and update books, while general
users would only be able to search and view books.
 Advanced Search and Filtering: Additional search criteria such as filtering books by author,
publication year, or book type (physical/digital) could enhance the system’s usability for large
collections.
 Cloud and Remote Access: By integrating cloud storage and remote access, libraries could use the
system across multiple locations, improving accessibility and management.

METHODOLOGY
The project followed a structured development process:

 Planning: In the initial phase, we identified the need for a more user-friendly system and decided to use
Java Swing for the interface. The requirements were gathered to ensure that the system would be simple
but extensible for future features like database integration.
 Analysis: The system's core functionalities, such as adding, displaying, and searching for books, were
defined. These features were mapped to the GUI elements, ensuring that the user interface would be
intuitive and responsive.
 Design: Object-oriented principles guided the design of the system. The Book class serves as the base
class, with PhysicalBook and DigitalBook subclasses extending it. The Library class manages the
collection of books, and the main LibraryManagementSystemGUI class handles user interactions.
Diagrams and flowcharts were created to visualize the system's functionality.
 Development: The system was implemented using Java Swing for the GUI. Various components like
JButton, JTextField, and JComboBox were used to capture user inputs. The ArrayList was employed
to store books in memory.
 Testing: The system was thoroughly tested to ensure that all functionalities—adding books, displaying
them, and searching—work as expected. Various test cases, including invalid inputs (e.g., non-numeric
years), were handled using error messages.

Hardware Requirements:

Specifies the necessary hardware such as:

 Intel Core i5 processor


 1GB RAM
 20GB of hard disk space.

Software Requirements:

AOOP PROJECT REPORT Page | 5


Lists the software needed, including

 Windows 10/11 as the operating system


 NetBeans as the IDE
 Java as the programming language.

FLOW CHART

COMMANDS
While the system is now primarily GUI-based, the underlying Java code includes methods that
perform operations when buttons are clicked. These methods manage the library's core functionalities.

AOOP PROJECT REPORT Page | 6


SOURCE CODE

AOOP PROJECT REPORT Page | 7


AOOP PROJECT REPORT Page | 8
AOOP PROJECT REPORT Page | 9
AOOP PROJECT REPORT Page | 10
RESULT

AOOP PROJECT REPORT Page | 11


AOOP PROJECT REPORT Page | 12
APPLICATION
 Suitable for small libraries or personal collections.
 The system can be used for small libraries, personal book collections, or as a starting point for more complex
library management solutions. With the potential for further expansion, it can be developed into a full-fledged
library management system with persistent storage and advanced features.

REFERENCE
https://www.youtube.com/watch?v=SWYqp7iY_Tc

https://dzone.com/articles/top-20-git-commands-with-examples

https://JavaDocumentation

CONCLUSION
The Library Management System GUI successfully demonstrates how a console-based system can
be enhanced with a graphical user interface. By applying OOP principles in a practical project, we
developed a system that is both functional and extensible. Future improvements, such as database
integration and user role management, can transform this system into a complete library management
solution.

AOOP PROJECT REPORT Page | 13

You might also like