Additional Information

ITSE 1302 FINAL PROJECT Fall 2017
Overview
The owner of a small regional travel services company, Tyler Travel Services, would like you to develop a
travel reservation system that supports their business. They own and operate a private island resort in
the Caribbean. Tyler Travel Services provides the following services:

Service Description
Airline Reservation Airline service to the island is only provided by
Tyler Travel Services. There is only 1 flight daily at
a cost of $199.00 per round trip.
Hotel Reservation Hotel accommodations are provided at $99.00 per
night.
Car Rental Rental cars are available at a cost of $89.00 per
day.
Meal Plan An all inclusive meal plan is offered at a cost of
$50.00 per day
Excursion Package An excursion package is available at a cost of
$150.00 (flat fee)

Additional Information
The airline flight is capable of carrying 64 passengers according to the seating chart below:

1A 1BThis is the aisle1C 1D
2A 2B 2C 2D
3A 3B 3C 3D
4A 4B 4C 5D
5A 5B 5C 5D
6A 6B 6C 6D
7A 7B 7C 7D
8A 8B 8C 8D
9A 9B 9C 9D
10A 10B 10C 10D
11A 11B 11C 11D
12A 12B 12C 12D
13A 13B 13C 13D
14A 14B 14C 14D
15A 15B 15C 15D
16A 16B 16C 16D

