You are on page 1of 54

Assignment

1. Definition of problem

The Bridge hotel wishes to set up an automated booking system. The system will
store details on customers, rooms available, prices and bookings. The system is to
produce reports on bookings, room availability and customer invoices.

2. Analysis

Jenny is the hotels booking secretary.

A) Interview with Jenny

Q. How do you store this information at present?


Jenny: It's all on paper. Basically I keep a large diary and write down each
booking in the appropriate dates.

Q. What is the procedure when someone rings up to book a room?


Jenny: I ask what dates they would like, then I look in the diary at what rooms,
if any, are available on those dates. If there are then I tell them the types of
rooms that are available and the prices. Once they've chosen a room type I
take their details, write these down in a customer book and book an
appropriate room in the diary.

Q. What about cancellations?


Jenny: I simply cross them out in the diary. It can get a bit messy sometimes.

Q. Have rooms ever been double booked by mistake?


Jenny: Yes. As I said before, the diary can get a bit messy and mistakes can be
be made. We have had to ask other hotels to take in our customers. We hope
that wouldn't be a problem if we computerised the system. Another thing that
would be nice is if we could print a sheet out each day so we can see at a
glance what rooms are to be made ready for that day and customer details.

Q. What about creating customer invoices?


Jenny: We have an invoice book. We look at the diary at what room was booked,
The price, and how long they booked it for. We then work out the cost by
hand.

Q. How much experience do you have of computers?


Jenny: I did a basic course a year ago.

Q. What computer facilities do you have at present?


Jenny: We have a new PC with a printer.

B) Current System

Bookings are made by phoning the desk and the details are entered by hand.
Cancellations are made in the same way by simply crossing out the entry.

Issuing instructions for the rooms to be made ready that day are written by hand
with the information gained from the diary.

Customer invoices are calculated and written by hand.

Present problems

Searching for available rooms can be time consuming.

Rooms could be double booked.

The issuing of the days requirements could be mistaken.

If there are any changes then they are written by hand.

Mistakes could be made in calculating costs.

C) End user requirements

Reduction of paperwork needed

Production of reports and lists

Easy to use

Speedier method of booking

Keep customer records

Produce invoices.

D) Information:

Each room has a number. There are three types of rooms, family, double and single.
The hotel charges the customer by per person per night. They can be on any of
three floors and some have satellite tv.

The hotel closes from December 22nd until January 7th.

You must produce:-

1.

Entity relationship diagram.

2. Implement the relational database.

3. Create all required forms, queries and reports.

4. Your database must be documented.

Note. Any assumptions must be stated and justified.

The Bridge Hotel


Room Details
The bridge Hotel has three floors providing a total of 30 guest rooms the numbering convention for those rooms is typical of
most hotels so that rooms situated on the ground floor are numbered from 101 onward on the first floor from 201 onward and
on the second floor from 301 onward. Each floor has 10 rooms.

The ground floor comprises an equal number of single and family rooms family rooms may accommodate up to 4 people with
1 double bed and 2 single, rollaway beds and a cot may also be provided for a baby (4+1).

The first floor comprises an equal number of single and double rooms.

The second floor consists of an equal number of double and twin rooms twin rooms contain 2 single beds as opposed to double
rooms, which contain 1 double bed.

All double, single and twin rooms include satellite TV with a pay per night option and a mini bar the family rooms do not, but
do include a TV with video/dvd and the option to hire a games console and games over night.

Single and twin rooms offer internet access for business guests at a small nightly rate.

There are 2 fully equipped conference rooms and 1 larger function room (with bar and service to kitchen).

Tariff
All prices shown are per night:

Rooms
Single Room

35

Double Room

55

Twin Room

55

Family Room (up to 4)

75

Family Room (4+1)

85 (includes cot)

Optional Meals Included


Breakfast (pppn)

10

All Meals Set Menu (pppn)

30

Other Options
Satellite TV (pay per night)

10

Games Console and Game Hire

10

Internet Access

Function room and conference rooms are hired at an hourly rate:

Conferences and Functions


Conference Room (per hour)

40

Function Room (per hour)

80

Service Staff (person per hour)

10

Contents

Analysis

Page 2

User Requirements

Page 2

Analysis Notes

Page 3

Technical Documentation

Page 4

Test Plan / Test Results

Page 32

User Guide

Page 36

Conclusion & Future


