Report DBMS
Report DBMS
1. Introduction........................................................................................................................3
1. Objectives...........................................................................................................................3
Activity 1: Designing the Database............................................................................................3
Database.....................................................................................................................................3
I. Relational Database: A relational database is a system used to store and organize data
in a structured way, allowing easy access, management, and modification. In this system,
data is stored in tables, each consisting of rows and columns. Each row in the table
represents an individual record, while each column represents an attribute of that record.
This tabular structure helps ensure that data is organized logically and is easy to manage.
MYSQL, PostgreSQL, Microsoft SQL Server are examples of Relational Database...........3
III. Distributed Database:.................................................................................................3
IV. Cloud Database:.........................................................................................................3
2. Database Management System:.........................................................................................4
3. User And Functional Requirements...................................................................................4
I. User Requirements.........................................................................................................4
II. Functional Requirements...............................................................................................5
Guest Check-In and Reservation:...........................................................................................5
Room Management................................................................................................................5
Service Requests:...................................................................................................................5
Reports for Management:.......................................................................................................5
Check-Out and Billing:..........................................................................................................5
2. Database Design.................................................................................................................6
1. Guests Table:..................................................................................................................6
2. Rooms Table:..................................................................................................................6
3. Reservation Table:..........................................................................................................6
4. Billing Table:..................................................................................................................6
5. Data Flow and User Interaction.............................................................................................6
1. Guest Arrival and Check-In:..............................................................................................6
2. Services Requests:..............................................................................................................7
3. Billing and Check-Out:.....................................................................................................7
6. Implementation Plan..............................................................................................................7
1. Phase 1: Database Setup and Development (1 Month)......................................................7
2. Phase 2: User Interface Design and Development (2 Months)..........................................7
Page 1 of 20
3. Phase 3: Testing and Quality Assurance (1 Month)...........................................................7
4. Phase 4: Deployment and Training (1 Month)...................................................................7
5. Supports and Updates.........................................................................................................7
7. Expected Outcomes................................................................................................................8
8. Conclusion..............................................................................................................................8
Page 2 of 20
a) Introduction
In Kathmandu, another famous and best Hotel ready to inaugurate for giving best services to
customers Hidden Paradise Hotel. In this Hotel there are many kinds of facilities or services
available like well-furnished room with attached bathroom, luxurious beds. Now, it is looking
for an implementation of well - structured and secure Hotel Room Reservation System
(HRRS) for in quality, comfort and digitalize services to our customers.
As a Database Engineer of this hotel, I designed a Hotel Room Reservation System (HRRS)
which aims to handle guest bookings, reservations, room management, service requests, and
generate necessary reports for hotel management. This proposal helps to design and
functionality of the system using Database Management System (DBMS) to efficiently store
data.
1. Objectives
Database
Database is a structured collection of raw data which access easily storage, retrieval, update
and management of information. In the Database we can store various type of data like table,
image, videos, words and numbers. It is similar to the spreadsheet but in database there are
slightly difference in keys. It allows multiple users to access data for people in data analysis
rather than spreadsheet. Nowadays, it is especially used in different fields like school,
organization, science field, hospitals etc. It is controlled by using Database Management
System (DBMS) which are software that interact with the database, applications and user to
analyze data. There are various types of databases which are used in DBMS. They are:
Page 3 of 20
I. Relational Database: A relational database is a system used to store and organize data in
a structured way, allowing easy access, management, and modification. In this system,
data is stored in tables, each consisting of rows and columns. Each row in the table
represents an individual record, while each column represents an attribute of that
record. This tabular structure helps ensure that data is organized logically and is easy
to manage. MYSQL, PostgreSQL, Microsoft SQL Server are examples of Relational
Database.
II. Non-SQL Database: It is a database that store and retrieve data in traditional
relational database (SQL Databases). In this database for scalability performance and
handling large amount of diverse data it uses favorable and flexible models of
optimizations rather than tables, rows, columns and fixed schemas. Some examples of
non-SQL database are MongoDB, Redis, Cassandra, Neo4j.
III. Distributed Database: The database which access data from different locations,
potentially and store and manage across multiple computers or nodes connected by a
network. Homogenous database and Heterogenous database are main types of
Distributed database. We can use this model of database in Multimedia Applications,
Military control, Hotel etc.
IV. Cloud Database: The database which is hosted and managed in cloud environment
and cloud provider’s servers but not by on the user’s own hardware. For examples
Amazon RDS, Google Cloud etc.
V. Object-Oriented Database: This is a type of database that stores data in the same of
object-oriented programming languages (like Java, Python, C#) by using objects,
methods and attributes. It is use in making object-oriented App, Research, manages
media files with metadata.
Page 4 of 20
In DBMS, we mainly use Relational Database Management System (RDMS) to organized
and manage data in tabular format.
Relational Database Management System (RDMS):
It is a software program that create, update, manage relational data into table with the helps of
rows and columns establishing relation between them by using different keys.
A relational database is a collection of data organized as a set of formally-described tables
from which data can be accessed or reassembled in many different ways without having to
reorganize the database tables (Codd, 1970).
Examples of RDMS are given here: MySQL, PostgreSQL, Oracle Database, Microsoft SQL
Server, IBM DB2.
Advantages of RDMS:
Consistency: The data are stored in RDMS is correct and consistence through
constraints. Multiple instances have same data all the time. So, it uses constraints like
primary keys and foreign keys to prevent errors.
Easy to Use: Using of SQL (Structured Query Language) makes RDMS easier to add,
update or search for data. We don’t need to tech expert or well-trained employee to
use RDBMS.
Security: Data security in RDBMS is far better than other systems. In this system, it
offers access permission who can see or change data. This means sensitive
information are stay protected.
Handles Large Data and Many Users: This database system is made for handling a
lot of data and many users at a same time without any errors and crashing.
Data Redundancy: Due to the constraint or key feature normalization, we can keep
our database clean by avoiding unnecessary duplicate copies of the same information
or data.
Disadvantages of RDBMS:
Complexity: It can take a lot of time for designing and setup for the system which
make it complex, especially for large system.
Performance: RDBMS can be slower than others types NoSQL database because for
huge amount of unstructured data.
Costly: Due cost of license of some RDBMS software, hardware and maintenance of
system can be expensive rather than other types of system.
Overhead Hardware: For this type of database system powerful hardware are
required to run smoothly and also require more resources.
Fixed Schema: When our data model changes in RDMS a less flexible may require a
lot of effort which gives by schema in this system.
Some Components of RDBMS:
Tables (Relations): Data is structured into rows and columns.
Page 5 of 20
Primary Key: A Primary Key is a unique identifier for each row in a table. It makes
sure that no two rows have the same value in that column, and it cannot be left NULL.
Foreign Key: These are the keys which maintain relation between the tables.
Normalization: It is a process of reduce data redundancy and improves efficiency
and consistency.
SQL Support: By using SQL, we can query and managing data.
ACID Properties: It ensures Atomicity, Consistency, Isolation and Durability for
reliable data transactions.
Table Name PK FK
Guests Guest_ID
Room Room_Number
Reservation Reservation_ID Guest_ID_
Additional Services Service_ID Reservation_ID
Functional Dependencies:
Guest: Guest_ID -> Full_Name, Contact_Number, Email, Check_in_Date,
Check_out_Date.
Room: Room_Number -> Room_Type, Price_per_Night, Availability_Status.
Reservation: Reservation_ID -> Guest_ID, Room_Number, Reservation_Date.
Additional Services: Service_ID -> Service_Name, Price, Reservation_ID.
Normalization:
Normalization is an important process in database design that helps improve the database’s
efficiency, consistency, and accuracy. It makes it easier to manage and maintain the data and
ensures that the database is adaptable to changing business needs. The primary objective for
normalizing the relations is to eliminate the below anomalies. Failure to reduce anomalies
results in data redundancy, which may threaten data integrity and cause additional issues as
the database increases (Anon., 2025).
Normalization in tabular model designing means that data has to be arranged in the manner
that will excludes the levels of redundancy to the largest extent and also that reference
integrity of data has to be maximized as well. It is related to table organization in order to
maximize the amount of data redundancy that is to be avoided and so minimize the chances
Page 6 of 20
of data going out of synch as well as space consumption. Normalization can be done in steps
which are for the most part normalization (Eessaar, 2016).
There are various types of Normalization they are described below:
a) First Normal Form (1NF):
In 1NF all columns contain atomic values.
It removes multiple values attributes.
It should manage repetition of groups or arrays.
Page 7 of 20
Entity Relation Diagram:
The Entity Relationship Model is a model for identifying entities (like student, car or
company) to be represented in the database and representation of how those entities are
related. The ER data model specifies enterprise schema that represents the overall logical
structure of a database graphically (Anon., 2025).
Types of Relationships in ER diagrams:
One to One (1:1): One record in an entity A is related to only one record of another
entity B and vice versa. For example: One person has one citizenship or passport.
One to Many (1:M): One entity of A is related to many in another entity B but B is
related to only one in A. For example: A department has many employees.
Many to Many (M:M): Many records of entity A is related to many in another
entities B and vice versa. For example: In school, a student can join many courses and
course has many students.
ER Diagram for Hidden paradise Hotel:
A structure collection of information, data that can allow for efficient storage, retrieval and
management. In, Hotel sector Database Management is necessary and there is the overview
of the tables and the key fields:
Guests Table:
In this table we need to stores guests’ information such as name, contact number, ID,
check-in / check-out dates.
Key Fields: Guest_ID, Full_Name, Contact_Number, Email, Check_in_Date,
Check_out_Date.
Rooms Table:
To stores rooms details including room numbers, type, price and availability status.
Key Fields: Room_Number, Room_Type, Price_per_Night, Availability_Status.
Page 8 of 20
Reservation Table:
In this table we store or link the data of guest and room for booking purposes.
Key Fields: Reservation_ID, Guest_ID, Room_Number, Reservation_Date.
Additional_Services Table:
Stores details of each customer’s or guest’s bill, room charges and services request.
Key Fields: Service_ID, Service_Name, Price, Reservation_ID.
DATA VALIDATION:
Data validation refers to the process of ensuring that data entered into a system adheres to
predefined rules and constraints to maintain data quality, accuracy, and integrity. It helps
prevent incorrect, incomplete, or inconsistent data from being stored in the database
(Silberschatz, et al., 2019).
Page 9 of 20
Necessity of Data Validation:
For correct data: It helps to ensures that entered information is accurate and in right
format. For example, a phone number or email provide are taken only in their own
right format.
Maintaining Data Consistency: When data is entered it helps to prevent from
duplication, data corruption and it maintains data consistency and integrity.
Improves Security: It helps to prevent system from crash and it blocks malicious
inputs. It also reduces vulnerabilities by filtering unexpected data.
Saves Time and Resources: Due to the features of catching error early data
validation reduce the manual correction which saves time, money and efforts.
Management:
View the report of the beds, room occupancy, payment history.
View the access of reservation room for administrative purposes only.
Improve in Guest Experience by offering tailored recommendations.
Guests:
Pre informed of details in their reservations.
Guest can see their booking history and payment proofs whenever they want.
They can ask for some additional services anytime if they require.
Page 10 of 20
When a guest arrives, the front desk staff can check room availability and book rooms
for guest.
The front desk staff keeps guests’ information and their proof of Id.
A guest may book more than one room but each room can only assign to one guest
only.
Room Management
Service Requests:
Guest may request additional services like extra bed, airport pickup and food.
The system tracks these requests and add cost to the guest final bill.
Activity-2
Page 11 of 20
changes occur to that data and removing unnecessary data. It is the foundation of databases
system like MySQL. PostgreSQL, Oracle and SQL Server.
Advantages Of MySQL:
Scalability: MySQL works for small projects and huge companies alike. You can start
small and grow big without it freaking out. It’s built to handle more stuff as you go, so
you don’t have to worry about outgrowing it.
Page 12 of 20
Cross-Platform Compatibility: It runs on pretty much anything—Windows, Linux,
macOS. No need to overthink if your setup is weird. MySQL just fits in.
Ease of Use: The tools are simple. You don’t have to be some tech wizard to use it.
Most people can figure it out without a ton of effort, which is always a plus.
Open Source and Free: No need to pay for it. MySQL is totally free, and there’s a
bunch of people online always updating it and helping out. If you get stuck, help is
easy to find.
High Performance: It’s fast, even with lots of data. So, if you need stuff to load
quick, MySQL won’t slow you down.
Disadvantages Of MySQL:
Some features just aren’t as complete as what you get in PostgreSQL or Oracle. You
might look for something familiar and realize, nope, it’s missing.
If you’ve got loads of data or a bunch of people writing to the database at once, it can
slow down or get tough to handle. Tuning it isn’t always easy.
Stored procedures and triggers? They’re pretty basic. Not much flexibility there, so
don’t expect too much.
Database Maintenance:
It implies that there is a list of activities that are required in database maintenance and which
are mainly aimed at achieving the overall goal of providing the right level of usage and
protection for the database. Some of the processes it involves are daily backup to avoid loss,
tuning to enhance performance again indexing and query tuning and elimination or archiving
of useless, obsolete data. This makes user application access and applying updates to be some
of the most important aspects of security for any data. Meanwhile, storage management is
conducted to track disks’ space, and a lack of storage space is prevented (Kelly, 2022).
Here is the data maintenance schedule of the week for the tasks:
Sunday Backup & Recovery Do weekly full backups to ensure the database is
protected against potential data loss.
Monday Monitoring & Auditing Look through the daily logs and health checks to see if
there were any issues over the weekend.
Tuesday Security Updates To protect the system from weaknesses, apply the
necessary patches and check the entry controls.
Wednesday Performance To make the database faster and more useful, look at
Optimization how well queries work and how to improve sorting.
Page 13 of 20
Thursday Storage Management To avoid issues with running out of disk space, check
how much is being utilized, remove temporary files,
and make the most of what you have.
Basically, there’s a set routine for checking the database each week. On Sundays, folks do
backups—got to make sure last week’s info is safe. Mondays are when everyone looks for
problems that popped up over the weekend (because, let’s face it, something always goes
wonky then). Come Tuesday, it’s all about security—tightening things up and making sure no
one’s sneaking in.Wednesdays are for fixing little annoyances and tweaks, just to keep things
running smooth. Thursday is when you watch out for overcrowding, so the database doesn’t
slow down. Fridays? That’s when you clean up the records, toss out anything messy or weird.
And Saturday is the big checkup, making sure everything’s healthy and up to standard before
the new week starts. Splitting up these jobs during the week just keeps things from getting
out of hand, and makes sure the database stays sharp and reliable.
Database Security:
Data Security may be described as the act of protecting data, that is, information processed in
computers, from loss, misuse and/or corruption. It comprises actions like encryptions,
controlling access, issuance of more regular security updates and constant monitoring of
volatile information. One of the most crucial things that shape protection practice is to make
sure that data is secure from compromising, unauthorized access, modification and loss, and
to meet legal compliance (Omotunde & Ahmed, 2023).
There is some Database security method described below:
Virtual Private Network (VPN):
A Virtual Private Network (VPN) functions as a method for establishing a secure, encrypted
connection over the internet, enabling users to exchange information without exposing
sensitive data. By utilizing a VPN, individuals can appear to be connecting from an alternate
geographic location, which provides a significant advantage in terms of online privacy. This
is particularly important when accessing unfamiliar or public networks, such as those found
in public places or airports, where the risk of data interception by hackers or surveillance
entities increases. Therefore, employing a VPN is considered essential for maintaining data
security and privacy in these environments.
Page 14 of 20
Firewall:
Essentially, this is a network security framework designed to oversee and regulate data flow
in accordance with established security protocols. It functions by separating an organization’s
internal network—the intranet—from external, unsecured networks such as the internet. In
effect, the system filters incoming and outgoing traffic, allowing only authorized
communications while blocking potentially harmful or unauthorized activities. Firewalls,
which can be implemented as either software applications or physical hardware devices,
serve as the primary mechanism for enforcing these boundaries. Their principal benefits
include safeguarding against cyberattacks, preventing unauthorized access, and protecting the
network from malicious software. Thus, firewalls act as critical gatekeepers in maintaining an
organization’s digital security.
Data Center:
A data center is far more than a simple room housing computers; it functions as a critical hub
engineered specifically for hosting, managing, and safeguarding vast computational
resources. These facilities are meticulously designed to accommodate extensive networks of
servers, essential software, and complex power distribution systems. Within a data center,
specialized personnel oversee operations to ensure uninterrupted data flow, system reliability,
and comprehensive maintenance.
Advantages of Data Center:
Scalability: You can easily make things bigger or smaller, depending on what you
need. It’s flexible, so you won’t feel stuck if you have to change stuff.
Reliability: If something stops working—like power or the internet—there’s a backup
ready to go. So, you won’t be left hanging.
Centralized Management: Everything’s in one place. That means you spend less
money on equipment and software, and it’s way easier to look after.
Enhanced Security: Your data is super safe. There are strong locks on the doors and
tough digital security, so it’s hard for anyone to mess with your stuff.
Really expensive: You have to spend a lot on buildings, fixing things, upgrades, and
buying all the gear.
Uses tons of energy: The electricity bills are huge, and it’s not great for the
environment either.
Risk of Down Time: If the power goes out, work stops and you lose money.
Hard to run: You need skilled people, especially in IT, or things fall apart fast.
Page 15 of 20
Data centers are basically the backbone of the internet. They store all your stuff—photos,
files, whatever—and keep it safe. If something goes wrong, like a power cut, they’ve got
backup systems, so you probably won’t even notice. Businesses depend on them to keep
things running smooth and steady. If a company suddenly gets way more users, data centers
can handle it—they just scale up. And if there’s a disaster or some hacker tries to mess things
up, your info is still safe because these places have plans for that too. All the cool tech you
hear about, like cloud computing or AI? None of it works without data centers doing their
thing behind the scenes. Basically, if you want your digital life to work, you need data
centers.
A test plan is like your main guide for testing software. It says what you want to check, what
you’re not checking, how you’ll do it, who’s in charge, when things happen, and what you’ll
deliver at the end. Basically, it makes sure everyone knows what’s up so nobody gets
confused. If you skip it, you’re just guessing your way through testing. And trust me, that’s a
fast track to a bunch of problems. So yeah, always make a test plan if you want things to go
smooth.
Takes A Lot of Time: Making a really detailed test plan? Yeah, that eats up your
whole day, especially with big projects.
Not Flexible: Once you lock things in, it’s tough to make changes if something new
pops up.
Page 16 of 20
Too Much for Small Jobs: For little projects, making a giant plan is just too much
work for what you get out of it.
Needs Good Info: If your starting info isn’t right, your whole plan can fall apart. So,
got to watch out for that.
Hard To Keep Updated: Stuff always changes, but keeping the plan up-to-date is a
pain. People usually forget or skip it, and then the plan gets old fast.
Master Test Plan: It covers everything about testing in a project—like a map that helps
everyone know what’s going on. If your project’s huge or has lots of teams, you really need
this.
Level-Specific Test Plan: Unit Test Plans check tiny pieces, Integration Test Plans see if
those pieces work together, System Test Plans check the whole thing, and Acceptance Test
Plans make sure the end users are actually happy.
Functional Test Plan: This is about checking if the software does what it’s supposed to. You
look at features and see if they work right, just like a user would.
Non-Functional Test Plan: Now you’re checking stuff like speed, security, and if the app
can handle lots of people using it at once. It’s not about what the app does, but how well it
does it.
Agile Test Plan: This one’s flexible. It changes as your project changes. It’s not a big, fancy
plan—just something that helps you stay on track when things keep moving.
Page 17 of 20
Data Flow and User Interaction:
In this data design, this system how will be used in various stakeholders. These are some
following steps:
The front desk staff logs into the system and check the room availability and take
information of guest and assign the room as based on requested by the guest.
2. Services Requests:
During their stay at hotel, they may request for the additional services.
Then, front desk staff record services in system and add bills in the guest payable
amount.
3. Check-Out:
When the guest check-out from the room, front desk staff need to generate final bill
including additional requested services.
Update payment status.
6. Implementation Plan
The Implementation of the Hotel Room Reservation System will be carried out in the
following phases:
Design a front-end setup for front desk staff which integrate the UI with the database
that can efficiently manage bookings, check-in and check-out dates.
Page 18 of 20
3. Phase 3: Testing and Quality Assurance (1 Month)
Expected Outcomes:
After using this system ‘Hotel Room Reservation System’, Hidden Paradise Hotel can expect
the following outcomes:
Increase in Operational Efficiency: Hotel staff can easily use the guest information
and reservation status with speed and accuracy.
Improved Guest Experience: Guest will enjoy with your speed and accuracy check-
ins to billing the amount.
Decision Making: The management team gives access regular occupancy and sales
report which make them to informed decision.
8. Conclusion
The system ‘Hotel Room Reservation System’ will modernize and revolutionize the Hidden
Paradise Hotel in its management operations. By its key task like room booking, services,
billing and hotel will run smoothly and speedily. Finally, this implementation of system may
help to improve the performances of management, staff and also guest satisfaction.
Page 19 of 20
Page 20 of 20