ITSE 1302 FINAL PROJECT Fall 2017
Requirements
Your travel reservation system should support the following commands as described below. Each
command may be abbreviated using a single character for ease of entry. These commands should not be
case sensitive.
Figure 1 – Welcome Message and List of Commands
1. (B)ook a reservation – this command is used to make a flight reservation. This can only be done
if the flight is not full (i.e. number of reservations is < 64). When booking a flight the following
information is required:
a. The passenger’s first name and last name.
A seat assignment should automatically be made for the passenger. After a reservation has
been made a confirmation number should automatically be generated and displayed. In
addition, a passenger’s current seat assignment can be changed by selecting the S command
from the main menu. See Figure 2 – Booking a flight below.
ITSE 1302 FINAL PROJECT Fall 2017
Figure 2 – Booking a flight
Figure 3 – Seating chart after booking 2 passengers
Figure 4 – Passenger manifest after booking 2 passengers
ITSE 1302 FINAL PROJECT Fall 2017
2. (C)ancel a reservation – this command is used to cancel a flight reservation. This can only be
done after an initial reservation has been made. When canceling a flight reservation the
following information is required:
a. The passenger’s Confirmation Number.
In addition to canceling the flight reservation, all additional services for the passenger will be
canceled as well. See Figure 5 – Canceling a flight/reservation below.
Figure 5 – Canceling a flight/reservation
After canceling a reservation the change will be reflected in the passenger manifest as well as
the seating chart. See Figure 6 – Passenger manifest after canceling a reservation below.
Figure 6 – Passenger manifest after canceling a reservation
ITSE 1302 FINAL PROJECT Fall 2017
3. (D)isplay seating chart – this command should display the seating chart for the flight. To
indicate a seat is occupied a “(“and “)” should be placed around the seat number (i.e. (12A)). See
Figure 7 – Display seating chart below.
Figure 7 – Display seating chart
4. (V)iew passenger manifest – this command should display the flight’s passenger manifest.
When displaying the passenger manifest the first name and last name of each passenger along
with their seat number, confirmation number, and the total number of passengers should be
displayed. See Figure 8 – View passenger manifest below.
Figure 8 – View passenger manifest
5. (S)elect additional services – this command should allow the user to select additional services.
Additional services can only be ordered after an initial reservation has been made. In order to
add additional services, the following information is required:
ITSE 1302 FINAL PROJECT Fall 2017
a. The Confirmation Number – a confirmation number is a 6 character identifier that
begins with the letters “TT” and is followed by 4 numeric digits between 0 and 9. This
number should have been automatically generated at the time of the initial reservation.
b. After you enter a customer’s confirmation number, you should be presented with a
select additional services command menu (also referred to as a sub-menu in this
document) for selecting the additional services desired.
c. In addition to adding a service, the ability to change or remove a service should also be
provided.
See Figure 9 – Select additional services below.
Figure 9 – Select additional services
d. The following commands are supported in the Select Additional Services sub-menu.
Each command may be abbreviated using a single character for ease of entry. These
commands should not be case sensitive.
i. (S)how current services – this command should display all of the services
associated with a confirmation number along with the cost of each service. The
total cost for all services should also be displayed. See Figure 10 – Show current
services below for the output format.
Figure 10 – Show current services
ITSE 1302 FINAL PROJECT Fall 2017
ii. (C)hange flight seat assignment – this command should enable the user to
change a passenger’s current seat assignment. This can only be done if the flight
is not full (i.e. number of reservation is < 64). To change a seat assignment, the
following information is required:
1. The desired seat – the desired seat is specified as a row number
followed by a seat. Seat can be one of the following letters: A, B, C, or D.
Example: 12A. If the desired seat is already occupied a message should
be displayed and the user should be given the opportunity to enter a
different seat. See Figure 11 – Change flight seat assignment below.
Figure 11 – Change flight seat assignment
iii. (H)otel – this command should allow the user to Add, Change, or Remove a
hotel reservation. When adding or changing a hotel reservation the following
information is required:
1. The number of nights the customer will be staying. See Figure 12 – Add
hotel reservation below.
Figure 12 – Add hotel reservation
iv. (R)ental car – this command should allow the user to Add, Change, or Remove a
rental car reservation. When adding or changing a rental car reservation the
following information is required:
1. The number of days desired for the rental car. See Figure 13 – Add a
rental car below.
ITSE 1302 FINAL PROJECT Fall 2017
Figure 13 – Add a rental car
v. (M)eal plan – this command should allow the user to Add, Change, or Remove
the meal plan. When adding or changing the meal plan the following
information is required:
1. The number of days desired for the meal plan. See Figure 14 – Add the
meal plan below.
Figure 14 – Add the meal plan
vi. (E)xcursion package – this command should allow the user to Add or Remove
the excursion package. See Figure 15 – Add the excursion package below.
Figure 15 – Add the excursion package
vii. (L)ist commands – this command should list the commands used for selecting
additional services (i.e. the commands described in this list). See Figure 16 – List
commands below.
ITSE 1302 FINAL PROJECT Fall 2017
Figure 16 – List commands
viii. (Q)uit – this command should exit the Select Additional Services sub-menu and
return to main menu.
6. (L)ist commands – this command should list the available commands in your travel reservation
system (i.e. the commands described in this list). See Figure 17 – List commands below.
Figure 17 – List commands
7. (Q)uit – this command should exit the travel reservation system.
In addition, when you first run your travel reservation system program, the user should be greeted with
an appropriate welcome message.
ITSE 1302 FINAL PROJECT Fall 2017
Coding Requirements and Guidelines
1. Using the standard procedure for creating a win32 console application, name your project
Last_Name – Travel Reservation System, where Last_Name should be replaced with your actual
last name. Also, name your solution ITSE 1302 Final Project. You should save this on your USB
flash drive or other portable storage device.
2. When implementing your program you can only use those C++ features that were covered this
semester. Using advanced features such Classes, Structures, Dynamic Memory Allocation, etc. is
not permitted.
3. Use comments when appropriate.
4. Remember to indent all program statements when using selection structures (i.e if, if/else,
switch) or repetition structures (i.e. while, for, do/while).
5. Perform data validation when appropriate (i.e. entered seat selections are in the proper format
and is valid (i.e. 12A); entered confirmation numbers are in the proper format and are valid;
etc.).
6. If a command results in displaying information on the computer screen you must first clear the
display screen before you display the information. This can be accomplished using the C++
system function as follows:
system (“cls”);
7. Your main program should consist of a command processor only! After processing a command
an appropriate function should be called that implements that command.
ITSE 1302 FINAL PROJECT Fall 2017
Project Submission and Grading Criteria
Project Submission
When submitting your project for grading, please do the following:
1. Include a printout of ALL of the C++ code used in this project (i.e. all of the code that you wrote).
2. Submit ALL of your project/solution files such that your instructor can build your program (i.e.
compile and link) and run (execute) it. Your instructor will copy your project/solution files to his
or her USB flash drive or other portable storage device. Your project will not be graded without
this!!!
ITSE 1302 FINAL PROJECT Fall 2017
GRADE: _____________
Grading Criteria
Name of Student: ______________________________

Formatting and Style (11%)
Sufficient Commenting?
C++ Standard Variable Names?
Consistent use of Indentation, Braces, and Parentheses?
Program structure (i.e. code reuse, task partitioning, etc.)
Worth
1%
1%
1%
8%
Obtained
_________
_________
_________
_________

Program Operation (4%)

Compilation?
Execution?
2%
2%
_________
_________

Program Specifications (85%)

Main program consist of command processor only?
Perform data validation when appropriate?
User greeted with welcome message?
Screen cleared before displaying information?
User is able to exit from program?
Book a reservation?
Cancel a reservation?
Display seating chart?
View passenger manifest?
List main commands?
Additional services command processor?
Display current services?
Change seating assignment?
Add/Change/Remove Hotel reservation?
Add/Change/Remove Rental car?
Add/Change/Remove Meal plan?
4%
5%
1%
1%
1%
12%
5%
5%
5%
1%
4%
5%
12%
6%
6%
6%
_________
_________
_________
_________
_________
_________
_________
_________
_________
_________
_________
_________
_________
_________
_________
_________

ITSE 1302 FINAL PROJECT Fall 2017
GRADE: _____________
Add /Remove Excursion package? 5% _________
List additional services commands? 1% _________

Leave a Reply

Your email address will not be published. Required fields are marked *