Developments

Page 46

Additions / Appendix

Page 47

Example Invoice
Additional Designs
Bridge Hotel Logo

Appendix A
Appendix B
Appendix C

Alex Cooper
Database Design: Analysis
Analysis
Problem:
The bridge hotel wishes to set up an automated bookings system. The
system will store details on customers, rooms available, prices and
bookings. The system is to produce reports on bookings, room availability
and customer invoices.
Current System

Paper based
Bookings made by phone details entered by hand into the diary
Cancellations done by crossing out the entry
Instructions for room preparation written by hand, which is
extracted from the diary
Customer invoices are calculated and written by hand

Problems with present system


Searching for available rooms time consuming
Rooms could be double booked
Instructions for room preparation can be mistaken
Any changes are written by hand, and could make it unreadable,
resulting in mistakes
Customer invoices calculated and written by hand, again possible
mistakes with the calculations could be made

User Requirements
Has to be easy to use
Booking has to be faster
Keep customer records
Produce Invoices for the customers
Produce reports showing what rooms are to be made ready or
cleaned for a specific day.
No Double-bookings permitted in the system
Cancellations can be done easily
decrease paperwork

Alex Cooper
Database Design: Analysis
Analysis Notes: Information about the hotel
Hotel:

Each room has a number


Three types of Room
o Family
o Double
o Single
Charges per person per night
Can be on any of the three floors
Some have satellite TV
2 conference rooms
1 function room

Ground Floor: (Room Numbers 101-110)


5 Single Rooms
5 Family Rooms
First Floor: (Room Numbers 201-210)
5 Single Rooms
5 Twin Rooms
Second Floor: (Room Numbers 301-310)
5 Double Rooms
5 Twin Rooms
Dates:
The hotel is closed 22nd December to January 7th
Rooms:

All Double, Single & Twin rooms include Satellite TV (pay per night option)
& minibar (except the family room which just has the TV and option to
hire games console/games)
Internet access available to Twin and Single Rooms at nightly rate

Prices
Rooms
Single Room 35
Double Room 55
Twin Room 55
Family Room (up to 4) 75
Family Room (4+1) 85 (includes cot)
Optional Meals Included
Breakfast (pppn) 10
All Meals Set Menu 30
(pppn)
Other Options
Satellite TV (pay per 10
night)
Games Console and 10
Game Hire
Internet Access 5

Conferences and Functions


Conference Room (per 40
hour)
Function Room (per 80
hour)
Service Staff (person per 10
hour)

Technical Documentation

Alex Cooper

Contents

DATA DICTIONARY

SPLITTING INTO THE VARIOUS ENTITIES (TABLES)

DATA DICTIONARY / ENTITIES LIST (IN ATOMIC FORM)

CUSTOMER
BOOKING
CREDIT CARD
ROOMS

8
8
8
9

VALIDATION

INPUT (USING INPUT MASKS)

ENTITY RELATIONSHIP DIAGRAM (ERD)

12

FORM DESIGN

13

STRUCTURE OF DATABASE
INITIAL START UP SCREEN (MAIN SCREEN)
CHECK ROOM AVAILABILITY FORM
CREDIT CARD ENTRY FORM
CUSTOMER DETAILS FORM
BOOKING FORM

13
14
14
15
16
17

BOOKING FORM DESIGN NOTES:

18

ADDITIONAL NOTES (FOR ALL FORMS)

18

INVOICE DESIGN

19

HI-FI DESIGNS

21

MAIN SCREEN (MENU)

21

ROOM AVAILABILITY FORM

22

CUSTOMER DETAILS FORM

23

CREDIT CARD FORM

23

CREDIT CARD FORM

24

Alex Cooper
BOOKING FORM

25

REPORTS FORM

26

ERD PRODUCED IN ACCESS

27

Data Dictionary
Field Name
Customer
Name
Address
Post Code
Telephone
Number
Booking
Number
Arrival
Checkout
RoomNum
PricePerNight
Room Type
Cot
Satellite TV
Games Console
Internet Access
Breakfast
All Meals
Credit Card
Number
Credit card
Expiry Date

Data types
Text
Text
Text
Text
AutoNumber
Date/Time
Date/Time
Number
Currency
Drop Down
Menu
Yes/No
Yes/No
Yes/No
Yes/No
Yes/No
Yes/No
Text
Date/Time

