Design of Formal Air Traffic Control System Through Uml: Shafeeq Ahmad
Design of Formal Air Traffic Control System Through Uml: Shafeeq Ahmad
Shafeeq Ahmad
Azad Institute of Engineering & Technology, INDIA
[email protected]
Vipin Saxena
Dr. B. R. Ambedkar University, INDIA
[email protected]
ABSTRACT
In recent years, UML has become most popular among modeling languages and is
commonly used to drive the design and implementation of system and software
architectures. UML models help to achieve functional and non-functional requirements
of system. Furthermore, UML tools have enabled the creation of source code from
UML diagrams in order to initiate the programming phase of building software.
However, due to lack of clearly defined semantics, it has been challenging to create
source code from UML models. The main objective of the paper is to model Air Traffic
Control system by the use of UML. An activity of Air Traffic Control i.e. departure
process which only covers part of the Air Traffic Control functionality has been
considered in this paper. The UML models created using formal naming semantics help
them to convert into source code and also help to achieve functional and non-functional
requirements. The complexity of Air Traffic Control System is also measured which
makes the design simple and visibly understandable.
Keywords: UML model, formal semantics, source code, Air Traffic Control.
2 RELATED WORK
This diagram consists of two actors namely 4.3 UML Class Diagram
controller and aircraft. The use-cases consists Class diagram identifies & describes the static
represent the functionality of both actors. But this structure of the system i.e. the system architecture.
use case diagram provides an informal viewpoint as
This diagram gives a general view of the classes 4.4 Sequence Diagram
involved during departure namely the controller and A sequence diagram is an interaction diagram that
the aircraft class. In this diagram only the name of details how operations are carried out, what
the attributes and the operations of the classes have messages are sent and when. Sequence diagrams
been specified. Even the attribute type or the return have a temporal focus so they are organized
type of the methods hasn't been described. These according to time which means what happens when.
loose semantics make this model impossible to The informal sequence diagram of departure
compile and execute. Now let us examine a formal activity of a flight is shown below in Fig 8. It simply
class diagram of departure activity of a flight shown gives a sequence of messages between the controller
below in Fig.7
Gate_controller
gatename : Variant
gateassignment()
makegateavailable()
pushbackclearance() : Boolean
+gate clearance granting 1
controls
+assigned aircraft 0..*
Aircraft
airlinename : String
aircraftnumber : Variant
airplanetype : String
Ground_controller position : Variant
location : Variant altitude : Integer
area : Integer departuretime : Date Local_controller
inactiverunwayname : String departureairport : String sector : String
monitoringdevice : String speed : Integer location : Variant
distance : Integer activerunwayname : String
holdingareas() route : Variant radarcoverage : Long
+taxi clearance granting
controlgroundtraffic() callsign : String +assigned aircraft
1 controls trajeventlist : Variant 0..*
protectcriticalareas() controls givinginformation() : Variant
departurequeuesequencing() 0..* latitude : Integer 1 clearance()
+assigned aircraft longitude : Integer +departure clearance granting
handleemergencies() selectfromqueue()
taxiclearance() : Boolean handleemergencies()
depart() sectorization()
taxiing(taxi-out-plan, assigned-runway) runwayassignment()
+assigned aircraft pushback()
0..* monitorrunwayincursions()
getdeparturetime() holdingpointsequencing()
assignflightcreww()
maneuvering()
delayflight(number of minutes) consists of
controls setcallsign(string callsign value)
1
getcallsign(string callsignvalue) Clearance_delivery_controller
addtrajevent()
1 aircraft : String
+ramp clearance granting clearancelimit : Long
Ramp_controller departurefrequency : Integer
ramparea : Long routeassigned : Variant
altitudeassigned : Double
controlrampoperations()
sequencingatramp() routechecking()
aircraftservicing() finaldepartureclearance() : Boolean
aircraftloading()
rampclearance() : Boolean