StaySync — Hotel Reservation Management System

A Java desktop application that streamlines hotel operations through self-service kiosk check-in, reservation management, billing, loyalty management, and role-based administration.


Overview

StaySync is a desktop hotel reservation management system built to simulate real-world hotel operations.

The application supports both customer self-service kiosks and front desk operations, allowing users to check in, check out, generate invoices, manage reservations, and administer hotel services through role-based access control.

The project demonstrates object-oriented software engineering, desktop application development, and enterprise-style business workflows.


The Problem

Hotels often manage reservations through multiple staff members while simultaneously allowing guests to perform self-service check-in.

This creates challenges such as:

  • Reservation management
  • Secure role permissions
  • Billing accuracy
  • Loyalty program updates
  • Operational auditing
  • Amenity management

The goal was to build a centralized desktop application capable of supporting these workflows while enforcing different permission levels.


Solution

StaySync provides two operational modes:

  • Customer Self-Service Kiosk
  • Staff Management Portal

The system allows hotel employees to manage reservations while enabling guests to perform basic check-in operations independently.


Key Features

Self-Service Kiosk

Guests can:

  • Check in
  • Check out
  • View reservation details

Reservation Management

Staff can:

  • Create reservations
  • Update bookings
  • Cancel reservations
  • Search reservations

Role-Based Access Control

Two permission levels:

Administrator

  • Check in/out guests
  • Generate invoices
  • Process payments
  • View reservation information

Manager

Additional privileges include:

  • Modify reservation dates
  • Adjust loyalty points
  • Manage amenities
  • Override reservations
  • Access administrative functions

Billing System

The application generates hotel bills and stores transaction records.


Loyalty Program

Managers can update customer loyalty points even after completed reservations.


Audit Logging

Every important system action records:

  • User role
  • Timestamp
  • Generated bills
  • Reservation modifications

System Architecture

             User
              │
      ┌───────┴────────┐
      ▼                ▼
 Customer         Hotel Staff
  Kiosk
                       │
          ┌────────────┴────────────┐
          ▼                         ▼
      Administrator             Manager
          │                         │
          ▼                         ▼
      Reservation Controller
                 │
     ┌───────────┼────────────┐
     ▼           ▼            ▼
 Reservations  Billing   Loyalty System
     │
     ▼
 Database

Tech Stack

  • Java
  • JavaFX
  • MVC
  • OOP
  • JDBC
  • SQL Database

My Contributions

I collaborated on the development of the desktop application with a focus on object-oriented architecture, business logic implementation, reservation workflows, role-based permissions, billing functionality, testing, and debugging. I also contributed to designing reusable Java classes and implementing hotel management features across the application.


Technical Challenges

Role-Based Permissions

Different users required different capabilities.

The challenge was designing reusable permission logic without duplicating code.


Reservation Workflow

Managing reservation state transitions while maintaining data consistency required careful controller design.


Billing

Generating invoices while keeping reservation data synchronized required separating business logic from presentation logic.


Audit Logs

Recording operational events without impacting usability introduced additional architectural considerations.


Lessons Learned

Working on StaySync strengthened my understanding of:

  • Desktop software architecture
  • MVC
  • Object-oriented design
  • Role-based authorization
  • Enterprise workflows
  • Database interaction
  • Team collaboration

Future Improvements

  • Online reservations
  • Mobile companion application
  • Payment gateway integration
  • QR Code check-in
  • Email notifications
  • Analytics dashboard
  • Cloud deployment
  • REST API backend

Technologies

  • Java
  • JavaFX
  • MVC
  • OOP
  • SQL
  • JDBC

What This Project Demonstrates

This project demonstrates experience with:

  • Java desktop development
  • MVC architecture
  • Enterprise application design
  • Role-based access control
  • Database integration
  • Business workflow implementation
  • Billing systems
  • Audit logging
  • Team software development

Status

Completed as a team-based software engineering project demonstrating enterprise desktop application development using Java.

Built With

  • access
  • application
  • audit
  • authentication
  • billing
  • control
  • crud
  • desktop
  • engineering
  • hotel
  • java
  • jdbc
  • logging
  • management
  • mvc
  • object-oriented
  • programming
  • reservation
  • role-based
  • software
  • sql
  • system
  • ui/ux
Share this project:

Updates