CMP5368 OOP Checklist - Flight Booking System Development in Java
CMP5368 OOP Checklist - Flight Booking System Development in Java
Students are required to complete this software implementation checklist for their Flight Booking
System developed in java. You need to select only the features that were implemented in your code.
You can select all/some features from any marking range as long as they have been implemented in
the code submitted for this assessment. For example, you can select all/some features from the
marking range 40%-49% and all/some features under the range 70%-79% etc. This implementation
checklist should be submitted with the PowerPoint documentation for this coursework.
Important notice: This checklist will assist the tutors when marking your code, hence, you should only
select the feature requirements that are implemented in your code. Even if some features are not
working correctly, you can still select them as long as there is evidence in your code showing the
implementation attempt. However, it is not acceptable for a student to claim the implementation of
features that were not attempted/implemented in the game. False claims are a clear indication that the
student does not understand the submitted code, hence, the submission will be investigated further for
plagiarism, and the tutor marking the assessment may invite the student to explain all/parts of the
submitted code.
Save the status of the system to the backend storage (i.e. text file storage) ☐
when the system is closed. The flight booking data should be stored in three
different files (flights.txt, customers.txt and bookings.txt). A sample format to
save the different properties for each object is given in the Sample
Prototype Application section above. When the system starts it should load
the status of the booking system from the text files to the memory.
Add an email property to the customer object and make the appropriate ☐
changes to the program to ensure that this information can be captured
when a new customer is created. Also ensure that this information will be
stored to and correctly loaded from the file storage.
Implement Unit Tests to validate and demonstrate that the above changes ☐
made to the flight and customer classes work as expected.
Extend the functionality of the flight system to allow for storing data to the file ☐
storage after the execution of commands that change the state of the system
(e.g. “addFlight”, “updateBooking”). If the system fails to store the data on
the file storage due to an error (e.g. file is already in used or corrupted), the
program must inform the user and rollback any changes made to the system
prior to the error. Hint: You can change the file permission to “read-only” in
order to test this functionality.
List only flights that are in the future and have not departed. To implement ☐
this functionality you need to use the systemDate to indicate whether a flight
has departed and a booking is completed. You have the flexibility to decide
on how to complete the implementation of this functionality.