Academic application project

Adventure Booking System

  • Academic project
  • Completed project
  • Object-oriented design · Domain modelling · Booking workflows
UML class diagram for an adventure-booking system, showing account roles, adventures, sessions, bookings, payments, transactions, attendees, and feedback.
Object-oriented class diagram.Open full-size image ↗

Project overview

A console application connecting customer roles, hosts, adventures, sessions, bookings, payments, attendees, and feedback through one object-oriented domain model.

Context
Academic project
Status
Completed project
Focus
Object-oriented design · Domain modelling · Booking workflows
  • C#Application logic
  • Visual Studio CodeDevelopment environment
  • draw.io / diagrams.netUML class diagram
Download Windows app (5.9 MB)

Self-contained Windows x64 build · session data resets on exit

Supporting detail

The supporting material is deliberately compact: it connects the decisions, system boundaries, and lessons without competing with the primary project evidence.

Academic project

The design challenge.

The booking workflow combines several responsibilities that can easily become tangled: account permissions, adventure scheduling, capacity, payments, attendance, loyalty, and feedback.
The project required those responsibilities to remain distinct while still working together as one usable system.

Design direction

How the problem was approached.

  1. 01

    Map the domain as classes, responsibilities, inheritance, and relationships before implementation.

  2. 02

    Separate account roles, bookings, sessions, transactions, attendance, and feedback into focused parts of the model.

  3. 03

    Validate the completed console workflows against forty supplied reference cases.

Project focus

The core areas.

  • Object-oriented design
  • Domain modelling
  • Booking workflows

Reflection

What this work adds.

This project is useful evidence because the design artefact and runnable application can be inspected together.
The class diagram communicates the intended structure, while the tested build shows how that structure supports complete booking workflows.