MINT Software Systems leverages JavaFX in their market leading Compliance and Training Management System


September 2012

MINT Software Systems GmbH is a leading provider of cutting-edge scheduling solutions. They are best known for their Training Management System, named MINT TMS, which is used for scheduling pilot, cabin crew, technical and air navigation service training activities. MINT TMS is an invaluable system for their customers, as companies often try to use pen and paper or MS Excel to schedule training and manage employee records. These methods do not scale well, and require a lot of manual effort. With the MINT TMS, these tasks are integrated into one environment.

Over the course of the last six months, MINT Software Systems has been leveraging JavaFX in the development of TMS 8.0, specifically in its rich client application named WebAssistant. Werner Lehmann, Senior Software Engineer at MINT, describes their process for evaluating JavaFX for use in this application:

“We started by forking a repository branch of our main product, MINT WebAssistant, which is a Swing application deployed via Web Start. On that fork, selected parts of the GUI were replaced and redesigned with JavaFX controls during the course of 6 months. In this way we could evaluate JavaFX by using it without affecting other development. Eventually we were happy with the results and the overall direction of JavaFX and the fork was back-ported into the trunk.”

The following screen shot shows the login screen of the WebAssistant application:

 WebAssistent login screen
 Figure 1 The WebAssistant login screen

The screen shot below shows the dashboard page with expanded application menu. This menu is used to switch to different content pages. You can also see a callout with a list of "recent jobs". Those jobs are background tasks and they are listed in a popup window, which are implemented as a skinned JavaFX custom control – for example, the non-rectangular popup border is part of that skin.

 WebAssistent dashboard
 Figure 2 The WebAssistant dashboard

As mentioned previously, the MINT WebAssistant application uses Swing for its GUI. MINT is incrementally introducing JavaFX functionality into the application by replacing the GUI piece by piece with JFXPanel objects. JFXPanel is a component in the JavaFX API that provides for embedding JavaFX content into Swing applications. Werner Lehmann expresses the advantages that MINT has experienced by using JavaFX:

“JavaFX is a huge step forward over Swing. It is so much easier to design a good looking UI, supported by animations and effects users have come to expect today. And built-in JavaFX technology like chart and Webkit controls quickly translated into new features of our application. There is a benefit for everybody: users get a modern and sexy UI. Management gets reduced cost because it is a lot easier than Swing, especially for animation and effects. Designers get to style the application without diving into Java code. As a developer, I like FXML the most because in my opinion GUI building should be separated from program logic. Obviously this also helps with tooling, e.g. SceneBuilder.”

Leveraging JavaFX in the MINT Training Management System is clearly proving to be a winning strategy. We congratulate Werner and the MINT Software Systems team, and look forward to seeing version 8.0 of the MINT TMS available in production!