Hotel Reservation & Management System

Palm Beach Hotel, Mt. Lavinia

Project Date 01st May 2022
Platform Web Application
Type Responsive
Client Don Y.J Holdings (Pvt) Ltd
Languages & Tools

Abstract

Online reservation applications have become the primary requirement for any customer booking-based businesses when the customer base keeps expanding. A reservation system would be the first situation where a customer would interact with the business, so providing a pleasant initial-experience should be crucial.

Data management systems are getting popular among different business types, as companies keep automating computer systems. When companies handle multiple businesses together, a centralized management would be the best choice to handle data.

Don Y.J Holdings (Pvt) Ltd is a reputed holding company, owning three hotels and two bungalows, which has no dedicated reservation systems. Third-party accounting software’s are used to store company data, customer details and business reporting. The company doesn’t have the freedom to provide additional personalized services based on the different customer types, as their reservations depend on online agencies. The company notices that as business rate increase, they are having difficulties in managing related data. Moreover, the company’s accounting sector cannot efficiently create business reports as there is no central system to retrieve business data.

This project proposes an online customer reservation system and a centralized management system, linked together so that the company would only need to maintain one single application to manage majority of their automated tasks. The system will be based on web application technology, with company higher authorities, employees and its customers as users. The reservation system would be a dedicated web application system based on the properties owned by the company, which can be managed simultaneously. Customers can browse through the company’s daily reservation or customer offers.

1 Introduction and Background

1.1 Introduction

As technology continues its rapid development among all industries around the world, hospitality is starting to notice the benefits. Hotel management software has evolved a long way in assisting hoteliers advance the way their business operates, and there is little doubt as to its transformative influence (Lacalle, 2021). This project is focused on solving a problem which most businesses ignore during its initialization, which is data collection.

This project would also be aiming on the development of an online hotel reservation system linked with a centralized management system. This system will be acheived using web application technology. The project flow commences with research on the use of management systems, data collection, designing, development and quality assurance.

1.2 Background and Motivation

Don Y.J Holdings (Pvt) Ltd is a reputed holding company which consists of three tourist hotels and two bungalows. Currently, each hotel/bungalow has a separate system to store/access employee/client information. The company has decided to interlink the data from each hotel into a complete centralized management system where complex procedures can be carried out efficiently. The company is also currently handling business accounts using spreadsheets and third-party software packages. The company is also interested in a dedicated reservation system for users to reserve hotels and bungalows, which are currently done in the traditional method and through online travel agencies, where creative functionalities are limited.

Online reservation systems are a convenient alternative, considering how straightforward the process is. Third-party hotel agencies are also an effective method, but the freedom to add custom functionalities are limited, as hotels might have to change the procedures of reservations based on various elements like customer discounts, weather or special location-based seasons. Considering all hotel business aspects, automated reservation and management systems also have positive impacts to conduct more effective business. Once a management system in initialized, it would act as the major storage method, which is an efficient method to access and store data.

1.3 Problem in Brief

Automated management systems are generally the basic and essential application to save and retrieve all user information including the company authorities, employees as well as the clients. This system will hold all the important data such as the user personal information and login credentials. For any company requiring a computerized system, a user management system would be the basic requirement. This would also act as the foundation in case the company decides to develop further complex automated functionalities.

The Don Y.J holdings company currently has separate data storage methodologies for storing user information, including personal and business information. The company is facing difficulties in accessing user information, since data is stored in various locations instead of a centralized storage. Reservations are obtained through third-party online agency websites. The company is unable to provide direct benefits to the customers as they have limited functionalities with online agencies.

The company doesn’t have any automated management system or any dedicated online user reservation system. It would be reasonable to build a centralized web application system to meet the multiple requirements for an effective hotel system. The system would consist of an online reservation web application system for customers to book hotel rooms efficiently, as well as a management system with interlinked company database system to manage the company’s employee and customer information.

The company’s current requirements are to develop a dedicated online reservation system for customers to directly deal with the company business, as well as a centralized user management system to store collected company information for efficient accessibility. This would be the basic requirement to develop the business as it helps the company to gain customers by increasing awareness among internet users.

1.4 Problem Definition

Currently, Don Y.J company currently has separate data storage methodologies for storing user information, including personal and business information. The problem faced by the company currently is that there are difficulties in accessing user information, as different types of data are stored in various locations instead of any centralized location. The company also doesn’t have a dedicated online reservation system, but instead most reservations are obtained through third-party online agency websites. The company has a problem providing direct benefits to the customers as they have limited functionalities with online agencies.

The hotel automated management systems are the basic and day-to-day maintained application to save and retrieve all user information including the company authorities, employees as well as the clients. An automated application would hold all the essential data such as the user personal information and login credentials. For any company requiring a computerized system, a user management system would be the basic requirement. Technically, the application would be the foundation, considering the company depends on the automated systems to take major decisions. Automating the processes of a holding company would directly affect various factors.