Here is a list of all the attributes that I have identified. This


database needs to be normalised so that there is no redundant data
and any unnecessary repeated entities are removed to ensure
integrity of the database. On the following pages are shown how the
database is normalised.

Splitting into the various entities (tables)

Alex Cooper
Field Name
Customer
Name
Address
Post Code
Telephone
Number
Booking
Number
Arrival
Checkout
Room Type
Cot
Satellite TV
Games Console
Internet Access
Breakfast
All Meals
Credit Card
Number
Credit card
Expiry Date
Room Number
Room Type
Price Per Night

Data types
Text
Text
Text
Text
AutoNumber
Date/Time
Date/Time
Drop Down
Menu
Yes/No
Yes/No
Yes/No
Yes/No
Yes/No
Yes/No
Text
Date/Time
Number
Text
Currency

The table is colour coded to represent the different entities (four entities).

Data Dictionary / Entities List (in atomic form)

Alex Cooper
From the table above I have included I have included additional
attributes to make the entities atomic attributes , which means that
the attributes can not be broken down any further, for example the
address attribute is broken down in address line 1, address line 2,
Town.
Customer
Field Name
CustomerID
FirstName
LastName
AddressLine1
AddressLine2
Town\City
PostCode

Data Type
Auto Number
Text
Text
Text
Text
Text
Text

Telephone

Text

CreditCardNumber

Number

Field Size \ Key


Primary Key
30
30
30
30
30
(use input mask as
well) (10)
(use input mask as
well) (13)
Foreign key

Booking
Field Name
BookingID
Arrival
Checkout
CustomerID
RoomNumber
Nights Cot required
Nights Satellite TV
required
Nights Games
Console Required
Nights Internet
Access required
Nights Breakfast
required
Nights All Meals
required
Hours Required
Staff Required

Data Type
Auto Number
Date\Time (Short
date)
Date\Time (Short
date)
Number
Number
Number
Number

Field Size\Key
Primary Key
N/A

Foreign key
Foreign key
N/A
N/A

Number

N/A

Number

N/A

Number

N/A

Number

N/A

Number
Number

N/A

N/A

Credit Card

Alex Cooper
Field Name
CreditCardNumber
ExpiryDate
CardHolderName

Data Type
Text
Text
text

Field Size\Key
20 (Primary Key)
(short date)
30

Rooms
Field Name

Data
Type
RoomNumber
Number
RoomType
Text
(Combo
Box)
PricePerNight
Currency
CotAvalable
Yes/No
SataliteTVAvailable Yes/No
GamesAvailalable
Yes/No
InternetAvaliable
Yes/No

