Améliorer les langages et bibliothèques ...
Type de document :
Thèse
Titre :
Améliorer les langages et bibliothèques logicielles pour programmer l'interaction
Titre en anglais :
Improving languages and software libraries for programming interaction
Auteur(s) :
Directeur(s) de thèse :
Stéphane Huot
Date de soutenance :
2019-12-18
Président du jury :
Laurence Duchien (Présidente)
Sophie Dupuy-Chessa (Rapporteuse)
Eric Lecolinet (Rapporteur)
Stéphane Conversy (Examinateur)
Emmanuel Pietriga (Examinateur)
Sophie Dupuy-Chessa (Rapporteuse)
Eric Lecolinet (Rapporteur)
Stéphane Conversy (Examinateur)
Emmanuel Pietriga (Examinateur)
Membre(s) du jury :
Laurence Duchien (Présidente)
Sophie Dupuy-Chessa (Rapporteuse)
Eric Lecolinet (Rapporteur)
Stéphane Conversy (Examinateur)
Emmanuel Pietriga (Examinateur)
Sophie Dupuy-Chessa (Rapporteuse)
Eric Lecolinet (Rapporteur)
Stéphane Conversy (Examinateur)
Emmanuel Pietriga (Examinateur)
Organisme de délivrance :
Université de Lille (2018-....)
École doctorale :
EDSPI (Lille)
Mot(s)-clé(s) :
Interfaces graphiques
Prototypage
Architecture logicielle
Systèmes homme-machine
Logiciels -- Réutilisation
Génie logiciel
Ingénierie dirigée par des modèles
Entité-Composant-Système
Programmation d'animations
Prototypage
Architecture logicielle
Systèmes homme-machine
Logiciels -- Réutilisation
Génie logiciel
Ingénierie dirigée par des modèles
Entité-Composant-Système
Programmation d'animations
Mot(s)-clé(s) en anglais :
Graphical user interface
Prototyping
Software architecture
Human-machine systems
Software reuse
Software engineering
Model driven Engineering
Entity-Component-System
Animation programming
Prototyping
Software architecture
Human-machine systems
Software reuse
Software engineering
Model driven Engineering
Entity-Component-System
Animation programming
Discipline(s) HAL :
Informatique [cs]/Interface homme-machine [cs.HC]
Résumé :
L'objectif de cette thèse est d'étudier et développer des modèles de programmation de systèmes interactifs, pour favoriser le prototypage et le développement de nouvelles techniques d'interaction. Dans ce contexte, les ...
Lire la suite >L'objectif de cette thèse est d'étudier et développer des modèles de programmation de systèmes interactifs, pour favoriser le prototypage et le développement de nouvelles techniques d'interaction. Dans ce contexte, les développeurs utilisent principalement des frameworks génériques d'interfaces graphiques, qu'ils “bricolent” pour intégrer de nouvelles idées. Or ces frameworks sont peu adaptés à de tels usages, et restreignent la liberté des développeurs à dévier des standards établis. Une première étude basée sur des interviews relève les problèmes, besoins, utilitaires, et techniques de “bricolage” rencontrés dans ce contexte. Une seconde étude basée sur un questionnaire en ligne évalue la prévalence des problèmes et techniques relevées dans la première étude, ainsi que les raisons pour lesquelles les frameworks issus de la recherche sont peu utilisés pour concevoir de nouvelles techniques d'interaction. Les résultats de ces études aboutissent à la définition de trois Essentiels d'Interaction, des recommandations pratiques destinées à améliorer le support de l'interaction dans les frameworks et langages de programmation : (i) une orchestration explicite et flexible des comportements interactifs, (ii) un environnement d'interaction minimal et initialisé au démarrage de toute application, et (iii) des mécanismes et conventions standardisés et appuyés par un langage flexible. Ces recommandations sont illustrées une première fois par une extension au langage Smalltalk, qui permet d'exprimer des animations en ajoutant une durée aux appels de fonctions. L'application des Essentiels d'Interaction est illustrée une seconde fois par la création du framework Polyphony, qui se base sur le modèle Entité-Composant-Système issu du Jeu Vidéo, et l'adapte pour la création d'interfaces graphiques et de techniques d'interaction.Lire moins >
Lire la suite >L'objectif de cette thèse est d'étudier et développer des modèles de programmation de systèmes interactifs, pour favoriser le prototypage et le développement de nouvelles techniques d'interaction. Dans ce contexte, les développeurs utilisent principalement des frameworks génériques d'interfaces graphiques, qu'ils “bricolent” pour intégrer de nouvelles idées. Or ces frameworks sont peu adaptés à de tels usages, et restreignent la liberté des développeurs à dévier des standards établis. Une première étude basée sur des interviews relève les problèmes, besoins, utilitaires, et techniques de “bricolage” rencontrés dans ce contexte. Une seconde étude basée sur un questionnaire en ligne évalue la prévalence des problèmes et techniques relevées dans la première étude, ainsi que les raisons pour lesquelles les frameworks issus de la recherche sont peu utilisés pour concevoir de nouvelles techniques d'interaction. Les résultats de ces études aboutissent à la définition de trois Essentiels d'Interaction, des recommandations pratiques destinées à améliorer le support de l'interaction dans les frameworks et langages de programmation : (i) une orchestration explicite et flexible des comportements interactifs, (ii) un environnement d'interaction minimal et initialisé au démarrage de toute application, et (iii) des mécanismes et conventions standardisés et appuyés par un langage flexible. Ces recommandations sont illustrées une première fois par une extension au langage Smalltalk, qui permet d'exprimer des animations en ajoutant une durée aux appels de fonctions. L'application des Essentiels d'Interaction est illustrée une seconde fois par la création du framework Polyphony, qui se base sur le modèle Entité-Composant-Système issu du Jeu Vidéo, et l'adapte pour la création d'interfaces graphiques et de techniques d'interaction.Lire moins >
Résumé en anglais : [en]
The aim of this thesis is to study and develop programming models for interactive systems, to promote the prototyping and development of new interaction techniques. In this context, developers mainly use generic interaction ...
Lire la suite >The aim of this thesis is to study and develop programming models for interactive systems, to promote the prototyping and development of new interaction techniques. In this context, developers mainly use generic interaction frameworks, which they “hack” to integrate new ideas. However, these frameworks are poorly adapted to such uses, and restrict the freedom of developers to deviate from established standards. A first study based on interviews identifies the problems, needs, utilities, and “hacking” techniques encountered in this context. A second study based on an online questionnaire assesses the prevalence of the problems and techniques identified in the first study, as well as the reasons why research frameworks are rarely used to develop new interaction techniques. The results of these studies lead to the definition of three Interaction Essentials, practical recommendations to improve the support of interaction in frameworks and programming languages: (i) an explicit and flexible orchestration of interactive behaviours, (ii) a minimal and initialized interaction environment at the start of any application, and (iii) standardized mechanisms and conventions supported by a flexible language. These recommendations are illustrated initially by an extension to the Smalltalk language, which allows animations to be expressed by adding a duration to function calls. The application of the Interaction Essentials is illustrated once more with the creation of the Polyphony framework, which is based on the Entity-Component-System model originating from Video Games, and adapted for the creation of graphical user interfaces and interaction techniques.Lire moins >
Lire la suite >The aim of this thesis is to study and develop programming models for interactive systems, to promote the prototyping and development of new interaction techniques. In this context, developers mainly use generic interaction frameworks, which they “hack” to integrate new ideas. However, these frameworks are poorly adapted to such uses, and restrict the freedom of developers to deviate from established standards. A first study based on interviews identifies the problems, needs, utilities, and “hacking” techniques encountered in this context. A second study based on an online questionnaire assesses the prevalence of the problems and techniques identified in the first study, as well as the reasons why research frameworks are rarely used to develop new interaction techniques. The results of these studies lead to the definition of three Interaction Essentials, practical recommendations to improve the support of interaction in frameworks and programming languages: (i) an explicit and flexible orchestration of interactive behaviours, (ii) a minimal and initialized interaction environment at the start of any application, and (iii) standardized mechanisms and conventions supported by a flexible language. These recommendations are illustrated initially by an extension to the Smalltalk language, which allows animations to be expressed by adding a duration to function calls. The application of the Interaction Essentials is illustrated once more with the creation of the Polyphony framework, which is based on the Entity-Component-System model originating from Video Games, and adapted for the creation of graphical user interfaces and interaction techniques.Lire moins >
Langue :
Français
Collections :
Source :
Fichiers
- document
- Accès libre
- Accéder au document
- manuscrit.pdf
- Accès libre
- Accéder au document