2 Analysis

2.1 Functional Requirements

  1. Application user roles and permissions.
  2. Administrator account.
  3. Guest user registration.
  4. Guest user login
  5. Room reservation.
  6. Generate reservation confirmation receipt.
  7. Room type.
  1. Room.
  2. Generate reservation income report.
  3. Hotel department.
  4. Hotel employee.
  5. Employee payroll.
  6. Generate employee salary invoice.
  7. Employee leave.

2.2 Non-Functional Requirements

  1. Hardware requirements.
  2. Software requirements.
  3. Web application requirements.
  1. Application security and privacy.
  2. Application data safety.

2.3 Analysis Outcome

The system analysis phase of the current project was greatly advantage to understand further concept of the project idea. The system analysis procedures were implemented in a step-by-step procedure, in order to evaluate every aspect of the project idea in solving the company’s problem. The analysis process typically comprises perceiving and assembling the required project fundamentals, to assist the process of moving towards the final project phases. Moreover, system analysis was considered as an essential decision-making aspect of the project. It is certain that this system analysis would be advantageous for the final phases of the product in order to increase the project efficiency and effectiveness.

The analysis process was also advantageous as it was split into multiple stages, mainly two types of data collection and data evaluation. Initially, the data related to the project was collected from various sources, mainly from the information provided by the company regarding the problem being faced and the required solution. This information was then analysed and categorized into system requirements, which would be the ultimate objectives of the current project deliverables. Eventually, extended researches were also conducted on the project area to get better understanding of the specific software field. This majorly includes analysing and evaluating similar project applications that have been already created and reported.

In summary, the following points have been studied from the analysis;

  • The system analysis methodologies are properly being identified and utilized.
  • Project area knowledge has been gained, in assistance in formerly developed systems.
  • The current project flow is moving in consideration with the initial objectives.
  • The project objectives have been properly identified in order to solve context problems.
  • The project deliverables are properly structured to provide appropriate client solutions.
  • The system development methodologies are properly identified for an effective system.

3 Design

3.1 Entity-Relationship Diagram (ERD)

Image

3.2 Activity Diagrams

Image

Image

3.3 System Overview

Primarily, the major aspect of any software application would be the types of users who access the system functionalities, based on their level of the permissions.

The current project’s major users can be divided into four types;

  1. General Manager
  2. Accountant
  3. Receptionist
  4. Guest

Considering security, the entire reservation and centralized management system would be secured using a user login page, where all system users would be expected to have a username or email along with a unique password allocated to them as a fundamental security mechanism. Users would be unable to access any system functionality without first creating an account. This approach ensures that only those who are authorized have access to the system's contents. Moreover, the system user roles based on the functional accessed allowed for every user depends on the user type of the hotel in order to avoid risky vulnerabilities to the system security.

Furthermore, the web application users would be able to restrict the functions of the online reservation and centralized management system depending on the specific user role and permission. This approach has been implemented for application development in consideration of application data privacy and data security.

In order to avoid risky application vulnerabilities, only the system administrators should have complete access to the entire system functionalities.

3.4 Context Diagram

Image

4 Product Implementation

4.1 Application Structure

The proposed web application system will be divided in two sections during development, as reservation system and a centralized management system, which will be eventually linked with appropriate user permissions to access functions. The reservation system would be a web application system where hotel customers can be updated with company information and also book hotel reservations.

The management system will be a web application which can only be accessed by the company staff to store and retrieve data regarding the company and its users.

4.2 Development Methodologies

Considering Don Y.J company’s requirements, “Agile” system development methodology would be an ideal choice. The agile methodology refers a practice that the application should go through continuous revisions within its development and testing stages. This promotes a situation where the system is constantly checked for errors and inconsistencies over every major phase in the development stage. Agile provides reliable assistance among developers and clients to develop and deliver systems in a proper timeline, while having efficient responses for any functional changes or requests. (Hamilton, 2021).

“Scrum” model, which promotes an organized development procedure will be the current project’s development model. Scrum promotes to divide the project into multiple sections called sprints, and then upgrade these sprint outcomes until the requirements are met (Lutkevich, 2021). Thus, the application can be regularly tested and reworked for better effectiveness as it would be possible to constantly revise the application. This also ensures that the application would include proper user experience and proper user functionalities for efficient usage.

4.3 Project Milestones and Deliverables

The entire project is divided into eight major phases;

  1. Comprehensive project research.
  2. Gathering system requirements.
  3. System architectural design.
  4. System elements design.
  5. Development.
  6. Quality assurance.
  7. Execution and evaluation.
  8. Final documentation.

Project Deliverables;

  1. Online hotel reservation and centralized management web application system.
  2. Final documentation.
  3. System user guide.

4.4 Project Workplan

Image

4.5 Project Delivery Structure

