Thèse soutenue

Approche incrémentale pour la migration des interfaces graphiques d’applications utilisant les métamodèles

FR  |  
EN
Auteur / Autrice : Benoît Verhaeghe
Direction : Nicolas AnquetilAnne Etien
Type : Thèse de doctorat
Discipline(s) : Informatique et applications
Date : Soutenance le 21/10/2021
Etablissement(s) : Université de Lille (2018-2021)
Ecole(s) doctorale(s) : École doctorale Mathématiques, sciences du numérique et de leurs interactions (Lille ; 2021-....)
Partenaire(s) de recherche : Laboratoire : Centre de Recherche en Informatique, Signal et Automatique de Lille - Centre Inria de l'Université de Lille - Centre de Recherche en Informatique- Signal et Automatique de Lille - UMR 9189 / CRIStAL - Inria Lille - Nord Europe
Jury : Président / Présidente : Franck Barbier
Examinateurs / Examinatrices : Abderrahmane Seriai
Rapporteur / Rapporteuse : Salah Sadou, Jean-Rémy Falleri

Mots clés

FR  |  
EN

Résumé

FR  |  
EN

Les développeurs utilisent des frameworks d'interface graphique (GUI frameworks) pour concevoir l'interface utilisateur graphique de leurs applications. Cela leur permet de réutiliser des composants graphiques existants et de construire des applications rapidement. Cependant, avec la généralisation des appareils mobiles et des applications Web, les GUI frameworks évoluent à un rythme rapide : JavaFX a remplacé Java Swing, Angular~8 a remplacé Angular~1.4 qui avait remplacé GWT (Google Web Toolkit). De plus, les anciens GUI frameworks ne sont plus supportés. Cette situation oblige les organisations à migrer régulièrement leurs applications vers des frameworks modernes afin qu'elles ne deviennent pas obsolètes.Pour faciliter la migration des applications, des recherches antérieures ont conçu des approches automatiques dédiées à certains projets de migration. Bien qu'elles fournissent de bons résultats, elles sont difficiles à adapter à plusieurs contextes. Par exemple, chez Berger-Levrault, notre partenaire industriel, les applications sont écrites dans des langages de programmation génériques (Java/GWT), des langages propriétaires de ``4ème génération'' (VisualBasic 6, PowerBuilder), ou des langages de balisage (Silverlight). Il est donc nécessaire d'adopter une approche de migration indépendante du langage, qui permette de faire migrer diverses interfaces graphiques héritées vers les technologies les plus récentes. En outre, lors de la migration automatique, une partie de l'application migrée doit encore être corrigée manuellement. Ce problème est encore plus important pour les grandes applications où cette dernière étape peut durer des mois. Ainsi, les entreprises doivent migrer leur application de manière incrémentielle afin de garantir la livraison à l'utilisateur final tout au long du processus.Dans cette thèse, nous proposons une nouvelle approche de migration incrémentale. Elle vise à permettre la migration de grandes applications afin d'assurer la livraison à l'utilisateur final. Elle consiste à migrer des pages à l'aide de notre outil de migration automatique de GUI, à les corriger et à les intégrer dans une application hybride. Pour créer notre outil de migration de GUI, nous avons conçu un méta-modèle pivot de GUI composé de plusieurs paquetages représentant les aspects visuels et comportementaux de toute GUI. Nous avons détaillé plusieurs implémentations de notre outil de migration de GUI qui extraient et génèrent des GUI utilisant différents frameworks.Nous avons appliqué avec succès notre approche de migration incrémentale sur une application industrielle de Berger-Levrault. L'application migrée est maintenant en production. Nous avons également validé notre outil de migration automatique d'interface graphique sur plusieurs projets de migration incluant des applications développées avec des langages de programmation et de balisage. L'entreprise utilise actuellement notre approche pour d'autres projets de migration.