Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

2 0 2 2 , Southern Alberta Institute of Technology 1 Student Name: Weight: 2 0 % Student ID: Marks: / 1 0 0 Assignment:

2022, Southern Alberta Institute of Technology 1
Student Name: Weight: 20%
Student ID: Marks: /100
Assignment: Abstract Classes, Event-Driven Applications
and Exception Handling
Scenario
A local travel agency, Traveless, has hired your company to implement a new flight reservation
management system to improve its productivity and services. After meeting with the agency,
you realize that to tackle this complex request, you must break down the solution to three major
parts:
Front-end GUI
Backend
Functional front end connected to the backend
Equipment and Materials
For this assignment, you will need:
Visual Studio IDE
Supplied data files:
o flights.csv
o airports.csv
Instructions
1. Review the scenario, and then carefully read the Traveless program Details and
Program Guidelines sections of this document.
2. Working outside of class time, complete the submission sections of this assignment.
3. Review the grading criteria for the group submissions.
4. See the course schedule and/or Brightspace for due dates.
Submission
1. Create the code for a program that meets the requirements described bellow.
2. Test your code against the expected output provided.
3. Check your program against the detailed marking criteria at the end of this document.
2022, Southern Alberta Institute of Technology 2
4. Submit the following to Brightspace as a group (Only one copy is required per group,
and any of the group members may submit):
Github URL for your program code (invite your instructor to be a member of the
project repository)
A copy of the test output (.txt file)
Peer Assessment (5%)
Each student must also complete a peer assessment of their group members. Your instructor
will provide further submission details.
2022, Southern Alberta Institute of Technology 3
Program Details
Create a functional, event-driven program that manages the travel agencys data (contained in
the provided data files) and allows a user to do the following:
Find flights:
o A travel agent can find a flight by providing the origin airport, the destination airport
and the day of the week the flight departs.
Make a reservation:
o A travel agent can make a flight reservation for a traveller.
o A reservation code is generated and assigned to the travellers name and
citizenship.
Find reservations:
o A travel agent can find existing flight reservations using the reservation code, and/or
the airline and/or the travellers name.
Modify an existing reservation:
o A travel agent can update the travellers name and citizenship.
o An existing flight reservation can be soft-deleted, marking it as inactive and freeing
up a seat on the flight.
2022, Southern Alberta Institute of Technology 4
Detailed Requirements
When the graphical user interface is launched, the user can choose to either search flights and
make a reservation, or search for and modify a reservation.
Find Flights
The findFlights method receives as its input arguments: the originating airport, the destination
airport, and the day of week. The method returns a List of any matching Flight objects. If no
matches are found, the list control is empty.
Make Reservation
When a travel agent selects a flight from the list, the text fields are populated with the selected
flight code, airline, day, time and cost. The travel agent enters the travellers full name and
citizenship. The flight code, airline, day, time and cost cannot be edited. An error message is
displayed if:
A reservation is to be made but no flight is selected
The name field is empty
The citizenship field is empty
The makeReservation method receives as its input arguments: a Flight object, the travelers
name and citizenship. An exception is thrown if the flight is completely booked, or the flight is
null, or the name is empty/null, or the citizenship is empty/null. If there are no exceptions thrown
a Reservation object is created, saved to the binary file and returned by the method.
Find Reservations
A travel agent can search for an existing reservation that contains the specified reservation
code, and/or airline and/or travellers full name. The list is populated with any reservations that
are found. Each row in the list displays the code of the corresponding reservation record.
The findReservation method receives as its input arguments: reservation code, airline and/or
travelers full name. The method returns a list of matching Reservation objects. If no matches
are found, the list control is empty. If the user doesnt enter any input, then all the reservations
are displayed in the list.
Update Reservation
When a reservation in the list generated by the findReservation method is selected, the
corresponding fields are populated, displaying the following information:
Reservation code
Flight code
Airline name
Cost
2022, Southern Alberta Institute of Technology 5
Name
Citizens

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Advanced Database Systems

Authors: Carlo Zaniolo, Stefano Ceri, Christos Faloutsos, Richard T. Snodgrass, V.S. Subrahmanian, Roberto Zicari

1st Edition

155860443X, 978-1558604438

More Books

Students also viewed these Databases questions

Question

a sin(2x) x Let f(x)=2x+1 In(be)

Answered: 1 week ago