0% found this document useful (0 votes)
23 views3 pages

Smart Inventory Management Report

Uploaded by

atifjutt85542
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)
23 views3 pages

Smart Inventory Management Report

Uploaded by

atifjutt85542
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
You are on page 1/ 3

Project Report

Smart Inventory Management System


1. Introduction
This project titled Smart Inventory Management System is developed to demonstrate the core
principles of Object-Oriented Programming (OOP) using Java. The aim is to provide a basic
inventory management solution where an Admin can securely manage various product categories
like Clothing, Electronics, and Groceries. The system allows product addition, deletion, and
viewing—while ensuring that all data is persisted using file handling techniques.

2. Project Objectives
 To implement key OOP principles such as abstraction, inheritance, encapsulation, and
polymorphism.
 To design an organized system where different types of products can be added and
managed.
 To provide role-based access (Admin/User).
 To maintain product data through file storage using Java I/O.

3. Tools and Technologies


 Programming Language: Java
 Development Environment: Apache Netbeans
 Persistence: Text File (products.txt)
 Operating System: Windows 10

4. System Architecture
 Admin Class

 The Admin class is responsible for handling admin information and login
functionality.
 It uses a fixed password and validates input before allowing access to inventory
operations.

 Product Class (Abstract)

 This is the base class for all products and is declared as abstract.
 It contains shared properties such as id, name, price, quantity, and category.
 It defines an abstract method print() which is implemented by each subclass.
 Clothing Product Class

 Inherits from Product.


 Adds specific fields: size and color.
 Overrides print() to display clothing details.

 Electronic Product Class

 Inherits from Product.


 Adds specific fields: brand and warrantyPeriod.
 Overrides print() to display electronic product details.

 Grocery Product Class

 Inherits from Product.


 Adds specific fields: expirationDate and packaging.
 Overrides print() to show grocery product details.

5. InventoryManager Class
Manages product data, provides admin/user menus, and handles file operations for saving/loading
inventory.

 Admin Menu: Add, View All, View by Category, Delete


 User Menu: View All, View by Category
 File Handling: saveToFile() and loadFromFile()
 Categories: 1 = Grocery, 2 = Electronic, 3 = Clothing

6. Main Class

 Acts as the entry point for the program.


 Displays a main menu for selecting either Admin or User role.
 Loads saved product data at startup and saves updates on exit.

7. OOP Concepts Used

OOP Principle Implementation in Project

Encapsulation Private fields with public getters/setters

Inheritance Subclasses (Clothing, Grocery, Electronic)


extend Product

Polymorphism Overridden print() methods in each product


subclass

Abstraction Product class declared abstract with abstract


print()

8. Sample Output (Console)


Welcome to Inventory System:
1. Admin
2. User
3. Exit

> Enter password: 123

Admin Menu:
1. Add Product
2. View All Products
3. View Products by Category
4. Delete Product by Category
5. Back

Sample product display:

[G123] | Grocery | Milk | Rs 250.00 | Qty: 10 | Exp: 2025-08-01 | Pack: TetraPak


[E112] | Electronic | LED TV | Rs 45000.00 | Qty: 4 | Brand: Samsung | Warranty: 2Years
[C301] | Clothing | T-Shirt | Rs 899.00 | Qty: 20 | Size: M | Color: Blue

9. Conclusion

This project provided hands-on experience with the fundamental principles of Object-Oriented
Programming in Java. It showed how a structured system can be built to manage real-world tasks
like inventory handling, and how different Java concepts can be tied together in a practical
application. Features like inheritance, polymorphism, encapsulation, file handling, and user
interaction were integrated to build a fully working console-based system.

You might also like