Field Size\Key
(Primary Key)
(Single/Double/Twin/Family/Confrence/Function)`
n/a

Validation
Table
Booking

Field Name
ArrivalDate

Validation Rule

Validation
Text
Not Between
"Hotel is
#22/12/05# And closed on
#07/01/06#
this day please try
another
date"

Input (using input masks)


Table

Field Name

Input Mask

Customer

PostCode

>LL00\ 0LL;;_

Customer

Telephone

\(9999")
"00090009;;_

Place Holder
used
_
_

Queries (on the following pages)

Query
Criteria
Description
Rooms
PARAMETERS [Please enter
Reserved
arrival date] DateTime,
[Please enter checkout
date] DateTime;
SELECT Booking.Room,
Booking.Arrival,
Booking.Checkout
FROM Booking
WHERE (((Booking.Arrival)
Between [Please enter
arrival date] And [Please
enter checkout date]-1))
Or ((([Checkout]-1)
Between [Please enter
arrival date] And [Please
enter checkout date])) Or
(((Booking.Arrival)<[Please
enter arrival date]) And
(([Checkout]-1)>[Please
enter checkout date]-1));
Checks
SELECT Rooms.RoomNum
room
FROM Rooms LEFT JOIN
availability
[Rooms Reserved] ON
(uses
Rooms.RoomNum=[Rooms
Rooms
Reserved].Room
Reserved
WHERE ((([Rooms
Query
Reserved].Room) Is Null));
Rooms
None (combines Rooms
Available
Available query and Rooms
and Room
table
type
invoice
of Staff, Breakfast, Set
details for a Meals, Arrival, Checkout
report

Which
rooms need
cleaning or
preparing
for new
guest
Which

Arrival=Date()

Checkout = Date()

Fields & Tables to include


Alex Cooper
Booking

Reports
Produced
No

Rooms table & Rooms Reserved


query

No

Rooms table and Rooms


Available

No

Booking
Rooms Credit Card Number, First
Name, Surname, Address line 1,
Address line 2, Town, Postcode,
Telephone Number, Booking ID,
Customer Number, Room Num,
PricePerNight, Cot, Satellite TV,
Games console and game hire,
Internet Access, , Number of hours
needed, Number
Bookings Rooms Room type,
Arrival, RoomNum

Yes

Bookings, Rooms

Yes

10

Yes

Alex Cooper
rooms need
cleaning for
guest
departure
Daily Room
Clean
Rooms
Query
(shows the
features
available in
the room

Room type, checkout, Room Num

RoomNum [Enter Room


Number]

Bookings, Rooms RoomNum,


Yes
Room Type, Arrival, Checkout
Rooms
RoomNum,Type,Intenret,Cot,meals,
Breakfasts, games console, satalite

11

Alex Cooper

Entity Relationship Diagram (ERD)


Customer

CustomerID
FirstName
LastName
AddressLine1
AddressLine2
Town\City
PostCode
Telephone
CreditCardNumber*
Credit Card

CreditCardNumber
ExpiryDate
CardHolderName

Booking
One

Many

One

BookingID
Arrival
Checkout
Many
CustomerID*
RoomNumber*
Many
Nights Cot required
Nights Satellite TV required
Nights Games Console required
Nights Internet Access
required
Nights Breakfast Required
Nights All Meals Required
Hours Required
Staff Required

One

Rooms

RoomNumber
RoomType
PricePerNight
CotAvalable
SataliteTVAvailable
GamesAvailalable
InternetAvaliable

Key
Text in italics = primary key
* = foreign key

From the Entity Relationship diagram we can see that this is in third normal form because I have made sure there is no repeating attributes, I
have created a separate entity for each group of related data each with their own primary key these are necessary to make it into first normal
form. To then to make it into second normal form I have created relationships between tables using foreign keys. Finally to make it into third
normal form I have ensured that all attributes that are not dependent upon the primary key have been removed.

12

Alex Cooper
Form Design
Structure of database

Reports
Form
(Contains
cleaners
daily report
etc)

Enter New
Customer
Form

Main Menu
Logo

Check
Room
Availability
Form

Quit button

Credit Card
Details
Form

Booking

13

Alex Cooper

Initial Start up Screen (main screen)

Command
Buttons

Check Room Availability


Booking
Customer Details

Label

Credit Card
Details

Reports

Quit

Check Room Availability Form


Room Availability

Form caption

List Box (From the Rooms and


Room Type Query displays the
rooms and rooms type
according the dates entered in
the query)

14

Alex Cooper
Credit Card Entry Form

Credit Card Entry Form


Card Number
Expiry Date
Card Holders Name

Add Credit Card

Command button adds


new Credit Card Record

Deletes the current


record

To add a new Credit Card,


click 'Add Credit Card'
Button. To delete a Credit
Card, press the button with
the rubbish bin on. To
Navigate the Credit Cards,
use the arrows to cycle
through

Onscreen instructions
Navigation
command
buttons

15

Alex Cooper
Customer Details form

Customer Details Form


First Name
To add a new customer, click 'Add
Customer' Button. To delete a
customer, press the button with the
rubbish bin on. To Navigate the
Customer Records, use the arrows
to cycle through.

Last Name
Address Line 1
Address Line 2
Town / City

On screen instructions (label)

Postcode
Telephone

Credit Card No.


Add Record

Create a new
Booking (add record)

Delete current
customer (record)

Navigation Buttons

Lookup wizard of the


credit card number
(showing number,
expiry data and Card
Holders name)

16

Alex Cooper
Booking Form

Booking Form

Arrival

Check Availability

Checkout

Customer ID

Credit Card No.

Room Number

Command Button to Run


the Room Availability form

Conference / Function Rooms only

Nights Cot
Required

Hours Required

No. of
Breakfasts (per
nights)

Staff Required

No of Set Meals
(per night)
To Create a new Booking, click on the 'New
Booking' Button below. To Delete the current
Booking, click the rubbish bin button. To
navigate the bookings, click the arrows to cycle
through the bookings

Internet (Per
night)
Satellite TV
(Per night)

Additional help/ Troubleshooting can be found


in the User Guide provided

Games
Console (Per
night)

Add Record

Create a new
Booking (add record)

Delete current
booking (record)

On Screen instructions
(Label)

Navigation Buttons
17

Alex Cooper
Booking form Design notes:
1. Drop down combo box (Lookup wizard) showing the Customer
ID, First Name, Last Name and Postcode (from the Customer
table). This enables the user to easily see which customer
they are using. (the other details are hidden once the
Customer number is selected)
2. Drop down combo box (Lookup wizard) showing the Credit
Card number, expiry date and card holders name (from the
credit card table) This enables easy viewing of the Credit card
details, so the bookings are more accurate because the user
can see the full card details (the other details are hidden once
the card number is selected)
3. Drop down combo box (Lookup wizard) showing the Room
Number, Room type and Price Per Night (from the Rooms
table).
Additional Notes (for all Forms)
Most of the data entries fields have help text, so that when the user
moves the mouse pointer over the field, then a brief description is
displayed in the status bar.

18

Alex Cooper
Invoice Design
Query to get the Report
Query
Criteria
Description
Invoice

RoomNum
ber =
[Enter
Room
Number]
Checkout
= date()

Fields & Tables to include


SELECT Booking.Arrival, Booking.Checkout,
Rooms.RoomNum, Rooms.RoomType,
Rooms.PricePerNight, Booking!CheckoutBooking!Arrival AS NoOfNights,
[NoOfNights]*Rooms!PricePerNight AS
AccomodationCost,
Booking![SataliteRequired(nights)]*10 AS
SatelliteTV, Booking![GamesRequired(nights)]*5 AS
GamesConsole,
Booking![InternetRequired(nights)]*5 AS Internet,
Booking![CotRequired(nights)]*10 AS Cot,
Booking!FullMeals*30 AS FullMeal,
Booking!Breakfast*10 AS Breakfast,
[AccomodationCost]+[SatelliteTV]+[GamesConsole]
+[Internet]+[Cot]+[FullMeal]+[Breakfast]*1.175 AS
TotalVAT
FROM Rooms INNER JOIN Booking ON
Rooms.RoomNum = Booking.Room
WHERE (((Booking.Checkout)=Date()) AND
((Rooms.RoomNum)=[Enter Room Number]));

Reports
Produced
Yes

Invoice (Report) Design (Using Wizard: layout Justified)

Design of the report on the following page

19

Alex Cooper

Customer Invoice

Bridge Hotel Logo

Arrival:

Checkout:

Room
Room No.
Room Type
Price per Night
Number of Nights stayed:
Accommodation Cost:
Extras
Satalite TV
Games Console
Internet
Cot
Full Meals
Breakfast

Total Inc VAT

20

Alex Cooper
Reports for Queries
Query
Daily
Room
Clean
Rooms
to Clean
when
guest
leaves
Rooms
to
prepare
for guest
arriving

Layout
Columnar (sorted ascended by room date)
Columnar (sorted ascended by room date)

Columnar (sorted ascended by room date)

Hi-fi designs
Main Screen (menu)

Command Button opens


various forms

Saves and quits the database

21

Alex Cooper
Room Availability Form

List of available rooms based on the dates


input. (In this case 12/12/05 and 13/12/05)

22

Alex Cooper
Customer Details Form

Onscreen
instructions

Credit Card Form

Command button
deletes the current
record

Command button adds


a new Customer

Command buttons to
move forward or
backwards through the
records

23

Alex Cooper

Credit Card Form

Onscreen Instructions

Command button adds new


record

Deletes current
record

Command buttons to move


forward or backwards
through the records

24

Alex Cooper
Booking Form

Command button runs Room Availability Form (see


above)

Runs a query to show the features


available in each of the rooms (see
additional designs)

On screen
instructions

Command button adds


a new booking
(record)

Deletes the current


booking (record)

Command buttons to move


forward or backwards
through the records

25

Alex Cooper

Reports Form

Command buttons show the various reports

26

Alex Cooper
ERD Produced in Access

27

Alex Cooper
Sample Invoice

Accommodation Cost (no. of


nights multiplied by room
cost)

Breakdown of any additional charges to the


room such as satellite TV, games console
etc (charged per night)

Total Price (including


VAT at 17.5%)

28

Alex Cooper
Sample Report: Daily Room Cleaning (14th December 05)

Room type
Guest arrival
date

Guest departure date


Room Number

29

Alex Cooper
Sample Report: Guests Arriving Today (14th December 2005)

Room Type
Room Number

30

Alex Cooper
Sample Report: Rooms to Prepare for Guests leaving (15th December 2005)

Room
number

Room Type

31

Alex Cooper
Test Plan / Test Results
My test procedure to test this database is to verify each component
of the database. This is done by checking to see if the actual
outcome of the test is the same as the expected, for instance, when
testing command buttons, that the expected operation, such as
loading a form, is executed. I will be recording the tests in the table
below, with space for any comments.
Test
Num
1

Test Description

Test Data

Testing to see if the


database loads and
shows the main menu

N/A

Booking Form
Check that hotel can
not be booked during
22nd December to
January 7th
Booking Form
Check that rooms can
not be booked during
22nd December to
January 7th
Booking Form
Check that rooms can
not be booked during
22nd December to
January 7th
Booking Form
Check that the rooms
can be booked any
other date apart from
the specified closing
date
Rooms Available
Query

22/12/05

Error Message
saying Hotel
Closed on this
day

Actual
Result
Database
loaded and
menu
displayed
Message
saying Hotel
Closed on
this day

31/12/05

Error Message
saying Hotel
Closed on this
day

Message
saying Hotel
Closed on
this day

07/01/06

Error Message
saying Hotel
Closed on this
day

Message
saying Hotel
Closed on
this day

11/04/05

No messages
None
to be displayed Displayed

12/12/05

All Apart from All Apart


room 120 Free from room
120 Free
Input box
Input box
requesting to
shown asking
enter the
to enter an
arrival date
arrival date

Main menu
Test if the check room
availability command
button works correctly
Main menu
Test if the quit
command button exits
the database

N/A

N/A

Expected
Result
Database to
load and show
menu

Database Exits

Comments

The validation is only


for the year 05/ start
of 06. the database
needs to be changed
according to the year
OK

Database
exited

32

Alex Cooper
9

Main menu
Test if the View / Add
Customer command
button works correctly
Main Menu
Test if the View / Add
Credit Card
Command button
works correctly
Main Menu
Test if the View / Add
Booking Command
button works correctly
Main Menu
Test if the Reports
commands button
works correctly
Check Room
Availability (when
command button
clicked on main menu)
Check Room
Availability

N/A

14

Check room
availability

15/12/05

15

Customer Details Form


Test if the delete
record command
button works
Customer Details Form
Test if the add new
record command
button works
Customer Details Form
Test if the forward
command button
works
Customer Details Form
Test if the previous
command button
works
Credit Card Details
Form
Test if the delete

10

11

12

13

13

16

17

18

19

N/A

Customer
Customer
Details form to details
be displayed
formed
displayed
Credit Card
Credit Card
Details form to Details form
be displayed
displayed

N/A

Booking form Booking


to be displayed form
displayed

N/A

Reports form
Reports form
to be displayed displayed

N/A

Input box to be
displayed
requesting
arrival date
Input box
requesting
checkout date
to be displayed
All rooms
apart from
room 110 and
108 to be
available

Input box
displayed

N/A

Current
Record to be
deleted

Current
Record
Deleted

N/A

A new record
to be created

New Record
Created

N/A

The next
Record to be
shown

Next Record
Shown

N/A

The previous
record to be
shown

Previous
Record
Shown

N/A

Current
Record to be
deleted

Current
Record
Deleted

12/12/05

Input box
displayed

All rooms
apart from
room 110 and
108 available

This is based on 7
bookings (Room 110
booked from 12/12/05
to 15/12/05 and Room
108 booked from
14/12/05 to 17/12/05)

33

Alex Cooper

20

21

22

23

24

25

26

27

28

29

30

record command
button works
Credit Card Details
Form
Test if the add new
record command
button works
Credit Card Details
Form
Test if the forward
command button
works
Credit Card Details
Form
Test if the previous
command button
works
Booking Form
Test if the delete
record command
button works
Booking Form
Test if the add new
record command
button works
Booking Form
Test if the forward
command button
works
Booking Form
Test if the previous
command button
works
Booking Form
Test if the Check
Availability command
button works
Booking Form
Test if the Features
available in rooms
command button
works
Reports Form
Test if the Daily
Room Cleaning
command button
works
Reports Form
Test if the Rooms to
Prepare for guests

N/A

A new record
to be created

New Record
Created

N/A

The next
Record to be
shown

Next Record
Shown

N/A

The previous
record to be
shown

Previous
Record
Shown

N/A

Current
Record to be
deleted

Current
Record
Deleted

N/A

A new record
to be created

New Record
Created

N/A

The next
Record to be
shown

Next Record
Shown

N/A

The previous
record to be
shown

Previous
Record
Shown

N/A

Input box to be
displayed
requesting
arrival date
Input box to be
displayed
requesting
Room Number

Input box
displayed

Report for
daily room
cleaning (in
print preview)
to be shown
Report for
Rooms to
Prepare for

Report for
daily room
cleaning in
print preview
shown
Report for
Rooms to
Prepare for

N/A

N/A

N/A

Input box
displayed

34

Alex Cooper
arriving command
button works

31

Reports Form
Test if the Rooms to
clean for guests
leaving command
button works

N/A

32

Reports Form
Test if the Invoice
command button
works
Reports Form
Test if the Invoice
command button
works

N/A

33

110 (room
number)

guests arriving
(in print
preview) to be
shown
Report for
Rooms to
clean for
guests leaving
(in print
preview) to be
shown
Input box
requesting the
room number

guests
arriving in
Print preview
shown
Report for
Rooms to
clean for
guests
leaving in
Print preview
shown
Input box
requested

Report of the
Invoice (in
print preview)
to be shown

Report of the
Invoice in
Print preview
shown

Testing for this


continues to 33

See Print out


(Appendix A) for
actual invoice (based
on the current date
only prints out for that
room)

35

Alex Cooper

Bridge Hotel Database User Guide (rev 1.1)

36

Alex Cooper

CONTENTS
INTRODUCTION TO THE DATABASE

38

DESCRIPTIONS OF THE FIELDS IN THE DATABASE

38

ENTERING DATA INTO THE DATABASE (USING THE TABLE)

39

MAKING A BOOKING:

40

STEPS INVOLVED IN MAKING A BOOKING:

40

2.

41

ENTERING CUSTOMER DETAILS

3.CREATING A BOOKING

42

CHECK ROOM AVAILABILITY (EXAMPLE)

43

VIEW REPORTS

44

PRODUCE A CUSTOMER INVOICE

45

EXITING THE DATABASE

45

GLOSSARY OF TERMS

45

37

Alex Cooper

Introduction to the database


This database is designed to be an easier to use booking system for the
bridge hotel.
Descriptions of the fields in the database
Customer
Field Name
CustomerID
FirstName
LastName
AddressLine1
AddressLine2
Town\City
PostCode

Data Type
Auto Number
Text
Text
Text
Text
Text
Text

Telephone

Text

Field Size \ Key


Primary Key
30
30
30
30
30
(use input mask as
well) (10)
(use input mask as
well) (13)

Booking
Field Name
BookingID
ArrivalDate
DepartDate
CustomerID
RoomNumber
CreditCardNumber
Cot
Satellite TV
Games Console
Internet Access
Breakfast
All Meals
Hours Required

Data Type
Auto Number
Date\Time (Short
date)
Date\Time (Short
date)
Number
Number
Number
Yes/No
Yes/No
Yes/No
Yes/No
Yes/No
Yes/No
Number

Field Size\Key
Primary Key
N/A
N/A
Foreign key
Foreign key
Foreign key
N/A
N/A
N/A
N/A
N/A
N/A
N/A
38

Alex Cooper

Conference Room
Hours Required
Function Room
Staff Required
Credit Card
Field Name
CreditCardNumber
ExpiryDate

Number

N/A

Number

N/A

Data Type
Text
Text

Field Size\Key
20 (Primary Key)
(short date)

Room
Field Name
RoomNumber
RoomType

Data Type
Number
Text (Combo Box)

Field Size\Key
(Primary Key)
(Single/Double/Twin/Family)`