Considering software projects targeted towards clients generally, it is a professional practice that the entire project deliverables should be arranged and categorized in a proper manner, so that the new users could still learn the software functionalities.

This project even includes a user guide as a final deliverable, so that any new user in the client company would be able to understand the functionalities of the system and how they are operated.

4.6 Coding Principles

Coding principles are a important concept as programmers, because they determine the final execution of any software system. Developers use certain principles and standards while software development in order to maintain a specific standard in the software codes. Especially in projects where multiple developers work together, coding principles would be an essential concept, as they assist developers understand the programming of the other members of the team.

The coding principles to be implemented in the current project;

  1. Clean Code
  2. Code Commenting
  3. Code Indentation
  4. Structured Source Code
  5. Naming Convention

4.7 Software Architectural Design Pattern

Software architectural design patterns are considered as standards or principles implemented by developer to ensure a straightforward and efficient application development procedure. Architectural design patterns are typically a widespread notion within object-oriented based software programmers. Design patterns are mostly implemented to avoid common and recurring issues and bugs during development. A typical design pattern would seem like an unfinished code, but could be used as a universal template to avoid development issues throughout the entire software application project process.

In consideration of the current project requirements, the MVC (Model, View, Controller) architectural pattern would be the most suitable architectural design pattern selection, suitable for Don Y.J Holding’s online reservation system and a centralized management system. The MVC design pattern would promote code modularity and maintainability for the development procedure. MVC is considered as a popular and widespread architectural design pattern that could be implemented to a wide range of programming languages as well as related software frameworks.

The intended web application would consist multiple types of software components that would be required to connect and execute together. These components would be required to execute a wide range of varying business logics and database connection events. The front-end interface screens for the functionalities of the web application is required to depend on the user permissions and roles. Considering the system database functionalities and application screens, the architecture rationally separates the system source code and functionalities.

Programmers would be able to accomplish the application with less difficulties as there is an efficient modularity. Moreover, even multiple developers would have the ability to develop and update components of the system source code simultaneously, which decreases the development period while having a higher team productivity.

4.8 Development Tools and Technologies

4.9 User Interfaces

4.10 Database Structure

MySQL has been chosen as the preferred database system technology for the current application development. MySQL is an open-source and relational database system, developed by Oracle.

The database structure of current application could be categorized into two sections.

Database structure of the online reservation system;

Image

Database structure of the centralized management system;

Image

5 Critical Review and Conclusion

5.1 Closing Executive Summary

An effective analysis and evaluation for the project progress of developing an online reservation and centralized management system for Don Y.J Holdings has assisted to understand the proper project flow. The project targets to develop an online hotel reservation system for the company, with a centralized employee/client management system to store/access company data remotely. The management system will also include a business accounts management system, which the company authorities and employees can use to report and manage the company’s business and account records digitally, which can be accessed remotely. This analysis has revealed proper project scopes along with the knowledge of similar projects. The evaluations of the relevant analysis have assisted the project to make sure the process ensures that the company’s relevant requirements are being properly considered for the development of the application.

The project procedures should be conducted in a secure and company-authorized manner. It is also essential that the application is included with proper data protection elements, to prevent data loss or theft. The system would also ensure user permissions so that different users can access only the data they are authorized with. Although the scope of the project is currently straightforward, certain approaches could have been directed in consideration of the limited time available for the project. The initial objectives of the project are already taking up a longer time period of the entire project period. A minor scope adjustment of the project would have been to reduce the analysis procedure times in order to allow more time for application development.

5.2 Conclusion

The final aim of this project is to develop an online reservation and centralized management system with the use of web application technology for Don Y.J Holdings, to solve the problems faced by the company based on information gathering and business management. The holdings company contains of three tourist hotels and two bungalows. Currently, each hotel/bungalow has a separate system to store/access employee/client information. The company requires a dedicated reservation system for users to reserve hotels and bungalows. The outcome of the project would solve all problems faced by the company currently, as well as offer newer business opportunities.

The major strength of the current project application is that the approach to solve the company\s problem is straightforward and used efficient techniques for the solving procedure. The application is planned with the thought of directly solving each problem with the company\s current system. This ensures that every development procedure and technology is dedicated to solve the issue entirely. The application also used up-to-date latest software development tools and technologies. This makes the system ready to face any third-party competition that might exist in the relevant business market, once the application is released for customers.

Considering future improvements for the proposed application, the company would be able to expand the available functions in the application in order to automate additional business operations. The current project application is designed in a manner to support further updates in the functionalities of the system. Once the company identifies a new functional opportunity, it can be implemented and properly added to the existing system.

Moreover, there is also a possibility for the company to merge with third-party business sites to expand their current holdings company. The company could also consider widening their platforms to mobile platform devices. This would also allow the business to reach among a wider and newer range of customers that the company can attract and expand their growth.