Hotel Reservation System (HRS) Software Engineering Project
A deep dive into the design, development, and project management of a full-stack Hotel Reservation System using Node.js, Express, and MS SQL Server.
CMSE 322 | Eastern Mediterranean University
Hotel Reservation
System
HRS
Final Project Presentation
Group 7 · Spring 2025–2026
Selver Kıskaç
Eylül Dinçer
Fatma Kale
Ömrüm Ceren Güler
Supervisor: Prof. Dr. Duygu Çelik Ertuğrul
Eastern Mediterranean University · CMSE 322 · Software Engineering
THE PROBLEM
Why does this system exist?
Independent hotels are left behind.
🏨
🔴
Double Bookings
No real-time sync across channels
📵
No Availability Info
Guests can't check rooms online
💳
Insecure Payments
Manual or unencrypted transactions
👤
No Role Separation
Staff and admins share one login
😤
Poor Guest UX
Phone calls and paperwork only
💰
Commercial Platforms
Booking.com / Expedia: too costly for independents
Eastern Mediterranean University · CMSE 322 · Software Engineering
OUR SOLUTION
Hotel Reservation System
A centralized web-based platform for complete hotel management
✓ Complete a reservation in under 5 minutes
🧳
Guest
Search & Book Rooms
Secure Payment
Manage Reservations
🛎
Receptionist
Check-in / Check-out
Room Status Updates
🏨
Hotel Manager
Inventory
Pricing
Reports & Analytics
⚙️
Administrator
User Management
System Config
Oversight
Node.js
Express.js
MS SQL Server
Stripe API
JWT Auth
Eastern Mediterranean University · CMSE 322 · Software Engineering
ARCHITECTURE
3-Layer System Design
Modular & maintainable codebase
Scalable for growing hotel needs
Security isolated in dedicated layer
Node.js / Express.js (backend)
MS SQL Server (database)
Stripe API (payments)
JWT Auth (security)
🖥
Presentation Layer
Web UI · Mobile Views · REST Endpoints
⚙️
Business Logic Layer
Reservations · Pricing · Notifications
🔒
Security Layer
JWT Auth · RBAC · SSL/TLS · Input Validation
🗄
Data Storage Layer
MS SQL Server · ORM · Backup & Recovery
Eastern Mediterranean University · CMSE 322 · Software Engineering
KEY FEATURES
Role-Based Feature Set
Guest
🔍 Search & filter rooms
📅 Book & manage reservations
💳 Secure Stripe payment
📋 Booking history & receipts
Receptionist
✅ Check-in / Check-out
🛏 Real-time room status
👥 Guest profile lookup
🔑 Key assignment
Hotel Manager
🛏 Room inventory & pricing
📊 Revenue reports & analytics
🔔 Booking notifications
🏷 Seasonal pricing rules
Administrator
👤 User account management
🔒 System configuration
🌐 Multi-hotel support
📋 Audit logs & access control
EASTERN MEDITERRANEAN UNIVERSITY · CMSE 322 · SOFTWARE ENGINEERING
PROJECT MANAGEMENT
60 Days · 7 Sprints · 4 Members
📅
60
Days Duration
🔄
7
Agile Sprints
👥
4
Team Members
📋
205
MS Project Tasks
Sprint Timeline
COCOMO Estimate: 51.94 Person-Months
Validated Team: 4–5 members
Feasibility
Design
Dev I
Dev II
Dev III
QA & Testing
Deployment
EASTERN MEDITERRANEAN UNIVERSITY · CMSE 322 · SOFTWARE ENGINEERING
PERT ANALYSIS
Critical Path & Timeline
92.7%
On-Time Completion Probability
Sprint 1
Feasibility & Planning
Sprint 2
System Design & Architecture
Sprint 4
Core Development
Sprint 5
Integration & Features
Sprint 7
Deployment & Launch
Sprint 3
Float: 2 days
Sprint 6
Float: 2 days
Earliest Completion: Day 58
Latest Completion: Day 62
Critical Float: 0 days
EASTERN MEDITERRANEAN UNIVERSITY · CMSE 322 · SOFTWARE ENGINEERING
Risk Management
🕐 Time Underestimation
HIGH
HIGH
Mitigation: Agile buffer weeks + COCOMO effort calibration
💳 Payment Gateway Failure
HIGH
MEDIUM
Mitigation: Stripe sandbox environment + mock payment fallback
👤 Key Member Unavailability
MEDIUM
LOW
Mitigation: Cross-training all members + Git documentation
Probability
High
Medium
Low
Impact
Low
Medium
High
Time Underestimation
Payment Gateway Failure
Key Member Unavailability
Eastern Mediterranean University · CMSE 322 · Software Engineering
DATA & SECURITY
Database & Security Design
MS SQL Server Schema
Security Stack
🔑
JWT Authentication
Stateless token-based auth, 24h expiry
🛡️
RBAC
4-tier role permissions, least privilege
🔐
256-bit SSL/TLS
All data encrypted in transit
💳
PCI-DSS Stripe
No raw card data stored locally
📋
GDPR / KVKK
Consent, data retention policies
Eastern Mediterranean University · CMSE 322 · Software Engineering
QUALITY ASSURANCE
Testing Strategy
🧪
Unit Testing
80% code coverage target
Jest framework, dummy callers
🔗
Integration Testing
API endpoint validation
Module interaction checks
⚙️
System Testing
End-to-end booking flow
Load & stress testing
👤
UAT
User Acceptance Testing
Manual exploratory testing
✅
Concurrent booking: no data inconsistency
Load test: handles 100+ simultaneous users
<1% system error rate under normal load
EASTERN MEDITERRANEAN UNIVERSITY · CMSE 322 · SOFTWARE ENGINEERING
ACHIEVEMENTS
Full SDLC — End to End
Software Requirements Spec (SRS)
Software Design Spec (SDS)
Project Plan & Management (PPM)
Final Technical Report
Working System (Deployed)
Usability
🕐
< 5 min
Complete a full booking
Reliability
📉
< 0.1%
System error rate
Performance
⚡
< 1 sec
Database query response
Security
🛡
OWASP
Compliant security
Eastern Mediterranean University · CMSE 322 · Software Engineering
REFLECTIONS
Lessons Learned
Three things we'll carry beyond this course
Most of software engineering happens before the code.
Planning, requirements, and design are not overhead — they ARE the work.
Estimating time is hard — PERT and COCOMO make it honest.
Without structured estimation, we would have underestimated by 40%.
Communication is a technical skill, not a soft skill.
Git commits, documentation, and team sync saved us more than any tool.
Eastern Mediterranean University · CMSE 322 · Software Engineering
NEXT UP
LIVE
DEMO
What you'll see in 5 minutes:
Guest Booking Flow
Stripe Payment
Admin Dashboard
Receptionist Check-in
Duration: 5 minutes
EASTERN MEDITERRANEAN UNIVERSITY · CMSE 322 · SOFTWARE ENGINEERING
GROUP 7 · CMSE 322
Thank You
Questions are welcome.
Group 7 — Hotel Reservation System (HRS)
Eastern Mediterranean University | CMSE 322 | Spring 2025–2026
Supervisor: Prof. Dr. Duygu Çelik Ertuğrul
Selver Kıskaç · Eylül Dinçer · Fatma Kale · Ömrüm Ceren Güler
HRS
Eastern Mediterranean University · CMSE 322 · Software Engineering
- software-engineering
- hotel-reservation-system
- web-development
- sdlc
- node-js
- agile-project-management
- software-architecture