automatic GUI creation

Automatic GUI Creation
Generating Java source code from formal descriptions

◼ Per Cederberg, 21st of March 2000

Master’s Thesis in Computer Science
Department of Numerical Analysis and Computer Science (Nada)
Royal Institute of Technology (KTH)

Supervisor at Nada: Viggo Kann
Supervisors at Ericsson Telecom: Kaj Bjurman & Arvid Svensson

» A printable version of this document (PDF)
» Mibble MIB Parser – open source project based on this thesis


This thesis evaluates the possibility to automatically create a graphical user interface (GUI) from a formal description of the fields it should contain. A prototype has been developed for a limited domain of applications—interfaces of configuration and maintenance components. The prototype reads a formal description in the ASN.1 syntax of the fields in the interface, allows some interactive changes to the interpretation, and outputs the Java source code that creates the interface.

The generated source is to be used when developing plug-ins for an operation and maintenance framework, and special care has been taken to make the code as human readable and understandable as possible. This effectively means following strict quality norms—indenting, commenting and modularizing the source code, as a human programmer ought to do.

The results obtained from the prototype have been very encouraging, indicating that large parts of the interface can actually be generated automatically. The prototype also generates some other parts of the plug-in, which helps structuring the rest of the code. The usage of an automated tool generally reduces the amount of tiresome and repetitive work, while also adding more robust input verification and avoiding some typical bugs.