Question
I greatly need help fo my java assignment, deadline to this is on November 8, 2018. Sydney Cruise Lines has several ships and a variety
I greatly need help fo my java assignment, deadline to this is on November 8, 2018.
Sydney Cruise Lines has several ships and a variety of cruise itineraries, each involving several ports-of-call. The company wants to maintain information on the sailors who currently work on each of its ships. It also wants to keep track of both its past and future cruises and of the passengers who sailed on the former and are booked on the latter.
Each ship has at least one and, of course, normally many sailors on it. The unique identifier of each ship is its ship number. Other ship attributes include ship name, weight, year built, and passenger capacity. Each sailor has a unique sailor identification number, as well as a name, date-of-birth, and nationality. Some of the sailors are in supervisory positions, supervising several other sailors. Each sailor reports to just one supervisor. A cruise is identified by a unique cruise serial number.
Other cruise descriptors include a sailing date, a return date, and a departure port (which is also the cruises ending point.) Clearly, a cruise involves exactly one ship and over time a ship sails on many cruises. Each cruise stops at one or usually several ports-of-call, each of which is normally host to many cruises, over time.
In addition, the company wants to maintain information about ports that it has not as yet used in its cruises but may use in the future. A port is identified by its name and the country that it is in. Other information about a port includes its population, whether a passport is required for the passengers to disembark there, and its current docking fee, which is assumed to be the same for all ships.
A cruise typically has many passengers on it. Passenger information includes a unique passenger number, name, home address, nationality, date-of-birth and MoneySpentOnCruise (calculated by totalling amount of money spent by the passenger on-board cruise). Hoping for return business, the company wants to keep track of passengers that may have sailed on several of its cruises (and/or may be booked for a future cruise.) For a person to be of interest to the company, he or she must have sailed on or be booked on at least one of the companys cruises. The company wants to keep track of how much money each passenger paid for (or will pay for) each of their cruises, as well as their satisfaction rating of the cruise, if it has been completed.
Tasks
Design a complete object-oriented system for cruise management based on the above specification. Your system must in the least provide the following features:
1. Create a cruise (with ships, sailors, ports)
2. Add passengers to a cruise
3. Provide reports on:
a. Revenue generated from the cruise passengers by nationality and age
b. Sailors that worked on a cruise and their supervisors
c. List of passengers sorted by MoneySpentOnCruise
d. Cruise evaluation report by passengers. (assume each passenger completes a 6-10 question survey and generate/store random responses)
Note: Use CSV files for the tables and netbeans for the IDE
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started