Julien has posted 1 posts at DZone. View Full User Profile

Swiss Air Traffic Control Software Takes Off on the NetBeans Platform

  • submit to reddit

My name is Julien Piaser, I am a software engineer working for Skyguide, the Swiss air traffic control company. I started my career by founding my own company dealing with e-commerce and B-to-B solutions. I then developed software in the oil trading industry. I'm a private pilot during my spare time and then joined Skyguide to align my passion with my know-how. Since then, I've been involved in a Java, NetBeans, Scrum and XP environment at Skyguide and have been the technical leader and part of the development team of Crystal.

Crystal is a NetBeans Platform application that delivers traffic information for the coming minutes/hours. (Crystal helps you to see the future, as a crystal ball, that was the basic idea of the name.) The airspace is divided in several blocks called sectors, each of which is controlled by a pair of controllers. If traffic is low, individual sectors can be combined together - the chosen combination is called a sectorisation. The goal of Crystal is to help the coordinator (supervisor) of the control centre to decide which sectorisation will be most appropriate during different periods of the day. It is also useful to decide how many controllers will be needed at different periods of the day.

The graphs are divided between lower and upper sectors (green and blue), distinguishes confirmed traffic (dark colour, airborne) and non-confirmed (light contrast), provides a "cheaters" detection tool (otherwise called "intruders") and a complexity curve (how difficult it will be to deal with the kind of traffic that is expected).

The following information can be identified via Crystal:

  • Early warning of current sectorization and short term detail per sector
  • Sectorization change simulation
  • View of specific individual sectors
  • Comparison of future eligible sectorizations with the same number of sectors
  • A tool to help the user build custom flows
  • Visualisation of the flows
  • The flight list of a specific graph

The NetBeans Platform provides the per-module design of Crystal, the ZIP distribution for the final application, and the tabbed layout. Even though we do not use a lot of the NetBeans Platform features right now, we could, in the future, incrementally extend the application with more NetBeans Platform features.

Related Article

Air Traffic Control on the NetBeans Platform

Published at DZone with permission of its author, Julien Piaser.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)


Christian Beil replied on Thu, 2010/12/09 - 8:41am

Very cool tool and nice to hear that it has been developed in XP style.
Thanks for the information.

I have one question. What kind of Look & Feel is this, did you develop your own?
I can'T see it very good since the images are not that big, but it definetly seems to have transparency. 

Juan Ottonello replied on Thu, 2010/12/09 - 8:01pm

Christian, the question still apply but you can click the images to enlarge them (1918 x 1078px)

 I´m interested in the charts you used, did you use some existing library or created one for the project? Does it show live charts or static charts (then the answear would probably be JFreeChart...)?

Thanks for posting the info, good luck with the project

Julien Piaser replied on Fri, 2010/12/10 - 3:32am in response to: Christian Beil

We used the Nimbus L&F. Yes, we have been using the transparency feature that is available directly from all the latest JDK. (since 1.6_0_ something)

Julien Piaser replied on Fri, 2010/12/10 - 3:36am in response to: Juan Ottonello

As you guessed, we used JFreeChart a lot, but we had to customize most of the graphs.
The charts are entirely redrawn every minute. Thanks for your encouragement.

Adam Metzler replied on Fri, 2010/12/10 - 5:47am

This looks very clean, great job! I have a couple questions. First about the dialogs, are you creating them with a GlassPane or are you using a JDialog using the transparent window features of JDK 1.6.0_10+? If it is the GlassPane route are you using it on just the TopComponent or on the whole window? However you are acheiving it, it really adds something to the overall design of the app. Second about the Components in the lower image above, are they a custom JSlider or a custom Component all together?

Christian Beil replied on Fri, 2010/12/10 - 5:55am

Thanks for the answers.
And now that I can see the larger images, I can see that it is Nimbus LaF.

Nice and clean app. Thanks for sharing. 

Julien Piaser replied on Fri, 2010/12/10 - 7:48am in response to: Adam Metzler

No, it is not a glasspane (although we use the glasspane feature within the application for other purposes not visible on the screenshot). It is just a simple JDialog on which we call a setWindowOpacity and setWindowShape if available (this is done using reflection).
No slider at the bottom of the screen, only a composition of JPanels.

Adam Metzler replied on Fri, 2010/12/10 - 9:23am in response to: Julien Piaser

Its beautiful none the less. I would love to see how you guys are using GlassPane in this app.

Ariyadi Arnas replied on Sat, 2010/12/11 - 7:46am

By The Way, How much the software's cost?

Bernhard Sünder replied on Sun, 2010/12/19 - 8:45am in response to: Juan Ottonello

If You want to display real time data (up to 20 Hz) there is Full-Java "jBEAM" (www.AMSonline.com) available, developed on NetBeans. It can be used as a library, too. It can handle real time data acquisition and also data postprocessing. It is used primarily in R&D of automotive companies.

Cata Nic replied on Mon, 2013/09/02 - 4:08pm

 It's a risky business to take care about this system. I mean... a single error can destroy a lot of lifes.

Eugenios Ampelius replied on Mon, 2013/09/30 - 11:05am

 Julien, you're a blessing and a model for those who are looking for a way of mixing passion with their know-how and probably not only, all those who're afraid of flying are going to sleep better due to your Crystal. Did you manage to implement the software through ERP? I want to know, how precise is that "cheaters" tool? I imagine it's better that watching the weather in the morning.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.