Professional Documents
Culture Documents
CURRENT SYSTEM
The name of the company that I am discussing about its system is Raffles Marina.
All the system running in various departments are computerized except that of the Front
Office which needs to do some revamping in its system. Everyday the counter will handle
the checking in and out of the guests and that includes issuing of statement account to the
guests, doing daily room sales report and making reservation of rooms for the guests.
The major disadvantage about their system is the room reservation. Currently, the
receptionists are using the paper room reservation chart to take down room reservations
for the guest. For example, when the guest wants to book a room, the receptionist will
shade the respective column in pencil indicating that the room has been blocked for the
guest on which date and departing on which date. This is extremely inconvenient and
prone to errors.
Firstly, all the bookings are marked in pencils, they could be accidentally erased by other
staffs. Secondly, the booking might be done incorrectly, for example the room must be
blocked on the 11th however the staff might accidentally mark it on the 12th , problems
will arise when all the rooms are fully booked on the 11th as the guest will turn up on the
11th for his room. The reservation chart will look untidy and unclear for reference as to
which rooms are available on which dates with all the shadings here and there the the
chances of rooms overbooked are high. When the guest wants to cancel the room
booking, the staff will have to erase the room blocked for him, this is extremely not
workable as constant erasure will cause the paper to tear.
Right now, we will have to go into how we can improve the room reservation
system. Basically, the company has only 20 standard rooms as it is a club. We can
convert the chart into a computerized system so that it is more readable, tidier, easier to
do the erasure of the booking and the chances of rooms being overbooked are minimal or
even none. The computerized room reservation system will proved to be efficient when
checking for the availability of rooms for the guest. At one glance, the staffs will be clear
as to which rooms are available on which dates and just by choosing the Search List
options, the user can view the list of the names of the guests and other details of the
guests. The program consist of 5modules, namely Add, Search, List, Delete and Quit.
The user will select the respective choice for the input of the data or choose Quit to exit
the program.
The Add module in the program is used to enter a new booking from the guest. When the
Add module is selected, the screen under the add module will prompt the users to enter
the check-in, departure dates and the number of rooms the guest wants , upon pressing
the enter key, the system will check for the availability of rooms in the requested range of
dates and whether the range of dates has got the number of rooms the guest wants. When
there are rooms available, the system will pop up a message to confirm with the user
whether the room will be blocked. If it is confirmed, then enter ‘Y’ othewise enter ‘N’. If
‘Y’ is entered, the system will prompt the user to enter the name if the guest, passport
number and the flight details which will be further explained later as to what are the
things to enter in the flight details. If the user chooses ‘N’, then the user will have to enter
the particulars again. After all particulars have been entered, then upon hitting the Enter
key, a message pops up again to ask the user whether to save the entry for the guest’s
particulars. If entered ‘Y’, the entry is saved, else if entered ‘N’, the system will go back
to the main menu where the user can choose other options. The room is automatically
blocked for the guest according to the range of dates entered by shading the rows and
columns, the system will display a room number at the bottom of the module. The range
of room numbers is from 1 – 20.
The Search module is for editing purposes like changing of the particulars of the guests
and also for the reference to the staffs as they would like to check for the flight details of
the guests. When the search module is selected, the screen will prompt the user to enter
the name of the guest, the system will locate that booking. After the booking is located,
the system will pop up a message to ask the user whether to change the information. If
enter ‘Y’, the user will have to reenter the particulars. If it is entered ‘N’, then the system
will return to the main menu.
After reentering all the particulars of the guest, the screen will pop up a message to
confirm whether to replace the information. If entered ‘Y’, the information is replaced
and saved. If entered ‘N’, the system will return to the main menu.
The List module is helpful for the user if he/she wants to view the names of guests, the
check-in and out dates. When the List module is selected, the screen will show a list of
the above mentioned data. The user can hit the Enter key if he wants to exit to the main
menu.
The Delete module is meant for any cancellation of bookings. When the delete module is
selected, the system will prompt the user to enter the name of the guest. After the booking
is located, the system will pop up a message to confirm with the user whether he wants to
delete the booking. If it is confirmed to delete the booking, the user will enter ‘Y’
otherwise enter ‘N’. If the latter is chosen, it will return to the main menu for other
options.
1. Dates
✓ The range of dates to be entered is from 01 – 31, the range of months to be
entered is from 01 – 12 and the range of years to be entered is from 2000 –
2500, the format entry is dd/mm/yyyy, e.g.01/02/2000. The entry for the
year is 4 characters.
✓ If the entry does not fulfil the above mentioned, then error messages will pop
up:
I. “Enter day range from 1 to 31 only.”
II. “Enter month range from 1 to 12 only.”
III. “Invalid day entered for the month.”
IV. “Enter year range from 2000 – 2500.”
2. Choices
✓ The acceptable entry for the choices is from 1 – 5. If entry is not within the
range, then error message pops up “Not within the range! Please enter
again.”
4. Passport number
✓ The maximum number of characters to be entered is 15, therefore if the user
enters more than 15 characters, then the system will show error message
“Exceeds maximum characters.”
✓ The entry for this data item can be anything.
5. Time
✓ The format entry for the time is from 0000 – 2400 and the number of
characters to be entered is 4.
✓ If the entry does not fulfil the format, then display error message “ Invalid
entry.”
✓ As the entry for the time involves only numbers, therefore if the user enters
any letters then, error message pops up “Accept only numbers!”
6. Flight number
✓ The entry for the flight number can be anything and the maximum number
of characters to be entered is 6.
✓ If the user’s entry exceeds more than 6 characters, error message will pop
up “Exceeds maximum characters.”
7. Number of rooms
✓ The acceptable range of entry for this data item is from 1 – 20. The number
of characters to be entered is 2.
✓ If the entry is not within the range, error message “Invalid entry!” will be
displayed.
❖ Search module
➢ Change the current data (Y/N)? _
➢ Replace the data (Y/N)? _
➢ When the name entered is not found in the file, the system will show error
messages “Record does not exist” followed by “Press any key to
proceed”
❖ List module
➢ After viewing the information under the List module, the system will have
the message “Press any key to proceed.”
❖ Delete module
➢ Delete the booking (Y/N)? _
➢ As keying in the name of the guest retrieves the record to be deleted,
therefore if the record is not found in the file, then error message pops up
“Record does not exist.”
MENU
New Reservation
1. Add
2. Search
3. List Check-in-date(dd/mm/yyyy): 99/99/9999
4. Delete Check-out-date(dd/mm/yyyy): 99/99/9999
5. Quit Number of rooms(1-20): 99
Test case :1
Objectives : To check for the correct entry of the options in the main menu.
Test Data : Enter the number 6 to test.
Expected Test Result : If the number 6 is entered, as it is not within the range of 1 to 5,
therefore the screen will display error message “Not within the
range! Pls. enter again.”
Actual Test Result : As below.
Conclusion : Succeeded. Error message was displayed when the test data was
entered.
Test case :2
Objectives : To check that the range of entry for the number of rooms is from
1 to 20.
Test Data : 21
Expected Test Result : To show the error message “Invalid entry!”
Actual Test Result : As below.
Conclusion : Succeeded. Displays error message when the test data is entered.
Test case : 3
Objectives : To check that only alphabets are accepted when entering the
name of the guest.
Test Data : 20
Expected Test Result : To show the error message “Accept only letters of alphabets ”
Actual Test Result : As shown below.
Conclusion : Succeeded. Error message was displayed on the screen.
Test case : 4
Objectives : To check that the number of characters entered for the name
does not exceed 20.
Test Data : Using 21 ‘A’s.
Expected Test Result : The screen should show error message “Exceeds maximum
characters!”
Actual Test Result : As shown below.
Conclusion : Succeeded. The error message was shown on the screen.
Test case : 5
Objectives : To check that the number of characters entered for the Passport
number does not exceed 15.
Test Data : 16 characters. 8 ‘B’s and 8 ‘9’s.
Expected Test Result : The screen should show error message “Exceeds maximum
characters!”
Actual Test Result : As shown below
Conclusion : Succeeded. The error message was displayed on the screen as
expected.
Test case : 6
Objectives : To check that the number of characters entered for the flight
number does not exceed 6.
Test Data : 3 ‘A’s and 4 ‘1’s.
Expected Test Result : The screen should show the error message “Exceeds maximum
characters!” when the test data is entered.
Actual Test Result : As shown below.
Conclusion : Succeeded. The error message was displayed on the screen as
expected.
Test case : 7
Objectives : To check that only numbers are accepted for time.
Test Data : kkkk.
Expected Test Result : The screen should show the error message “Accept only
numbers!” when the test data is entered.
Actual Test Result : As shown below.
Conclusion : Succeeded. The error message was displayed on the screen as
expected.
Test case : 8
Objectives : To check that the number of characters entered for time is only 4
characters, no more than 4 or less than 4 characters.
Test Data : 22000.
Expected Test Result : The screen should show the error message “Invalid entry!” when
the test data is entered.
Actual Test Result : As shown below.
Conclusion : Succeeded. The error message was displayed on the screen as
expected.
Test case : 9
Objectives : To check that the range of entry for days is from 1 to 31 only.
Test Data : 32.
Expected Test Result : The screen should show the error message “Enter date range
from 1 to 31 only” when the test data is entered.
Actual Test Result : As shown below.
Conclusion : Succeeded. The error message was displayed on the screen as
expected.
Test case : 10
Objectives : To check that the range of entry for month is from 1 to 12 only.
Test Data : 13.
Expected Test Result : The screen should show the error message “Enter month range
from 1 to 12 only” when the test data is entered.
Actual Test Result : As shown below.
Conclusion : Succeeded. The error message was displayed on the screen as
expected.
Test case : 11
Objectives : To check that the range of entry for year is from 2000 to 2500.
Test Data : 2501.
Expected Test Result : The screen should show the error message “Enter year range
from 2000 to 2500 only” when the test data is entered.
Actual Test Result : As shown below.
Conclusion : Succeeded. The error message was displayed on the screen as
expected.
Test case : 12
Objectives : To check for the validity of the entry of days in a particular
month.
Test Data : 29.
Expected Test Result : The screen should show the error message “Invalid day entered
for the month” when the test data is entered.
Actual Test Result : As shown below.
Conclusion : Succeeded. The error message was displayed on the screen as
expected.
Test case : 13
Objectives : To ensure that the program prompt the user when the name
keyed in is not found in the file.
Test Data : KKK.
Expected Test Result : The screen should show the message “Record does not exist!”
when the test data is entered.
Actual Test Result : As shown below.
Conclusion : Succeeded. The message was displayed on the screen as
expected.
Test case : 14
Objectives : To check that when the user enters 1 in the main menu, it goes
to the ‘New Reservation’ screen .
Test Data : 1.
Expected Test Result : The screen should show the ‘New Reservation’ screen with all
the data items on the screen.
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 15
Objectives : To check that when the user enters 2 in the main menu, it goes
to the ‘Edit Reservation’ screen .
Test Data : 2.
Expected Test Result : The screen should show the ‘Edit Reservation’ screen with all
the data items on the screen.
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 16
Objectives : To check that when the user enters 3 in the main menu, it goes
to the ‘Listing of Guests’ names’ screen .
Test Data : 3.
Expected Test Result : The screen should show the ‘Listing of Guests’ names’ screen.
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 17
Objectives : To check that when the user enters 4 in the main menu, it goes
to the ‘Deleting Reservation’ screen .
Test Data : 4.
Expected Test Result : The screen should show the ‘Deleting Reservation’ screen.
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 18
Objectives : To check that the program displays the details of a record when
it is found under the Search screen.
Test Data : CANDY CHEE.
Expected Test Result : The screen should show the details of all data that was entered
and saved in the Add screen and displays it in the Search screen
when the test data is entered
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 19
Objectives : To check that the program prompts the user to press any key to
proceed under the List screen.
Test Data : 3.
Expected Test Result : The screen should show the message “Press any key to
proceed...”
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 20
Objectives : In the Add module, to check that after entering the Check-in and
out dates and the number of rooms, the program will prompt the
user of the confirmation to reserve the room.
Test Data : 03/03/2000, 04/03/2000 and 2.
Expected Test Result : The screen should show the message “Confirm to reserve the
room(Y/N)? _”
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 21
Objectives : In the Add module, to check that after the entry of all the data ,
the program will prompt the user whether to save the data
Test Data : 03/03/2000, 04/03/2000, 2, CANDY CHEE, 8106899B, 123456,
0330 and 0530.
Expected Test Result : The screen should show the message “Save the data(Y/N)? _”
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 22
Objectives : In the Search module, to check that the program prompts the
user whether to make any changes to the data when it is
displayed on the screen
Test Data : CANDY CHEE
Expected Test Result : The screen should show the message “Change the current
data(Y/N)?_”
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 23
Objectives : In the Search module, to check that the program prompts the
user whether to replace the data after amendments
Test Data :
Expected Test Result : The screen should show the message “Replace the data(Y/N)?_”
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 24
Objectives : In the Delete module, to check that when the target record is
found, the program will prompt the user whether to delete the
record.
Test Data : CANDY CHEE
Expected Test Result : The screen should show the message “Delete the
booking(Y/N)?_”
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 25
Objectives : To check that the cursor moves to the ‘Name of guest’ when
option 1 is chosen..
Test Data : 1
Expected Test Result : The cursor under the Search module will move to the ‘Name of
guest ‘when 1 is chosen
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 26
Objectives : To check that the cursor moves to the ‘Passport number’ when
option 2 is chosen..
Test Data : 2
Expected Test Result : The cursor under the Search module will move to the ‘Passport
number ‘when 2 is chosen
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 27
Objectives : To check that the cursor moves to the ‘Flight number’ when
option 3 is chosen..
Test Data : 3
Expected Test Result : The cursor under the Search module will move to the ‘Flight
number ‘when 3 is chosen
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 28
Objectives : To check that the cursor moves to the ‘Time of flight’ when
option 4 is chosen..
Test Data : 4
Expected Test Result : The cursor under the Search module will move to the ‘Time of
flight’ when 4 is chosen
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 29
Objectives : To check that the cursor moves to the ‘Estimated time arrival’
when option 5 is chosen..
Test Data : 5
Expected Test Result : The cursor under the Search module will move to the ‘Estimated
time arrival’ when 5 is chosen
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Test case : 30
Objectives : To check that the cursor moves to the ‘Number of rooms’ when
option 6 is chosen..
Test Data : 6
Expected Test Result : The cursor under the Search module will move to the ‘Number
of rooms’ when 6 is chosen
Actual Test Result : As shown below.
Conclusion : Succeeded. The screen has displayed the expected result.
Program Listing
Hardware Configuration:
Normal Pentium machine with the following requirements:
• Minimum 4 MB RAM
• Minimum 10MB of hard disk free space
• Connected Dot Matrix printer
Software Configuration:
• Windows 98
• Borland C++ version 3.0 (DOS)
The captured screen shown above shows the menu, which displays 5 options for the user
to choose from. They are the Add, Search, List, Delete and Quit.
Add option allows the user to add in a new reservation, to choose this option, type 1.
Search option allows the user to search a particular booking through name and then to
edit the booking if necessary, to choose this option, type 2.
List option allows the user to view the names, passport number and the check-in and out
dates of all guests, to choose this option, type 3.
Delete option allows the user to delete any cancellation of bookings or any wrong
bookings done by the staffs, to choose this option, type 4.
If the user would like to exit out of the program execution, choose 5 to exit out. Bear in
mind that the acceptable range of options that the user can choose from is 1 – 5,
otherwise the screen will display error message. If the user should make any mistake
when making the selection, just press on any key to reenter the choice.
Upon pressing 1 in the main menu, the user will come to the screen as shown above. The
user is required to enter the data for the data items shown on the screen. When the data
for the first three data items is entered, upon pressing enter, the screen will show a
message as shown on the next page. The acceptable range of entry for the date is from 1
to 31, 1 to 12 for the month and 2000 to 2500 for the year, if numbers entered are not
within the range, error messages will be displayed respectively. Bear in mind that only
numbers are accepted in the entry of the check-in and check-out dates.
The same goes for the entry of the number of rooms, only numbers are acceptable and the
range of entry for it is from 1 to 20. If the number entered is not within the range, then
error message will be displayed on the screen.
If ‘N’ is entered, the user will reenter again. If the user enters ‘Y’, it means that the
rooms have been blocked and the user is required to enter the particular of the guest. The
first one to be entered is the name of the guest, this program only allows maximum 20
characters to be entered, if the entry exceeds 20 characters, then the screen will display
error message, just press on any key to reenter.
The second data to be entered is the passport number of the guest, the entry of this data
item is alphanumeric which means that the user can enter anything, however the user is
restricted to enter maximum 15 characters only, if the entry exceeds 15 characters, the
screen will display error message*.
The third one will be the flight number, the entry for the flight number can be anything
but it is restricted to maximum 6 characters. If the entry exceeds 6 characters, then error
message will be displayed on the screen*
The entry for the fourth and the fifth data items is the time, the time mode is based on
2400hrs. The range of numbers to be entered is from 0000 – 2400. The number of
characters to be entered is minimum and maximum 4. If the user enters more than or less
than 4 characters, then error message will show*. Take note that the entry for the time is
only numbers, therefore if any letters or symbols are entered, error message will show *.
After all data have been entered, the program will prompt the user whether to save the
data (as shown below). If enter ‘Y’, then the data are saved, if enter ‘N’, then the data are
not saved and the screen will go back to the main menu.
When the user enters 2 in the main menu, then the user will come to the screen as shown
above. This is the screen where the user can do the editing part.
But firstly, to retrieve the desired record from the file, the user will have to enter the
name of the guest to retrieve the record. After pressing enter, the screen will display the
record as shown on the next page and the user will be prompted whether to change the
data.
If the user enters ‘N’, the screen will go back to the main menu. If ‘Y’ is entered, then the
screen will further display some options as on the next page. These options are actually
for the user to choose whether which part of the record does he want to edit. Choose 1 if
he wants to edit the name, choose 2 if he wants to edit the passport number, choose 3 if to
edit the flight number, choose 4 if to edit the time of flight, choose 5 if to edit the arrival
time, choose 6 to edit the number of rooms or choose 0 if he does not want to edit
anything. The range of entry is from 1 to 6 and 0 to quit, if the entry is not within the
range, the screen will display error message*.
After editing the necessary information, the user can choose 0 to exit out of the editing
and the program will prompt the user whether to replace the current data. (as shown
below)
If ‘Y’ is entered, the data is replaced. If ‘N’ is entered, the screen will go back to the main
menu, no data is replaced.
When the user enters 3 in the main menu, he will come to the listing screen which enable
him to view all the names of the guests in the file and their passport number check-in and
out dates. The listing screen is shown below.
After viewing the data of the desired record, the program will prompt the user to press on
any key to proceed, that is to return to the main menu.
When the user enters 4 in the main menu, he will go to the screen as shown below.
To retrieve the record to be deleted, the user will have to key in the name of the guest.
After keying in, the desired record will be displayed on the screen as shown below.
The user will be prompted as to whether he wants to delete the record. If the user enters
‘N’, the screen will go back to the main menu and no record or data is deleted. But if the
user enters ‘Y’, them the record is deleted from the file.
* In any case when the user make a mistake in choosing the options or enters data which
are invalid, the user can just press on any key to reenter.
In the program, the format for the time entry is based on 2400 hours mode and the
standard entry for the time is only 4 characters, thus no confusion when the user enters
more than or less than 4 numbers as error message will pop up to tell the user that the
standard entry for time consist of 4 numbers only. This is to prevent any acceptance of
ridiculous entry by the user.
To improve the efficiency of the user at work, the user can actually check the check-in
and out dates of all guests under the listing menu. Just by choosing the list option, the
screen will show the information as to which guest will be checking in on which date and
checking out on which date etc.
I have not done the validation check for the entry of the time. That is the standard entry
range of time based on the 2400 hour mode is from 0000 – 2400. However, the user can
enter any number that he wants, so long as it is 4 numbers. This is not logical as how can
the entry of time be 2401 or 2500.
A calculation function can also be added to the program. It is to keep track of the number
of days the guest is staying. The program will do the totaling up of the amount that the
guest has to pay based on the number of days that the program has kept tracked of. Then
a computerized billing invoice is issued to the guest upon check-out.