wiki:About

About: Room Reservation System

Team members:

  • Nikola Sarafimov 223091

Short description:

The Room Reservation System is a database-oriented project whose main goal is to design and implement a structured relational database for managing reservations of shared rooms and related equipment in an organization or institution. The database will store information about buildings, rooms, equipment, users, reservations, time intervals, user roles, requested equipment, and approval decisions.

The system will support core operations such as searching for available rooms, creating reservation requests, requesting additional equipment, reviewing pending reservations, and approving or rejecting reservation requests. A reservation may include a room, requested equipment, or both, which allows the model to support room-only reservations, equipment-only reservations, and combined room-and-equipment reservations.

If the project were to be further developed, it could represent a complete reservation management system used by educational institutions, companies, or organizations that need to efficiently manage shared spaces such as classrooms, meeting rooms, offices, and laboratories, as well as equipment used in those spaces. The emphasis of the project is on correct database design, proper ER-to-relational transformation, integrity constraints, consistency of data, and SQL-based data manipulation, rather than on complex user interface development.

The system is designed to clearly separate responsibilities between different user roles. Regular users can search for available rooms and create reservation requests. Approvers can review pending reservations and record approval decisions. Administrators can maintain room and equipment information and oversee the reservation process. The database can also maintain a clear history of reservation activity and support easier future analysis of room and equipment usage.

Detailed description of the project:

The Room Reservation System is intended to be owned and operated by an organization or institution, such as a university, company, or administrative body, that provides reservation services to its employees, staff, students, or members. The organization is responsible for maintaining the database and offering the reservation functionality as an internal service.

The main problem addressed by this project is the inefficient and error-prone management of room and equipment reservations when handled manually or through unstructured tools. Such approaches often lead to scheduling conflicts, double bookings, unclear room availability, missing equipment information, and lack of transparency regarding reservation history. By introducing a centralized relational database, these issues are minimized through structured data management, integrity constraints, and controlled reservation approval.

The database stores information about buildings, rooms, and equipment. Rooms are described by identifiers, room codes, capacities, and types. Equipment is described by equipment identifiers, names, and available stock quantities. Equipment can also be assigned to specific rooms in specific quantities, allowing the system to represent both room-specific equipment and general equipment stock.

The system supports different types of users. Regular users can search for available rooms and create reservation requests for specific dates and time intervals. A reservation request may optionally include a room and may also request one or more equipment items. Approvers are responsible for reviewing pending reservations and recording whether a reservation is approved or rejected. Administrators have extended responsibilities related to maintaining room and equipment data and overseeing the reservation process.

The project also models approval decisions as part of the reservation workflow. A reservation can initially be pending and may later receive an approval decision. Each approval decision records the decision, decision time, optional note, and the user who made the decision. This allows the system to keep a clear and structured record of how reservation requests are processed.

Although similar reservation systems already exist, this project focuses specifically on demonstrating a clean and well-structured database design that follows academic principles of ER modeling, ER-to-relational transformation, normalization, integrity constraints, and transactional consistency. The solution is tailored for educational purposes and emphasizes correctness and clarity over feature complexity.

The system is designed as a database-oriented application and can serve as the backend for a web-based, desktop, or console application. The primary focus, however, remains on the database layer and its proper design and implementation.

Last modified 2 weeks ago Last modified on 06/25/26 09:53:58
Note: See TracWiki for help on using the wiki.