0% found this document useful (0 votes)
3 views19 pages

Ooppro

Uploaded by

abhisheklohar220
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)
3 views19 pages

Ooppro

Uploaded by

abhisheklohar220
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/ 19

Shri Shamrao Patil (Yadravkar) Educational & Charitable Trust’s

SHARAD INSTITUTE OF TECHNOLOGY


POLYTECHNIC, YADRAV

DEPARTMENT OF
COMPUTER ENGINEERING

MICRO PROJECT REPORT


Object Oriented Programming
(313304)

Project Title: Library Management System

Branch :Computer Engineering


Academic Year : 2025-26
Semester : 3rd
Shri Shamrao Patil (Yadravkar) Educational & Charitable Trust’s
SHARAD INSTITUTE OF TECHNOLOGY POLYTECHNIC, YADRAV.

CERTIFICATE
This is to certify that,

Name of the student ROLL NO

TAHIR AFJAL SHAIKH 25066

We have successfully completed the Project work entitled “Library Management System”
under my supervision, in the partial fulfillment of the requirements for the SY Diploma in subject
Professional Communication and the report submitted to M.S.B.T.E. MUMBAI. for academic year
2025-2026

Date:
Place: S.I.T.Polytechnic, Yadrav.

Ms. P S Bodake. Mr. R.M.Patil.

PROJECT GUIDE HOD


ACKNOWLEDGMENT

It is our great pleasure to present the honor and sincere gratitude to our guide
Ms.P.S.Bodake Lecturer, Department of Computer Engineering of Sharad Institute of
Technology, Polytechnic, Yadrav helped in joining the hands in developing each and every steps
of this project and for valuable guidance and constant encouragement during completion of project
work. It was my privilege and pleasure to work under her valuable guidance. We are indeed
gratefully to her for providing me helpful suggestions. Due to her constant encouragement and
inspiration. We could complete our project work.
We are very thankful to Principal, Sharad Institute of Technology, Polytechnic, Yadrav.

Our grateful thanks to Mr.R.M.Patil Head of Computer Engineering Department, for their
valuable guidance, support and constant encouragement.

We express thanks to our family and friends for their support and encouragement at every
stage of successful completion of this project work.

Our sincere thank to all those who have directly or indirectly helped me to carry out this
work.

Name of Student Roll No


TAHIR AFJAL SHAIKH 25066
Index

1.Introduction

2.Objective

3.syst analysis

4.system design

5.implimentation

6.output

7.Advantages

8.Limitation

9.Application
1. Introduction

A Library Management System in C++ using Object-Oriented Programming (OOP)


is a software application designed to simplify and automate the basic functions of a
library. It helps in managing books, members, and transactions like issuing and
returning books in a systematic way. The system applies OOP concepts such as
classes, objects, encapsulation, inheritance, and polymorphism to represent real-
world entities like books, members, and library staff. Each entity is defined as a class
with attributes and methods, making the program modular, reusable, and easy to
maintain. For example, a Book class can hold details like title, author, and status
(issued or available), while a Member class can manage user details and borrowed
books. A central Library class coordinates all operations such as adding books,
registering members, searching for a book, issuing or returning books, and
calculating fines. File handling can also be included to store and retrieve data
permanently. Thus, the project not only improves efficiency in handling library tasks
but also demonstrates practical use of OOP principles in real-life problem solving.
Would you like me to make this paragraph short and simple for assignment use or more
formal and detailed for project report?

.
2. Objectives
1. To apply Object Oriented Programming concepts.
2. To create a user-friendly system for library operations.
3. To reduce manual effort in handling records.
4. To add, delete, display, and search book details easily.
5. To maintain issue/return records systematically.
6. To minimize time consumption and human error.
7. To provide a practical learning project for students.
8. To design a system that can add, update, delete, search, and display books.
9. To provide a simple and user-friendly interface for library
management.
10. To reduce manual errors and improve accuracy of records.
11. To maintain student details along with book issue/return history.
12. To make book tracking faster and more systematic.
13. To demonstrate the use of constructors, functions, and classes in C++
14. To create a portable and flexible system that can run on any
computer.
15. To encourage students’ practical learning through coding small projects.
3. System Analysis

 Records are maintained in registers or notebooks.


 Searching books is slow and time-consuming.
 High chances of human errors in issue/return records.
 Difficult to update or delete old records.
 Requires more paperwork and storage

 Time-consuming book management.


 Lack of accuracy and reliability.
 Data loss if records are misplaced or damaged.
 Difficult to generate reports quick.

 Computerized system using OOP concepts.


 Add, delete, search, issue, and return books easily.
 Faster and more accurate record management.
 Reduces manual effort and paperwork.
 Provides user-friendly functions for library staff.

 Can be extended with file handling and databases.


4. System Design

1. The system is designed using Object Oriented Programming concepts in C++.

2. Main components are represented as classes and objects.

3. Each class has data members (to store information) and member functions

 Class: Book
 Data Members: Book ID, Title, Author, Publisher, Status (Issued/Available).
 Functions:
o addBook() → Add a new book.
o displayBook() → Show book details.
o searchBook() → Find a book by ID or title.

 Class: Student
 Data Members: Student ID, Name, Department, Issued Book ID.
 Functions:
o issueBook() → Issue a book to student.
o returnBook() → Return the issued book.
o showStudent() → Display student details.

 Class: Library
 Functions:
o manageBooks() → Handle book operations.
o manageStudents() → Handle student operations.
o menu() → Display main menu
5. Implementation
#include <iostream.h>
#include <conio.h> class
Book
{
public:
int bookID; char
title[50]; char
author[50]; int
quantity;
void inputBook() {
cout << "\nEnter Book ID: "; cin
>> bookID;
cout << "Enter Book Title: ";
cin.ignore();
cin.getline(title, 50);
cout << "Enter Author Name: ";
cin.getline(author, 50);
cout << "Enter Quantity: "; cin >>
quantity;
}
void displayBook() {
cout << "\nBook ID: " << bookID; cout <<
"\nTitle: " << title;
cout << "\nAuthor: " << author;
cout << "\nQuantity: " << quantity << "\n";
}
void issueBook() { if
(quantity > 0) {
quantity--;
cout << "Book issued successfully.\n";
} else {
cout << "Book not available.\n";
}
}
void returnBook() {
quantity++;
cout << "Book returned successfully.\n";
}
};
void main() {
clrscr(); // clear screen for Turbo C++ Book
books[100];
int count = 0;
int choice; int
searchID; int i;
int found;
do {
cout << "\n===== Library Menu =====\n";
cout << "1. Add Book\n";
cout << "2. Display All Books\n"; cout
<< "3. Search Book by ID\n"; cout <<
"4. Issue Book\n";
cout << "5. Return Book\n"; cout
<< "6. Exit\n";
cout << "Enter your choice: "; cin >>
choice;
switch (choice) {
case 1:
if (count < 100) {
books[count].inputBook(); count++;
} else {
cout << "Library is full.\n";
} break;

case 2:
if (count == 0) {
cout << "No books available.\n";
} else {
for (i = 0; i < count; i++) {
books[i].displayBook();
}
}
break;

case 3:
cout << "Enter Book ID to search: "; cin >>
searchID;
found = 0;
for (i = 0; i < count; i++) {
if (books[i].bookID == searchID) {
books[i].displayBook();
found = 1; break;
}
}
if (!found) {
cout << "Book not found.\n";
}
break;
case 4:
cout << "Enter Book ID to issue: "; cin >>
searchID;
found = 0;
for (i = 0; i < count; i++) {
if (books[i].bookID == searchID) {
books[i].issueBook();
found = 1;
break;
}
}
if (!found) {
cout << "Book not found.\n";
}
break;

case 5:
cout << "Enter Book ID to return: "; cin >>
searchID;
found = 0;
for (i = 0; i < count; i++) {
if (books[i].bookID == searchID) {
books[i].returnBook();
found = 1; break;
}
}
if (!found) {
cout << "Book not found.\n";
}
break;
case 6:
cout << "Exiting the program.\n";
break;

default:
cout << "Invalid choice. Try again.\n";
}

} while (choice != 6); getch();


}

6. Output screenshot
7. Advantages

1 Provides a computerized system instead of manual registers.

2 Fast and accurate book record management.

3 Saves time and effort in searching and updating data.

4 Reduces paperwork and storage requirements.

5 Minimizes human errors in issuing and returning books.

6 Easy to add, delete, and update book or student records.

7 Offers a simple menu-driven interface for users.

8 Demonstrates practical application of OOP concepts in C++.

9 Can be easily extended and upgraded in the future.

10 Improves efficiency and productivity of library staff.

11 Ensures quick access to book availability information.

12 Keeps records organized and systematic.

13 Reduces duplication of work.

14 Portable system – can run on any computer with C++ compiler.

15 Acts as a learning project for students to understand software development.


8. Limitations

1. Works only in console mode (no graphical interface).

2. Records are not permanently stored without file handling.

3. Suitable only for small libraries (limited data handling).

4. Lacks advanced security features (like login/password).

5. No report generation in detailed format.

6. Limited to basic operations (add, search, issue, return).

7. Cannot be directly connected to databases like SQL in current form.

8. Not useful for large-scale institutions without modifications.

9. Does not support online access for users.

10. Requires manual updates in code for new features.


9. Application.

1. Can be used in small school or college libraries.

2. Helpful for students and teachers to maintain book records.

3. Useful as a mini project for learning OOP in C++.

4. Can serve as a base model for advanced library management software.

5. Demonstrates real-life application of programming concepts.

6. Can be extended for digital or e-library systems.

7. Useful for training and academic purposes in computer science.

8. Can help in automating simple library operations.

9. Acts as a prototype for larger database-driven projects.

10. Encourages students to apply coding in practical scenarios


10. Feature scope

1. The system can be enhanced by adding a Graphical User Interface (GUI) to make it
more user-friendly.
2. Integration with a database like MySQL or SQLite can allow permanent storage
of book and student records.
3. Online access can be added so that students and staff can check book availability
remotely.
4. Security features like login, passwords, and user roles can be implemented to
protect data.
5. Advanced features like fine calculation, notifications, and automated reports
can be included.
6. The system can be extended to handle large-scale libraries with thousands of books
and multiple users.
7. Mobile or web-based versions can be developed for easy accessibility.
8. Can be integrated with barcode or RFID systems for faster book issuing and
returning.
9. Future updates can include digital library features like e-books and online lending.
10. Provides a strong foundation for students to learn software development and database
management for real-world projects.
11. Conclusion
The Library Management System developed using OOP concepts successfully demonstrates how
basic library operations like adding, searching, issuing, and returning books can be
computerized. It reduces manual effort, saves time, and improves accuracy in record-keeping.
The project also helps students understand the practical implementation of OOP principles such

as classes, objects, constructors, and functions. In conclusion, the Library Management System
developed using C++ successfully demonstrates how core programming concepts such as object-
oriented programming, file handling, and data structures can be applied to solve real-world
problems. The system provides a simple yet effective way to manage library records, including
book details, issuing and returning of books, and user management. It reduces the burden of
manual record-keeping and minimizes the chances of errors. This project not only enhances the
efficiency of library operations but also strengthens our understanding of software development
principles using C++. With further improvements, such as integrating a graphical user interface
or database connectivity, this system can be scaled for larger institutions.

You might also like