Database Management Project Proposal
Database Management Project Proposal
Proposal Title: Hotel Database Management Project Proposal
Project Title: Developing a Database for a Hotel Called Gayana Hotel
Project leader: Manideep Reddy Gomari(2836827)
Submitted to:Dr. Cheng for IST 634 (Enterprise Databases) Summer Term 2022 Project
Proposal Date: 7/9/2022
Topic Research and Executive Summary
One of Tangalle's most popular hotels, the Gayana, is situated on the Tangalle shore. It has been around for more than half a century. There are several reasons why Gayana hotel is the most popular choice for tourists visiting Tangalle. At the hotel, local and foreign visitors may book rooms, have meetings, host cocktail parties, and more. The employees have been tasked with several duties, including managing the hotel's inventory, maintaining guest records, managing reservations, and cleaning the rooms and wedding venues. Currently, for each reservation, all the information about the visitor is entered into a file and saved in a cabinet for future reference. Bills and inventory goods are calculated by hand, as are all other things. It takes a lot of time and effort to keep the hotel's data safe since the existing system is file-based. A fire, insects, or even a natural event like a tsunami might quickly harm them. The time spent maintaining files is time that might be better spent elsewhere. It's not surprising that errors occur when computations are done by hand since we can't rely on their precision. Management has a major challenge if it wants to look up a prior reservation or lodging record. It takes a long time and a lot of effort to locate a record in a file. Management would deal with information on guests, reservations, inventory, room service, personnel management, and the many sorts of rooms. Everything you've just read is kept in the database of the system. Retrieving data from the database might be faster due to this change. The functionality will be presented in an easy-to-understand way, and the interfaces will be user-friendly. The benefits of switching to our system include saving time, money, and resources. As a result, hotel operations will run more smoothly.
Statement of work
Project Description:
The goal of the Hotel Management System Project is to provide answers to some of the most pressing issues facing the hospitality industry. For the Gayana hotel management system project, this proposal includes a list of reasons why it should be created and executed. It comprises an overview of the project, a description of the issue, a potential solution, and a description of the intended audience. Using our new hotel management system, one can easily run the hotel. We had stated that all of the hotel's operations are managed manually. The hotel's staff and management are in charge of the operations above. Managers are responsible for hiring new employees, reviewing the hotel's yearly financial reports, and keeping the hotel's inventory up to date. Everything from reservations to guests to room kinds to employees to invoicing and payment information is documented manually in a file. They are kept in a separate location that takes up a lot of room. Even though the files are organized by year, it is impossible to locate a particular document inside them. There's a good chance that files will be corrupted. While making a reservation, guests' information must be kept in two different locations.
Scope:
This document is critical in the SDLC since it sets out the system's requirements. It is designed for usage by developers and will serve as the foundation for testing. Any future changes to the specifications will need a formal change approval procedure.
Challenges:
We analyzed list all of the negative aspects of manual hotel management systems; we would have to say the following:
It is much more time-consuming.
Difficulty in searching and retrieving records.
The employee or manager may not even know that data has been lost.
Manual record-keeping requires a large amount of manual effort.
Because it was handwritten, the information may include inaccuracies such as a mistyped phone number.
Slow process of reservation.
Project Description & Milestones
Phase 1: Feasibility Study: A system for the Gayana Hotel seems to be a stretch at first view. Determining whether or not our proposed solution is both economically viable and technically possible was a difficult task. However, it had been determined that a business information system may be installed and would improve the quality and performance of the present system by identifying certain departments that demand improved solutions.
Phase 2: Requirement Analysis and Specification: Phase one is devoted to establishing what requirements or criteria must be met by the system before it is put into place.
Phase 3: Software Design: The project is now in its transitory phase. The design advances from the schematic phase to the contract document phase in this phase.
Phase 4: Development and Integration: Codes written in C# will be used to implement the functionality developed in previous rounds of this project. When implementing these routines, it is important to keep in mind the link between the Crystal reports.
Phase 5: Testing: During the Testing Phase, the primary emphasis is placed on a technical inquiry, the findings used to characterize the system's overall quality.
Phase 6: Deployment (Installation): Once the team has completed its work, they pass the system to the customer, so it may be used in the long term.
Phase 7: Maintenance: The most time-consuming phase of the project's life cycle is the maintenance phase. After the product has been delivered, it may be changed to fix errors, increase performance, or adapt to a new environment."
Methodology and Implementation Plan
Methodology:
Agile Scrum will be used for this project's development process. Scrum is a multi-sprint software development methodology that emphasizes incremental and iterative approaches. For each sprint, an amount of time is allotted for the team to complete a piece of work from the main project backlog. Team members must contact daily to determine the day's progress. In the context of teamwork and a tight deadline, it has shown to be quite beneficial. It's a method of adaptable software development that focuses on a single aim for the whole development team. Until the next sprint, each team member has a set of tasks and duties. Toward the conclusion of each sprint, there is a review and a post-mortem. A new work item is selected from the backlog for the following sprint, and development starts anew.
Implementation Plan
Business Justification and vendor selection
Participating in a business with a lot of growing space and a fast-expanding market is more lucrative than the investment itself. As the hotel industry expands, the team will look for innovative ways to meet its software demands while also improving the lives of its consumers. Existing solutions have been on the market for years, but with so many hotels expanding, there is much room for improvement.
Project Kick-off and process refinement
The amount of time given for each sprint is determined by the relative relevance of the process's output and workload. Testing and evaluating existing solutions are conducted to see whether there is an opportunity to improve them. These solutions are refined and cleaned up to use on a more recent and improved system. Planning and the software development lifecycle are the first steps in a project's lifetime.
Testing and first build
After each sprint, the program or one of its finished processes is tested. These sprints result in the creation of the software. A beta version of the program was distributed for testing by various development team members after it had sufficient functionality.
Expected Results: The Deliverables
It has been suggested that developing a computerized hotel management system to solve the problems described above would allow for a more effective and efficient administration of hotel services. The project for the Hotel Management System can maintain and manage the many duties and procedures associated with hotels. Within the scope of the main component of the database, it is largely accountable for hotel management. The system provides details about the many hotels open for business and the current availability of each of those hotels. Visitors are welcome to visit the website to complete their registration with the software by supplying the necessary information.
Real-time data would be reduced to a more manageable form. Receptionists, managers, and customers have tables in the database that may be accessed and edited as needed.
Personnel (Student's Information)
Database Made By: Manideep Reddy Gomari(2836827@vikes.csuohio.edu)
Database Developer, Manager and Maintenance Team
Charles Morrow
Hotel Manager
The High Street Hotel, New York, NY
20182022
Work Experience
Prepared predictions and reports for use by the General Manager; also worked with him to establish and execute a budget and monitor its progress.
Created specific, achievable, realistic, measurable, and timely action plans to remedy guest service deficiencies.
Supporting Tools
1. Microsoft Windows, Mac OS, and Linux distribution 7 (32bit).
2. Microsoft .NET Frameworks
3. Microsoft SQL Server Management Studio Express
4. Microsoft Visual Studio IDE
Hotel Database Management Project Progressive Report
Date:7/17/2022
Reporter: Manideep Reddy Gomari(2836827@vikes.csuohio.edu)
Milestone Achieved: Complete of Business analysis, Identification of implementation approach and identification of programming Language and Necessary Tools
Project Analysis:
The operation of hotels especially the popular ones like Gayana hotel are mostly associated with a lot of record keeping both financial and client details. Employment opportunities offered by grand hotel improve the state of an area from local to urban especially if it attracts more tourists both local and foreign. Booking of rooms, holding meetings and hosting parties requires a well-managed and assessed inventory updated each minute of the day, reservation management, guests record keeping and ensuring the tidiness of rooms. Gayana hotel ensures all these are done manually by the employees. The advantage about this model of operation is that more people are employed in order to provide more labor and loss of data is quite minimal. Record keeping in a manual way has more harm than good. A lot of time, energy and effort is put to ensure the hotels data is well placed in their existing file system. Record keeping through files and paperwork is prone to harm from water and other catastrophes meaning the data can be lost and never retrieved again. Errors also occur on a large scale in the filing and data recording of financial records as they are done manually. The new management system model aims at creating a database used to store all record information of the company. The model will aim at easy retrieval and storage of data as well as addressing client related issues. The Hotel Management System Project of Gayana hotel aims at making the operation of the hotel easy and smooth. This is through creation of more space, easing of workforce, customer satisfaction and avoiding corruption or damaging of the records kept in order to sustain them over a long period of time.
Business Investigation
There are various functions that the database is expected to do such as keeping track of data on customer bookings, room numbers checked in and by who, customer detail management and respective room service attendee details. Business analysts took a chance to conduct research in order to assess how the manual system is different from the new model in easy operation of the hotel. The research involved private interviews, debates and questionnaires to the employees and managers to assess the how the new system is going to affect their normal manual operation of record keeping. Private interviews provided a more accurate research thesis as employees were more open on the positive and negative effects of both their social, and economical lives. Many feared the new system meant their work was at stake as they were less valuable to the company as a result of the new system project. On the positive side of things, employees believed their work force was going to be eased by the new system. The system is to be equipped with easy data and record keeping procedures that aim at addressing client related issues. The debate proved that more members were proposing for the implementation of the new models. Gayana hotel being a grand hotel ought to have adopted the system at early stages to Improve easy hiring, firing, reviewing of early financial reports and constant updating of the hotels inventory. Celebrated and renown hotels have successfully adopted the system and over the years, it has proved to be more eligible in smooth operation of the hotels. This has given Gayana hotel more faith and high expectations to the system as they sort to advance their record keeping system.
Mission Statement
The new system is set to improve customer servicing and easy record keeping and retrieval. The aim is to advance from manual hotel management system to a database management system that oversees all documentation and record keeping done in an organized and orderly manner to the expectation of the hotel.
Dialogue
System developer: Hello Mrs. Manager, since you are the boss around here and have a full understanding of what is expected of your hotel in order to be ranked as the best in Tangalle, what is your opinion regarding the manual hotel management system?
Mrs. Manager: Hello and thank you for making our hotel a priority. My view about the manual hotel management system is that it has been of help over the past few years but with technological advancement it means we as a grand hotel have to adapt with change. Assessment of the new system proves that our work efficiency is going to be of high quality and quite promising in the coming years.
System developer: How are you Mr. Nelson, what is your end objective and what do you expect to gain from this new system as an employee of this hotel?
Mr. Nelson: Im very fine. As an employee of this company, I believe the new system upgrade will be an added advantage to us in easy and smooth operation within the hotel. Our daily objective is to ensure customer satisfaction and be termed as the best in Tangalle.
System developer: Mr. Nelson, what challenges do you normally experience when using the manual system?
Mr. Nelson: Since joining the working force of this hotel, the greatest challenge we have faced with the manual system is retrieval of records of previous visits has been a challenging task as you may find some of the files were mixed together due to congestion in the record keeping room. Other times we are faced by different catastrophes like rodents and fading of the papers in the files.
Mission Objectives
The organization aims to use the new database system to achieve the following:
To improve the record keeping of clients sign in information.
To address clients present issues.
To deliver quality servicing to customers.
To improve the retrieval of previous records and payment information.
To provide adequate space as a result of reduction in congestion of files.
To improve the privacy of clients personal information.
To avoid corruption of records and have a backup source of records.
Some challenges expected to be experienced in using the manual system include:
Difficulty in searching and retrieving records.
Manual record-keeping requires a large amount of manual effort.
much more time-consuming
The employee or manager may not even know that data has been lost.
Slow process of reservation
Vision Statement
Improved reservation processing, easy record keeping and retrieval, smooth operation of the hotel from managers to employees and customer satisfaction through fast addressing of their needs are the main goals the hotel aims at achieving in the next 20 years with a five-star rating of the hotel.
Dialogue
Business analyst: Hope your day is good Miss. Mercy, on your analysis of the success of this company, where do you see it in the next 10 years?
Miss. Mercy: Optimism is the first cure to achieving success in any firm. Our hotel looks to improve and upgrade each year to suit Gayana Hotels expectation from our clients. This first face of renovation has been marked with the new system that will help in record keeping and we look forward to more technological advancement for the ones who look up to us to learn from the best.
Business analyst: Hello Hakim, I believe youre a regular customer in this hotel for a while now. How do you feel about the new system about to be installed?
Hakim: I have been a member and a regular client in Gayana hotel for a few years now. Whenever I am in a business trip to Tangalle, I receive the best accommodation here. It was time consuming sometimes to be kept waiting in the reception while they go and retrieve my file of previous visits and I believe the new system will be more encouraging in the coming days.
Subjects and Characteristics
DB Application
A database application for this company has provided advantages in improving its market. Using simple, interactive forms, users can enter information into this project. Property Management System is a system that streamlines the booking management and admin operations of a hotel. A property management system doesnt merely automate processes across the specific divisions in the hotel. It has now turned into a platform that helps hotels achieve more awareness and allows them to connect out to the public in order to increase bookings. This program allows the hotel operators to perform e-payment processing and manage hotel operations for appropriate allocation. This last feature prohibits over-bookings or even duplicate bookings. It is also possible to utilize a PMS system to send verification emails to customers when they place a booking. This feature is part of the front-desk segment and some systems even allow the consumer to reserve the accommodation as well as the events offered by the hotel.
List of Subjects
Customer
Reservations
Rooms
Billings
Services
Loyalty
Dialogue
Software Developer: Hi Agnes, which role do you play in this hotel?
Agnes: I have been a receptionist in Gayana hotel and I majorly deal with receiving guests and ordering room reservations as well as offering guidance to new guests who need assistance around the hotel.
Software Developer: Hello Chris, as a client who enjoys the hotel services, what do you think they ought to be added to the hotel to make it more suitable for consumers like you?
Chris: So far so good, I have enjoyed every single service offered here in the hotel. I believe what the hotel really needed is the technological advancement which I have heard they are making a step to improve it in the coming day.
List of Characteristics
Customer: Customer ID, Customer Name, Customer Address, Customer phone number
Reservations: ReservationID, Reservation type, Check- in-date, Check-out date, Booking date, Customer ID
Rooms: Room number, Room type, Room Price
Service: ServiceID, Service name, Service date, Service cost, Service quantity
Billing: Payment method, Payment date, payment amount
Loyalty: Loyalty number, Satisfaction level
Dialogue
Business Analyst: Hi June, what does it take to ensure the customer receives the correct room reservation?
June: In order for the customer to receive the correct room reservation, the receptionist makes a point of retrieving original files based on whether the client has history of visiting the hotel before and based on his review of the initial room he/she was offered, we are able to provide the same to the client.
Software developer: Hi Mrs. Yvonne, what are some information you expect the customer is aiming at before thinking of making a service request?
Mrs. Yvonne: Offering the best service is our daily aim. The kind of information customers consider is the kind of suites/room we offer as well as a range of other services.
Implementation
Technical Background
Microsoft Access
With Microsoft Access, you may create a relational database for data storage, retrieval, and reporting. Excel and other spreadsheet tools have their own limitations when it comes to managing big volumes of data. Using a spreadsheet software like Microsoft Excel is a great way to keep track of and analyze tiny datasets. Excel is simple to learn and simple to operate. You can quickly and easily sort, filter, and format the data. With time, the data grows and changes, making spreadsheets ineffective for long-term analysis. In order to create an important file for a client, contact, or executive, spreadsheets aren't the best option. Spreadsheet errors are extremely easy to create, which makes summarizing, summing up, and reporting quite difficult.
Application and Implementation
Programming Language
C#
Helping with daily tasks such as adding, revising, updating, or searching hotel reservations are some of the benefits of a Hotel Management System. C# is used for application development. The application is programmed using Microsoft Visual Studio, an integrated development environment.
A vacation in a hotel is the ideal way to spend your time off. A hotel is likely to have a large number of reservations. If you operate in the hotel industry, you're probably concerned about how to handle reservations made at your establishment in a timely and effective manner. Solution: A hotel management system can be simpler and quicker. Hotel reservations and bookings are expected to be high, so this system was designed to keep the reservation process as simple and effective as possible. An extensive set of options is provided by the system. An authenticated login is required to access the system, and sufficient verification is performed. To gain access to the system, the user must submit the appropriate credentials. The user can make new reservations after logging in. Reservations can be edited, updated, or deleted by users of this system.
Tools
Visual Studio
Visual Studio as a development tool it is easy to install various guides available online on the use of the software. As a programmer, you may benefit from tools that have a deeper grasp of code than just a wall of text. IntelliSense code completion, sophisticated semantic code comprehension and routing, and code refactoring are all included right into Visual Studio Code. When the coding gets difficult, the debugging gets difficult as well. Because debugging is one of the most requested features in a more efficient development experience, we made it happen. Debugging in Visual Studio Code is facilitated with an interactive debugger that allows you to step through source code while inspecting variables and looking at call stacks.
Construction and programming tools can also be used to accomplish routine operations, making daily workflows more efficient. VS Code features built-in support for Git, allowing you to interact with source control without ever leaving the editor, including examining pending change diffs. When debugging, Visual Studio excels, yet it can become stuck and force you to either halt or repeat the debugging process. An enormous amount of time is spent loading the application.
7/21/2022
Final Preliminary Field List
Customer: CustomerID, Customer_name, Customer_address, Customer_phone_numberReservations: ReservationID, Reservation_type, Check_in_date, Check_out_date, Booking_dateRooms: Room_number, Room_name, Room_PriceService: ServiceID, Service_name, Service_date, Service_cost,Service_quantity
Billing: Payment_ID, Payment_method, Payment_date, Payment_amountLoyalty: Loyalty_number, Satisfaction level
Value List
Service_nameSatisfaction level
Reservation_typeCalculated List
Payment_amountRoom_PriceBooking_dateService_quantityService_costPreliminary Table List
We used the list of subjects to produce the following table list.
Billings
Customer
Loyalty
Reservations
Rooms
Services
Final Table List
Table Name data description
billings subset This table will store payment information of customer like payment method, payment data, and amount paid.
customer data The customer is the recipient who buys products or services from the hotel
Reservations link This table is used to join two tables customer and Rooms
Rooms Data It entails what Type of room the customer wants to occupy and at what period
Services link They are intangible things that the hotel offers to the customer when they have booked.
Loyalty Data This table will store the loyalty number and the level of satisfaction or rating of a customer
Service_CategoryValidation This table will store service categories and id.
Final Table Structures
Customer Reservations Services
CustomerID {PK}
Customer_NameCustomer_addressCustomer_phone_number {CK}
Reservation_id {FK} Reservation_id {PK}
Reservation_typeCheck_in_dateCheck_out_dateRoom_id {FK} ServiceID {PK}
Service_nameService_dateService_costRoom_id {FK}
Loyalty Rooms Billing Service_CategoryLoyalt_id {PK}
Rating {CK}
Customer_id {FK} Room_id {PK}
Room_typeRoom_Price {CK}
Customer_id {FK} Billing_id {PK}
Payment_methodPayment_date
Amount {CK}
Customer_id {FK} Id {PK}
Category_NameImplementation Progress
As part of the Hotel database management system, I have been able to complete the database design. An important part of the database design process is determining whether or not the database can be conceptually operated. UML and DFD diagrams were used to establish connections among the database's many parts. Using Data Flow Diagrams may help project owners visualize their ideas and pay attention to all the essential elements. I'll always have the most up-to-date information if I have a well-designed database. When working with databases, it's important to get familiar with solid design principles so that you can accomplish your goals. When everything is said and done, you will have a database that is more likely to meet your needs and adapt to future developments. It is possible to model processes on a different level and place them in the context of the project's overall design via the use of this tool. Database designers provide a database model that specifies how data should be structured. Designers are in charge of figuring out how to store and relate data. A database model may now be constructed utilizing this information. The database management system takes good care of the information. An important part of the design process for a database is to categorize the data and identify its relationships. To put it another way, ontology is a theoretical model of the world. The database's ontology serves as the theoretical framework for its development. Defining scope is easier with a data model. A project's scope may be clarified with the aid of corporate sponsors and developers. Workers at the firm may see the work of the developers and make comparisons with what they already know. Models aid in the decision-making process through which developers, users, and other parties may agree on the best approach to an issue.
If the database is nicely structured, it will be straightforward to make updates. There is no effect on the values of other fields in the table if a single field's Value changes. There are very few duplicate fields in a database; thus, you normally only need to modify one field's data value when making updates. The database's design, which is tailored for hotel management, will make it simpler to develop a user-friendly interface.
In spite of this, I've been able to identify the database's themes and features, as well as its database table attributes and primary key. Databases employ primary keys (columns) to identify rows (tuples) in relational databases, which is a relational model (table). The informal phrase "primary key" may be used to describe "which attributes identify a record." When it comes to alternate keys, they're anything that might be used in place of the primary key. This is a word used to describe an attribute created only for the purpose of functioning as a key and not for the purpose of being used for external identification when discussing a primary key that is made up of real-world observable variables. People databases might benefit from having a natural key based on date, time, and location of birth. The national identification number is another example of a characteristic that may be used as a natural key.
An important part of the database design process is determining whether or not the database can be conceptually operated. UML and DFD diagrams were used to establish connections among the database's many parts. Using Data Flow Diagrams may help project owners visualize their ideas and pay attention to all the essential elements. I'll always have the most up-to-date information if I have a well-designed database. When working with databases, it's important to get familiar with solid design principles so that you can accomplish your goals. When everything is said and done, you will have a database more likely to meet your needs and adapt to future developments. It is possible to model processes differently and place them in the context of the project's overall design via this tool. Database designers provide a database model that specifies how data should be structured. Designers are in charge of figuring out how to store and relate data. A database model may now be constructed utilizing this information. The database management system takes good care of the information. An important part of a database's design process is categorising the data and identifying its relationships.
To put it another way, ontology is a theoretical world model. The database's ontology serves as the theoretical framework for its development. Defining scope is easier with a data model. Corporate sponsors and developers may clarify a project's scope. Workers at the firm may see the developers' work and compare it with what they already know. Models aid in the decision-making process through which developers, users, and other parties may agree on the best approach to an issue.
If the database is nicely structured, it will be straightforward to make updates. There is no effect on the values of other fields in the table if a single field's Value changes. There are very few duplicate fields in a database; thus, you normally only need to modify one field's data value when making updates. The database's design, tailored for hotel management, will make it simpler to develop a user-friendly interface. Despite this, I've identified the database's themes and features, database table attributes, and primary key. Databases employ primary keys (columns) to identify rows (tuples) in relational databases, which is a relational model (table). The informal phrase "primary key" may describe "which attributes identify a record." Regarding alternate keys, they're anything that might be used in place of the primary key. This is a word used to describe an attribute created only to function as a key and not to be used for external identification when discussing a primary key made up of real-world observable variables.
07/28/2022
Field Specification
Loyalty Table
FIELD SPECIFICATIONS
General Elements:
Field Name: Loyalty_IDSpecification Type: Unique
Generic
Replica
Parent Table: Loyalty Source Specification:
Alias (es): Shared By:
Description: It identifies the loyalty number that the customer has.
Physical Elements:
Data Type: integer Character Support:
Letters (A-Z) Keyboard (&*?)
Numbers(0-9) Special()
Length: 20 Decimal Places: Logical Elements
Key Type: Non Primary
Foreign Candidate Edit Rule:
Enter Now, Edits Allowed
Enter Now Edits, Not Allowed
Enter Later, Edits Allowed
Enter Later, Edits Not Allowed
Not Determined At This Time
Key Structure: Simple
Composite Uniqueness: Unique
Non-Unique Null Support: No Nulls
Nulls Allowed Value Entered By: User
System Required Value: Yes
No Range Of Values:
FIELD SPECIFICATIONS
General Elements:
Field Name: Rating Specification Type: Unique
Generic
Replica
Parent Table: Loyalty Source Specification:
Alias (es): Shared By:
Description: It helps the customer to rate the services on how they were offered in the hotel
Physical Elements:
Data Type: integer Character Support:
Letters (A-Z) Keyboard (&*?)
Numbers(0-9) Special()
Length: 10 Decimal Places: Logical Elements
Key Type: Non Primary
Foreign Candidate Edit Rule:
Enter Now, Edits Allowed
Enter Now Edits, Not Allowed
Enter Later, Edits Allowed
Enter Later, Edits Not Allowed
Not Determined At This Time
Key Structure: Simple
Composite Uniqueness: Unique
Non-Unique Null Support: No Nulls
Nulls Allowed Value Entered By: User
System Required Value: Yes
No Range Of Values:
FIELD SPECIFICATIONS
General Elements:
Field Name: Customer_idSpecification Type: Unique
Generic
Replica
Parent Table: loyalty Source Specification:
Alias (es): Shared By: customer
Description: The loyalties of the rating made by the customer are identified by their unique id in the hotel system.
Physical Elements:
Data Type: integer Character Support:
Letters (A-Z) Keyboard (&*?)
Numbers(0-9) Special()
Length: 20 Decimal Places: Logical Elements
Key Type: Non Primary
Foreign Candidate Edit Rule:
Enter Now, Edits Allowed
Enter Now Edits, Not Allowed
Enter Later, Edits Allowed
Enter Later, Edits Not Allowed
Not Determined At This Time
Key Structure: Simple
Composite Uniqueness: Unique
Non-Unique Null Support: No Nulls
Nulls Allowed Value Entered By: User
System Required Value: Yes
No Range Of Values:
Rooms Table Specification
FIELD SPECIFICATIONS
General Elements:
Field Name: Room_IDSpecification Type: Unique
Generic
Replica
Parent Table: Room Source Specification:
Alias (es): Shared By:
Description: This field is unique as it identifies the room the customer has rented in the hotel and to which the services are to be offered.
Physical Elements:
Data Type: Integer Character Support:
Letters (A-Z) Keyboard (&*?)
Numbers(0-9) Special()
Length: 20 Decimal Places: Logical Elements
Key Type: Non Primary
Foreign Candidate Edit Rule:
Enter Now, Edits Allowed
Enter Now Edits, Not Allowed
Enter Later, Edits Allowed
Enter Later, Edits Not Allowed
Not Determined At This Time
Key Structure: Simple
Composite Uniqueness: Unique
Non-Unique Null Support: No Nulls
Nulls Allowed Value Entered By: User
System Required Value: Yes
No Range Of Values:
FIELD SPECIFICATIONS
General Elements:
Field Name: Room_typeSpecification Type: Unique
Generic
Replica
Parent Table: Room Source Specification:
Alias (es): Shared By:
Description: This field describes the room type, whether a single room, bedsitter, or one bedroom in the hotel reservation.
Physical Elements:
Data Type: text Character Support:
Letters (A-Z) Keyboard (&*?)
Numbers(0-9) Special()
Length: Decimal Places: Logical Elements
Key Type: Non Primary
Foreign Candidate Edit Rule:
Enter Now, Edits Allowed
Enter Now Edits, Not Allowed
Enter Later, Edits Allowed
Enter Later, Edits Not Allowed
Not Determined At This Time
Key Structure: Simple
Composite Uniqueness: Unique
Non-Unique Null Support: No Nulls
Nulls Allowed Value Entered By: User
System Required Value: Yes
No Range Of Values:
FIELD SPECIFICATIONS
General Elements:
Field Name: price Specification Type: Unique
Generic
Replica
Parent Table: Room Source Specification:
Alias (es): Shared By:
Description: This field indicates how much a room cost for a customer to rent in the hotel, depending on which one is selected.
Physical Elements:
Data Type: integer Character Support:
Letters (A-Z) Keyboard (&*?)
Numbers(0-9) Special()
Length: Decimal Places: Logical Elements
Key Type: Non Primary
Foreign Candidate Edit Rule:
Enter Now, Edits Allowed
Enter Now Edits, Not Allowed
Enter Later, Edits Allowed
Enter Later, Edits Not Allowed
Not Determined At This Time
Key Structure: Simple
Composite Uniqueness: Unique
Non-Unique Null Support: No Nulls
Nulls Allowed Value Entered By: User
System Required Value: Yes
No Range Of Values:
FIELD SPECIFICATIONS
General Elements:
Field Name: customer_idSpecification Type: Unique
Generic
Replica
Parent Table: room Source Specification:
Alias (es): Shared By: customer
Description: The services offered by the employees to specific customers are identified by their Id in the system for easier order tracking and payment.
Physical Elements:
Data Type: Character Support:
Letters (A-Z) Keyboard (&*?)
Numbers(0-9) Special()
Length: Decimal Places: Logical Elements
Key Type: Non Primary
Foreign Candidate Edit Rule:
Enter Now, Edits Allowed
Enter Now Edits, Not Allowed
Enter Later, Edits Allowed
Enter Later, Edits Not Allowed
Not Determined At This Time
Key Structure: Simple
Composite Uniqueness: Unique
Non-Unique Null Support: No Nulls
Nulls Allowed Value Entered By: User
System Required Value: Yes
No Range Of Values:
FIELD SPECIFICATIONS
General Elements:
Field Name: Id Specification Type: Unique
Generic
Replica
Parent Table: Service_CategorySource Specification:
Alias (es): Shared By:
Description: This field is unique identify categories of services offered.
Physical Elements:
Data Type: Numeric Character Support:
Letters (A-Z) Keyboard (&*?)
Numbers(0-9) Special()
Length: 9 Decimal Places: None Logical Elements
Key Type: Non Primary
Foreign Candidate Edit Rule:
Enter Now, Edits Allowed
Enter Now Edits, Not Allowed
Enter Later, Edits Allowed
Enter Later, Edits Not Allowed
Not Determined At This Time
Key Structure: Simple
Composite Uniqueness: Unique
Non-Unique Null Support: No Nulls
Nulls Allowed Value Entered By: User
System Required Value: Yes
No Range Of Values:
FIELD SPECIFICATIONS
General Elements:
Field Name:Category_NameSpecification Type: Unique
Generic
Replica
Parent Table:Service_CategorySource Specification:
Alias (es): Shared By:
Description: This field gives the category name which a service belongs to.
Physical Elements:
Data Type: Alphanumeric Character Support:
Letters (A-Z) Keyboard (&*?)
Numbers(0-9) Special()
Length: 10 Decimal Places: None Logical Elements
Key Type: Non Primary
Foreign Candidate Edit Rule:
Enter Now, Edits Allowed
Enter Now Edits, Not Allowed
Enter Later, Edits Allowed
Enter Later, Edits Not Allowed
Not Determined At This Time
Key Structure: Simple
Composite Uniqueness: Unique
Non-Unique Null Support: No Nulls
Nulls Allowed Value Entered By: User
System Required Value: Yes
No Range Of Values:
Table Matrix
Customer Reservations Rooms Billing Services Loyalty
Customer 1:1 1:1 1:1 1:1 1:1
Reservations 1:1 1:N 1:1 1:N Rooms 1:N 1:1 1:1 1:1 M: N
Billing M: N 1:N M: N 1:1 Services 1:N 1:1 1:1 Loyalty 1:1 ER Diagram
LINKED TABLES:
The following tables are linked
Customer Reservations Rooms
Subset Table
Customer Billing
Validation Table
Services Service_Category08/05/2022Identify the Relationship Characteristics for each table - Deletion Rules, Type of Participation, and Degree of Participation
Defining a Deletion Rule for Each Relationship
The connection's first property to be defined and built is a deletion rule. This rule dictates how your RDBMS should respond to your request to delete a particular record from the table that acts as the Relationship's parent. Records in the child table that are not linked to anything in the parent table are referred to as "participation records." The prevention of orphaned data is made possible through deletion rules, which are crucial to relationship-level integrity.
Identify the Relationship Characteristics for each table - Deletion Rules, Type of Participation, and Degree of Participation
1. Customer table
Deletion Rules
All reservations linked with the customer id must be erased. (Use a Nullify rule.)
A customer record cannot be erased because the customer ID must be inactive. (Use a Deny rule.)
All customers associated with the reservation must also be deleted from the customer table. (Use the Cascade rule.)
It is impossible to remove a customer record linked to a reservation record. (Use a Restrict rule.)
Remove the customer from the customer table after deleting the billing connected with the customer. (Use the Restrict rule.)
Type of Participation
Mandatory There must be at least one customer record before inputting any order data.
Degree of Participation
Because a customer may submit an endless number of order requests, Customer ID has a participation level of (0, N).
b) Billing table
Deletion Rules
All billing records associated with the service must also be deleted from the billing table. (Use the Cascade rule.)
One cannot delete billing if there are related to service records. (Restrict rule.)
One cannot remove the billing record because have to declare that the payment is unavailable. (Use a Deny rule.)
One must first delete the reservation records associated with the service from the service table and then delete the billing from the billing table. (Restrict rule.)
The billing amount for rooms associated with the reservation must be deleted. (Nullify rule.)
Type of Participation
Mandatory An reservation must exist before adding any data to the billing table
c) Services table
Deletion Rules
One cannot remove a service record (Use a Deny rule.)
To remove service records, you must remove any reservations that are linked to them. (Use a Restrict rule.)
Delete the reservation for the rooms from the reservation database, then the service linked with the reservation, and finally the service itself from the service table. (Use the Restrict rule.)
Type of Participation
Optional There must be no service record before adding entries to other tables.
Degree of Participation
Service ID has a degree of participation of (0, N) because services can be done for unlimited rooms.
D. Loyalty table
Deletion Rules
One cannot delete loyalty records if there are related reservation records. (Use a Restrict rule.)
One cannot delete the loyalty record; you must designate the service as closed. (Use a Deny rule.)
You must first delete the reservation associated with the services from the services table and then delete the loyalty from the loyalty table. (Use the Restrict rule.)
Type of Participation
Mandatory There must be at least one loyalty record before inserting any entries into other tables.
E . Rooms tableDeletion Rules
One cannot delete the customer record if there are related room records. (Use a Restrict rule.)
The room record cannot be removed; the services must be designated as close. (Use a Deny rule.)
You must first delete the services associated with the rooms from the services table and then the room from the room table. (Use the Restrict rule.)
Type of Participation
Mandatory Before adding any entries to the other tables, there must be at least one record of room present.
F. Billing Table
Deletion Rules
One cannot remove the billing record; you must designate the services as closed. (Use a Deny rule.)
If there are reservation records that are associated with the billing records, then one cannot remove the billing records. (Use a Restrict rule.)
You must first delete the rooms associated with the reservation from the rooms table and then delete billing from the billing table. (Use the Restrict rule.)
Type of Participation
Mandatory There must be at least one billing record before entering any records into other tables.
Business Rule Specifications
Customer and rooms
The customer ID field's requirements have been updated, and the link between the customer and room tables is reflected in this specification document.
Business Rule Specifications
113775129484Rule Information
00Rule Information
Statement: Invalid CUSTOMER details not allowed
Constraint: Entries for the CUSTOMERID in the CUSTOMERS table are only limited to the ROOM_ID field in the ROOM table.
Type:
Database Oriented
Application Oriented Category:
Field Specific
Relationship Specific
Test On:
Insert
Update
Delete
1137751905939Structures affected
00Structures affected
Field Name: CUSTOMER_ID
Table Name: CUSTOMER, ROOM
11377576448Field elements affected
00Field elements affected
Physical elements
Data Type Length Character Support
Logical elements
Key Type
Key Structure
Uniqueness Null Support
Values Entered By
Required Value Range of Values
Edit Rules
11377550607Relationship Characteristics allowed
00Relationship Characteristics allowed
Deletion Rule Type of Participation Degree of Participation
11272646686Action Taken
00Action Taken
The Range of Values was set to Any value within the CUSTOMER_ID of the CUSTOMER table.
The Type of participation for each table was changed: CUSTOMER is Mandatory; ROOM is Optional.
Loyalty and billing
The LOYALTY and BILLING tables' connection will be reflected in this specification page and changes to the Billing ID field's requirements.
Business Rule Specifications
113775129484Rule Information
00Rule Information
Statement: Invalid instructor details not allowed
Constraint: Entries for the BILLINGID in the BILLING table are only limited to the LOYALTY field in the LOYALTY table.
Type:
Database Oriented
Application Oriented Category:
Field Specific
Relationship Specific
Test On:
Insert
Update
Delete
1137751905939Structures affected
00Structures affected
Field Name: BILLING_ID
Table Name: BILLING, LOYALTY
11377576448Field elements affected
00Field elements affected
Physical elements
Data Type Length Character Support
Logical elements
Key Type
Key Structure
Uniqueness Null Support
Values Entered By
Required Value Range of Values
Edit Rules
11377550607Relationship Characteristics allowed
00Relationship Characteristics allowed
Deletion Rule Type of Participation Degree of Participation
11272646686Action Taken
00Action Taken
The Range of Values was set to Any value within the BILLINGID of the BILLING table.
The Type of participation for each table was changed: BILLING is Mandatory; LOYALTY is Optional.
SERVICES-RESERVATION
This specification sheet will reflect the modifications made to the field specifications for the service_id field, as well as the characteristics of the Relationship between the reservation and service tables.
Business Rule Specifications
113775129484Rule Information
00Rule Information
Statement: Invalid room details not allowed
Constraint: Entries for the service_id in the service table are only limited to the reservation_id field in the reservation table.
Type:
Database Oriented
Application Oriented Category:
Field Specific
Relationship Specific
Test On:
Insert
Update
Delete
1137751905939Structures affected
00Structures affected
Field Name: Service_idTable Name: reservation, service
11377576448Field elements affected
00Field elements affected
Physical elements
Data Type Length Character Support
Logical elements
Key Type
Key Structure
Uniqueness Null Support
Values Entered By
Required Value Range of Values
Edit Rules
11377550607Relationship Characteristics allowed
00Relationship Characteristics allowed
Deletion Rule Type of Participation Degree of Participation
11272646686Action Taken
00Action Taken
The Range of Values was set to Any value within the service_id of the SERVICE table.
The Type of participation for each table was changed: Reservation is Mandatory; service is Optional.
Analyzing View in Database
Purpose of the View: This View provides customer information, billing information, and billing amount.
Supporting Diagram for the view:
View Specifications
113775129484General Information
00General Information
Name: Type: Data Aggregate Validation
Description: This View provides customer information, billing information, and billing amount.
1136651795569Basic Table
00Basic Table
Customer, Billing
11366550165Calculated Field Expression
00Calculated Field Expression
Field Name Expression
11303054822Filter
00Filter
Field Name Condition
Payment_MethodPayment_Method = Credit Card
Implementation Progressive Details
Through the use of youtube and courses, I acquired a fundamental understanding of C#. I have designed a straightforward user interface for the software we want to use. The user interfaces that I developed consisted of a page that, among other things, enabled customers and workers to access the database access. I learned how to use Microsoft Access to establish a database with the assistance of YouTube. Thanks for that! I made up all of the fields required by the ER diagram to demonstrate how the logic would be applied to make it work.
During this project's creation, we used various approaches to ensure that the database and application were built in the most efficient manner possible. At the beginning of the development process, several requirements analysis diagrams were conceived and drawn out. With the assistance of this project, we want to create a sizable database that will be used by hotel administration to track reservations for rooms. In the future, hotels may make use of this database if it becomes essential to do so for monitoring reservations.
After that, I was instructed on how to establish a connection between Visual Code Studio and Microsoft Access so that I would be able to correctly input data into the forms required for the user interface. This was a prerequisite for the authentication process to go well. Currently, I am working on the site, which will show the food sales, prices, and amenities they provide. Regular changes to the database keep users abreast of any temporarily unavailable room. We aim to increase the level of detail in the information that will be kept in the database on the various foods and menus that are accessible. The application will provide a comprehensive overview of the various facets of the organization by making use of all of these data points, including how sales are coordinated to enhance security and safety.