Today, Thursday 30th of September 2021, Benoît Verhaeghe, Ph.D. Candidate in the DRIT (Research and Technological Innovation Department) presents a part of his thesis called “Incremental Approach for Application GUI Migration using Metamodel.”
Developers use GUI (Graphical User Interface) frameworks to design the graphical user interface of their applications. It allows them to reuse existing graphical components and build applications in a fast way.
With the generalization of mobile devices and Web applications, GUI frameworks evolve at a fast pace: JavaFX replaced Java Swing, Angular 8 replaced Angular 1.4 which had replaced GWT (Google Web Toolkit). Moreover, former GUI frameworks are not supported anymore. This
situation forces organizations to migrate their applications to modern frameworks regularly to avoid becoming obsolete.
With his presentation, Benoît takes part in the ICSME 2021 (International Conference on Software Maintenance and Evolution) virtual conference.
This part of his thesis is about migrating GUI behaviour from GWT to Angular. His problematic was: how to migrate software to a new framework when the old one is not supported anymore?
He focused on the migration of application behaviour.
In it, there are three main units:
- Extraction from the old framework, which needs to be adapted to the source,
- Intermediate model representing application behaviour, a collaborative template to all applications,
- Generation to the new framework
These three steps will translate the old framework language to the new framework.
Benoît had great results on the extraction and generation process.
The extraction result with 100% of events detected, 98% identified and 95% assigned on the extraction process. On the generation, he tried this approach on different tools, and the results were much better than using JSweet for migration.
In the future, his work will be renewed on other programming languages, then on DTO (Data Transfer Object) – object that carries data between processes, not contain any business logic but may contain serialization and deserialization mechanisms for transferring data over the wire – and services of application. The tests will also continue.
Watch the video to have detailed explanation on the process, which is only a teaser of his thesis presentation planned the 21st of October 2021.