Common Standards for JavaFX GUI Development and its Application to the Renovation of the CERN Beam Instrumentation Software Portal and Delivery Mechanism

Iason Rodis, Athanasios Topaloudis, Matilla, ÓScar (Ed.), FernáNdez, David (Ed.), Costa, Isidre (Ed.), Schaa, Volker RW (Ed.)
Until recently, Java GUI development in the CERN Beam Instrumentation Group has followed an ad-hoc approach despite several attempts to provide frameworks and coding standards. Triggered by the deprecation of Java's Swing toolkit, the JavaFX toolkit has been adopted for the creation of new GUIs, and is foreseen for future migration of Swing-based GUIs. To increase homogenisation and encourage modular coding of JavaFX GUIs, libraries have been developed to standardise accelerator context
more » ... tor context selection, provide inter-component GUI communication and optimise data streaming between the control system and modules that make up an expert GUI. This paper describes how this has allowed the use of model-view-controller techniques and naming conventions via Maven archetypes. It also details the modernisation of the software delivery process and subsequent renovation of the software portal. Finally, the paper outlines a vision to extend the principles applied to this Java GUI development for future Python-based developments.
doi:10.18429/jacow-icalepcs2017-thpha182 fatcat:bbyz74njcraofg7jkwufxl2r4m