desperate need in help on how to do this!
To design a class model to represent a simple air traffic controller scenario.
Itz not necessary to consider any specific implementation details
Air traffic control system:
which organises and regulates the process of landing aircraft at an airport. The system has a holding pattern, where aircraft 1st appear when they intend to land. From the holding pattern, aircraft can be instructed to move to the final approach corridor, where they will then land. A number of instructions can be issued to aircraft:
· promote from holding pattern to final approach
· demote from final approach to holding pattern
· emergency promote to front of file approach
· (from file approach) Abort landing, return to back of final approach
· redirect to other airport
Time is stimulated through a ‘time ticks’ in which moves are made. Only one instruction may be issued to each aircraft per time ’tick’. Instructions are carried out immediately.
The holding pattern and final; approach corridor can only support a certain number of aircraft before the flight lanes become overcrowded and collisions are certain. Furthermore, each aircraft has FINITE AMOUNT OF FUEL-THEY MUST HAVE ENOUGH FUEL TO MOVE FROMONE STAGE OF the traffic control system to the other to land safely, otherwise they will crash. There is also an upper limit placed on the amount of fuel a plane can carry before they can safely land.
An Aircraft:
for the purpose of traffic control, an aircraft can be considered to require only a flight number (QF123) and a fuel amount. Other attributes may be added as u see fit.
The holding pattern:
is an area where the aircraft waiting to land can circle until there number is called for final approach. There is no specific rule for where an aircraft may join the holding pattern, however under normal circumstances they may only be promoted to final approach at a particular position.
In emergency situation, it should be possible to specify which plane to take out of the holding pattern. Eg: if a plane is low on fuel, it should be possible to issue a special instruction to allow it to be taken out of the queue.
The final approach corridor:
A simple queue where under normal conditions, aircraft enter at the tail and are taken off the head for landing on the runaway. However, under emergency circumstances, an aircraft may be added to the head of the final approach corridor for immediate landing.
“Gaps can appear in the approach corridor if no plane has been instructed to occupy a place. Conversely, if 2 aircraft are instructed to enter the approach corridor from the same end in the one time tick, a collision will occur.
When an aircraft reaches the end of the final approach corridor, it can be assumed that it will attempt a landing on the runaway.
Fuel, weather, emergency, and disasters:
Under normal circumstanced, each aircraft will use one unit of fuel per time tick. However, changing weather conditions may influence fuel consumption and allowable behaviour. For example:
*if there is windshear, aircraft on final approach may use more fuel than normal
*if there is snow, the runaway will close and all planes must be either moved to the holding pattern or diverted to other airports.
*certain weather conditions may also increase the risk of accidents while landing.
HINTS:
*make use of status variables to hold information like whether an aircraft has already been issued an instruction this time tick ,and what the weather, runaway status etc. are.
*use an exception to model game-ending disasters(such as plane crashes)
*separate your “controller class from the user interface of the program. In the design document, there is no need for a driver class to be shown
*Design ur data structure classes(holding pattern and final approach) to work as simple data holders. Have a separate controller class which is the one that takes instruction and manipulates the structures in the appropriate manner, while ensuring rules are followed and status information is updated.