0% found this document useful (0 votes)
4 views14 pages

Object Oriented Development With JAVA

The document outlines a project for developing a GUI-based hall booking application using Java and Object-Oriented Programming (OOP) principles. It details the roles of different users, functional and non-functional requirements, and includes a SWOT analysis highlighting strengths, weaknesses, opportunities, and threats. The application aims to provide efficient booking management while ensuring secure data storage and modular design.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views14 pages

Object Oriented Development With JAVA

The document outlines a project for developing a GUI-based hall booking application using Java and Object-Oriented Programming (OOP) principles. It details the roles of different users, functional and non-functional requirements, and includes a SWOT analysis highlighting strengths, weaknesses, opportunities, and threats. The application aims to provide efficient booking management while ensuring secure data storage and modular design.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 14

Object Oriented

Development with
JAVA

• Group Members:
•Rachit
Bhandari(NPI000289)
•Rabin
Bastola(NPI000288)
•Sulav
Shrestha(NPI000304)
•Sudhir
Maharjan(NPI000303)
Addresses the need for digital hall
booking

GUI-based Java application using OOP

Introducti
Modular and functional design
on
Data stored in text files (no database)

Roles: Customer, Scheduler, Admin,


Manager
Objective
Objective:
• Build efficient GUI-based application

and Scope • Demonstrate OOP concepts


(Encapsulation, Inheritance, etc.)
• Secure and accessible data storage
• Implement key system functions:
booking, managing users, sales, etc.
Scope:
• Supports 4 user types with specific
functions
• Booking hours: 8 AM – 6 PM
• .txt file-based storage only
Functional Requirements

User Hall booking Hall


Issue reporting
registration and management
(customers)
and login cancellation (schedulers)

Sales tracking
User
and task Receipt
management Secure logout
assignment generation
(admins)
(managers)
Built in Java with GUI
Data stored in .txt files

Non- Input validation


Functional Modular and maintainable
Requireme code
nts Follows OOP principles
Operates 8 AM – 6 PM
Easy to extend in future
Software
Requirements
•Java-based development
•.txt file data storage
•GUI for user interaction
•Input validation to prevent errors
•Follows OOP principles
•Modular, maintainable design
Usecase Diagram

• Four main user roles: Customer,


Admin, Manager, Scheduler
• Customer: Register, login,
book/cancel halls, check
availability, update info, raise
issues
• Admin: View bookings, manage
users and data
• Manager: Handle issues, generate
reports, manage sales data
• Scheduler: Manage hall
availability, maintenance, and
assigned tasks
• Uses "include" and "extend" to
show mandatory and optional
functions
Class Diagram

•Central User class with roles: Customer,


Admin, Scheduler, Manager
•Each role has a dedicated service:
Customer Service, Admin Service, etc.
•Hall class includes ID, type, capacity, rate,
and description
•Booking Service handles booking creation,
cancellation, and availability
•Linked entities: Booking, Hall Availability,
Issue, Maintenance
•Modular, role-based design for clear
separation of responsibilities
Strengths:
• User-friendly interface
• Role-based access control
• Strong OOP design
SWOT • Offline capability using text files
Analysis Weaknesses:
• Limited scalability
• No real-time updates
• Basic security
Opportunities:
• Future database integration
• Mobile/web app expansion
• Advanced analytics for managers
Threats:
• Data loss/corruption risks
• Unauthorized access
• Market competition
Automation
Testing
•Reduces bugs and human error
•Faster and more accurate testing
•Boosts developer confidence
Test Files:
•TestLogin.java: Validates login
functionality
•TestBCrypt.java: Tests password
encryption
•TestApp.java: Tests general logic
and file handling
Extra Features

HASHED MULTI-OS LOGGER AUTO ROLE FORGOT


PASSWORDS COMPATIBILITY INTEGRATION DETECTION AT PASSWORD WITH
USING BCRYPT WITH JAVA APIS WITH LOGIN OTP
JAVA.UTIL.LOGGIN
G

MVC STRUCTURE
AND SOLID
PRINCIPLES
Encapsulation:

Private fields with public


getters/setters
Inheritance:

OOP Custom exceptions extending


Exception
Concepts Polymorphism:

Overriding start(Stage stage) in


JavaFX
Abstraction:

generateHallId() hides implementation


logic
Thank You

Questions?

You might also like