Entering Data into the Database (using the table)


Once Microsoft Access has loaded, you are presented with the following
screen.

Click on the command buttons to


view the various forms
39

Alex Cooper

Making a Booking:
Note: Prior to making a Booking, the Customer Details and Card details
should be entered first (unless the customer is a returning customer)
Steps involved in making a booking:
1. Enter Customer Credit Card Details (not required if a returning
customer)
2. Enter Customer Details
3. Create a booking

1. Entering Credit Card Details


From the main menu, click View/ Add Credit Card Detials
The following form will be displayed:

Click the
command button to
enter a new credit
Card

Click to delete
the current
Record

Use these commands


buttons to cycle through
the customer detail
records.
40

Alex Cooper

Enter the card number in the card number box (this is in format that will
only allow up to 20 digits). Enter the Expiry date and card holders name
in the spaces provided.
2. Entering Customer Details

From the main menu, click View/ Add Customer Records


The following form will be displayed:

Click here to
delete the
current record

Click the command


button to add a new
customer

Use these commands


buttons to cycle through
the customer detail
records.

Enter the customer details in the boxes provided. Select the customers
previously entered credit card number from the drop down menu.

41

Alex Cooper

Important note: Credit Card Details MUST be entered


before you enter the customer details.

3.Creating a Booking
From the main menu, click View/ Add Booking
The following form will be displayed:

