Résumé de la thèse de doctorat (Français)

Le développement d'interfaces utilisateur (IU) dans le cadre d'applications interactives intensivement basées sur des données, est une tâche de longue haleine, mais répétitif. Néanmoins, peu de projets de recherche visent leur génération automatique. Les approches existantes pour la génération automatique d'interfaces utilisateur, ou exigent la construction d'un modèle complet de l'interface utilisateur, qui, dans les applications intensivement basées sur des données, il signifie de déplacer la répétabilité de la construction de l'IU pour le niveau de la modélisation, ou exigent un ensemble complexe de sous-modèles contaminés par d'information spécifique de l'IU.

Cette situation empêche une plus large utilisation de ces approches. Certaines solutions existantes dans la littérature, essayent la simplification des sous-modèles requis par la production d'autres sous-modèles à partir des précédents, mais ces solutions ont révélé être très rigides, rendant difficile de travailler autour de problèmes moins ``standard".

Fondée sur l'identification et la comparaison des outils et des approches de l'état de l'art à la génération automatique des interfaces utilisateur, ce travail de recherche se concentre sur la génération automatique des applications interactives intensivement basées sur des données, y compris son interface utilisateur, suivant un paradigme dirigé par les modèles. L'approche commence par la modélisation du système en cours de développement, non de l'interface utilisateur, indépendamment de la plateforme, à savoir le modèle de domaine et le modèle de cas d'utilisation, et génère un modèle de l'interface utilisateur, qui est utilisé avec le modèle de domaine pour générer le code de l'application finale.

Il est également proposé un processus itératif de développement de logiciels, aligné avec le Model Driven Architecture (MDA), y compris la validation des modèles en utilisant un prototype fonctionnel à la fin de chaque itération. L'approche présentée doit être contextualisée dans une perspective évolutive du développement de logiciels, à partir d'un prototype qui permet la validation et la mise en œuvre de modèles exécutables du système, et permettre leur utilisation comme base pour le développement futur grâce à l'amélioration des modèles précédents, ou de compléter avec de nouveaux sous-modèles.

L'approche proposée utilise le langage OCL (Object Constraint Language) et un langage d'actions pour accroître la rigueur et la richesse

sémantique du modèle du système en cours de développement, permettant la génération de fonctionnalité provenant des corps des opérations,

invariants et pré-conditions définies dans le modèle, en contribuant à améliorer la convivialité et l'acceptabilité de l'interface utilisateur.

Sont présentés deux études de cas qui valident l'approche proposée dans cette recherche.