Air Traffic Control

CLOSED
Bids
9
Avg Bid (USD)
$199
Project Budget (USD)
$30 - $250

Project Description:
Every day, according to the National Air Traffic Controllers Associations (www.natca.org/mediacenter/bythenumbers.msp), there are more than 87,000 flights in the United States, including commercial flights, cargo flights, and so on, and the long term trend is that the air traffic activity will increase along with the population. As air traffic grows, so do the challenges to air traffic controllers, who monitor the flights and provide instruction to the pilots to ensure safety in the skies.
In this exercise, you will create a Flight class that could be used in a simple air-traffic-control simulator. The application’s main function will act as air traffic control. Visit sites such as
www.howstuffworks.com/air-traffic-contorl.htm
to research how the air-traffic-control system works. Then identify some key attributes of a Flight in an air-traffic-control system. Think about the different states a plane could be in from the time it’s parked at an airport gate until it arrives at its destination – parked, taxiing, waiting to take off, taking off, climbing and so on. Use a FlightStatus enumeration to represent these states. The attributes might include the plane’s make and model, current air speed, current altitude, direction, carrier, departure time, estimated arrival time, origin and destination. The origin and destination should be specified using standard three-letter airport codes, such as BOS for Boston and LAX for Los Angeles (these codes are available at world-airport-codes.com). Provide set and get functions to manipulate these any other attributes you identify. Next, identify the class’s behaviors and implement them as functions of the class. Include behaviors such as changeAltitude, reduceSpeed and beginLandingApproach. The Flight constructor should initialize a Flight’s attributes. You should also provide a toString function that returns a string representation of a Flight’s current status (e.g., parked at the gate, taxiing, taking off, changing altitude). This string should include of the object’s instance-variable values.
When the application executes, main will display the message “Air Traffic Control Simulator”, then will create and interact with three Flight objects representing planes that are currently flying or preparing to fly. For simplicity, the Flight’s confirmation of each action will be a message displayed on the screen when the appropriate function is called on the object. For Example, if you call a flight’s changeAltitude function, the method should:
a) Display a message containing the airline, flight number, “changing altitude”, the current altitude and the new altitude.
b) Change the state of status data member to CHANGE_ALTITUDE.
c) Change the value of the newAltitude data member.
In main, create and initialize three Flight objects that are in different states – for example, one could be at the gate, one could be preparing for takeoff and one could be preparing for landing. The main function should send message to (invoke function on) the Flight objects. As a Flight object receives each message, it should display a confirmation message from the function being called – such as “[Airline name] [Flight number] changing altitude from 20000 to 25000 feet.” The function should also update the appropriate state information in the Flight object. For example, if Air Traffic Control send a message like “[Airline] [Flight number] descend to 12000 feet,” the program should execute a function call like flight1.changeAltitude(12000), which would display a confirmation message and would set data member newAltitude to 12000. [Note: Assume the Flight’s currentAltitude data member is being set automatically by the plane’s altimeter.]

Skills required:
Java
About the employer:
Verified
Public Clarification Board
Bids are hidden by the project creator. Log in as the employer to view bids or to bid on this project.
You will not be able to bid on this project if you are not qualified in one of the job categories. To see your qualifications click here.


$ 150
in 4 days
$ 250
in 5 days
$ 150
in 4 days
Hire AmberSerpent
$ 150
in 3 days
$ 500
in 7 days
$ 50
in 5 days
$ 250
in 29 days
Hire atifoxon
$ 200
in 3 days
Hire jasqwerty
$ 95
in 2 days