To check Room availability, click the Room availability Button. This brings
up a separate window with the available rooms. If you are unsure of the
features available in rooms, click on the features available in rooms
command button. This also brings up a separate window, showing what
features are available for that room number you entered.
As with the Customer Details/ Credit Card Details form, click new
booking command button to create a new booking. Click the rubbish bin
command button to delete the current record. And use the navigation
buttons to navigate through the booking records.
42

Alex Cooper

Check Room Availability (Example)


From the main menu, click on Check Room Availability command button
The following Screen will be displayed:

Enter the arrival date in the DD/MM/YY format


After you have done that, the following screen will be displayed

Again, enter a checkout date in the DD/MM/YY format.


After a few seconds, the rooms available during these dates are shown
on the following page:

43

Alex Cooper

View Reports
On this database, you can view the Cleaners reports where it shows the
various cleaning tasks that the cleaners perform.

Click on the
command button to
view the report

44

Alex Cooper

Produce a customer invoice


From the same menu (reports)
Click on the Invoice command button. This will bring up a dialogue box
asking to input the room number. Enter the room number and the
invoice is shown, (with the option to print by clicking on the
the toolbar)

on

Exiting the Database


Click on the quit command button on the main menu. This saves and
closes the database.

Glossary of Terms
Query
A query is a question that you ask about the data in your table. Reports
from the queries can be produced.
Record
A record is all of the information collected about a specific event, thing,
product, or person, (such as a customer record).
Report
A report is used to show and print selected information from a table

45

Alex Cooper
Conclusion & Future Developments
Conclusion
In conclusion, this database met the user requirements as it was
much easier to use than a paper based system, customer records
can be kept, and achieved (the validation needs to be adjusted
according to the year). Also the possibility of making mistakes with
the invoice has been eliminated as, as query has been produced,
therefore calculations dont have to be done by hand. The likelihood
of a double booking has been eliminated as the database shows
only the vacant rooms on the given day (using the query).
Future Developments
There are several things that could be improved upon to make. This
is due to running out of the given time.
The improvements are:

On the query for the rooms available, at present, there is no


validation to show that the hotel is closed during the specified
date (it is present on the booking form), so adding validation
will show that the hotel is closed during those dates, rather
than the user finding out that it is closed when entering it in
the booking form.
The system for booking conference/ function rooms to be
improved, including creating a separate query to produce a
invoice for the bookings of a conference/ function.
In addition to the current validation, make it so that checkout
date is greater than or equal to the arrival date. This
eliminates errors in booking where the checkout is before the
arrival date.
Another possible component to add to the database is on the
booking form, include a search button, so that the user can
search for a specific booking, rather than using the
navigational buttons which could be time consuming if there
are a lot of bookings.
An improvement for the invoice could be that a unique
number (sequential) for each invoice is created.

46

Appendix A Customer Invoice (from Testing)

Total Price (including


VAT at 17.5%)

Alex Cooper
Appendix B
Additional Designs (added after initial designs to improve usability)
Booking Form
Added Command button to run a query (Room Query) to show what
features are in a room (such as Satellite, Cot etc)
Room Query
Query
Description
As above

Criteria

Fields & Tables to include

RoomNum [Enter Room Number]

Rooms
RoomNum, RoomType, Cot Available
Satellite Available, Internet Available, Price
Per Night, Games Console Available

32

Reports
Produced
No

You might also like