IHM et multiplicité des supports : aperçu de la recherche actuelle et future Anne-Marie Déry [email protected] Projet Rainbow - Laboratoire I3S Merci tout particulièrement à.
Download ReportTranscript IHM et multiplicité des supports : aperçu de la recherche actuelle et future Anne-Marie Déry [email protected] Projet Rainbow - Laboratoire I3S Merci tout particulièrement à.
IHM et multiplicité des supports : aperçu de la recherche actuelle et future Anne-Marie Déry [email protected] Projet Rainbow - Laboratoire I3S Merci tout particulièrement à Laurence Nigay, Gaelle Calvary de l’IMAG et au GT Mobilité et Ubiquité, GDR I3 Journée Intech Device Independence – Page 1 Motivations et exemples d’applications visées Journée Intech Device Independence – Page 2 IHM sur supports mobiles Complexification de la conception ergonomique et logicielle Journée Intech Device Independence – Page 3 IHM sur supports mobiles Complexification de la conception ergonomique et logicielle Journée Intech Device Independence – Page 4 IHM sur supports mobiles Complexification de la conception ergonomique et logicielle Journée Intech Device Independence – Page 5 Les enjeux de la mutation De nouveaux problèmes à résoudre – prendre en compte le contexte dans l'interaction • Perception/modélisation/adaptation Des solutions à des problèmes anciens à revoir – les techniques d'interaction : windows, icons, menus, pointing Des problèmes classiques prennent une importance particulière – concevoir pour plusieurs plates-formes – Ingénierie au cas par cas insuffisante • Coûts de développement et de maintenance • Cohérence ergonomique entre versions Journée Intech Device Independence – Page 6 Plasticité des interfaces Un peu d’histoire … – Introduction du terme à Interact’99 – Capacité d’une interface à s’adapter à son contexte d’usage dans le respect de son utilisabilité – Contexte d’usage • Plate-forme • Environnement • Utilisateur (2001) Journée Intech Device Independence – Page 7 Dimensions de l ’espace problème Analysedesbesoins Evaluation ergonomique Tests Utilisateurs Conception Espace de conception Propriétés ergonomiques Testsd’intégration Modèle d’architecture logicielle Conceptionlogicielle TestsUnitaires Codage Journée Intech Device Independence – Page 8 Boîtes à outils Mécanismes généraux Dimensions de l ’espace problème Espace de conception : Plasticité Conception ergonomique Propriétés ergonomiques : Autonomie Poids Conception logicielle Journée Intech Device Independence – Page 9 Outil de développement : Context Toolkit Dimensions de l ’espace problème Selon trois axes Techniques d’interaction Collaboration Contexte Journée Intech Device Independence – Page 10 Dimensions de l ’espace problème Selon trois axes Techniques d’interaction Collaboration Contexte Journée Intech Device Independence – Page 11 Système interactif sensible au contexte Système interactif sensible au contexte • capable d’identifier les circonstances qui entourent l’action utilisateur • en vue d’offrir des services contextualisés – offre sélective d’information – décoration contextuelle pour recherche ultérieure Contexte : ensemble de propriétés de phénomènes physiques qui peuvent être captées Journée Intech Device Independence – Page 12 Système interactif sensible au contexte Journée Intech Device Independence – Page 13 Système interactif sensible au contexte Exemple : Plate-forme MAGIC Journée Intech Device Independence – Page 14 Applicatifs envisagés Localisation de l’utilisateur Identification et localisation de dispositifs d’interaction Journée Intech Device Independence – Page 15 Applications de proximité Applications de proximité centraux légers CEP Vendeurs Clients potentiels Serveurs BD, PC des secrétariats … Médecins : PDAs, PC portables Patients : carte vitale … « HAN fixe » du patient Médecins : PDAs, PC portables … Centre hospitalier Hospitalisation à domicile Journée Intech Device Independence – Page 16 Dimensions de l ’espace problème Selon trois axes Techniques d’interaction Collaboration Contexte Journée Intech Device Independence – Page 17 Mobilité : nouveau découpage spatio-temporel Déplacement dans l’espace Variation dans le temps : synchronisme/ asynchronisme synchrone asynchrone local Journée Intech Device Independence – Page 18 distant Vagabond / Ensemble : Hummingbird • Viktoria Research Institute de Gothenburg (Suède) – Conscience de groupe – Indication visuelle et orale Confiné / Dispersé : Système collaboratif[Kraut 96] Système mixte mobile – Magic, Troc (IMAG) Journée Intech Device Independence – Page 19 Plate-forme Magic Casque + Ecouteurs Réseau sans fils Capteur d’orientation Tablette + Stylos Camera + Micro Journée Intech Device Independence – Page 20 Extenseur de port MAGIC : Travail sur le terrain de fouille Explorer le site (Mobilité) Travailler en groupe sur le site (Collecticiel) S’informer auprès d’experts distants (Collecticiel) Comparer des objets physiques avec des objets d’une base de données (Augmentation) Accéder aux objets enlevés du site (Augmentation) Journée Intech Device Independence – Page 21 MAGIC : vue d’ensemble • Sur la tablette : – Communication (forum, mail, etc.) – Coordination (carte) – Production (outils d’édition) • A travers le casque: – Combinaison du physique avec l’informatique grâce à la passerelle Journée Intech Device Independence – Page 22 Terrain augmenté • Un archéologue travaille • Il trouve un objet • La découverte est retirée du site • L’objet est sauvegardé dans une base de données • Un archéologue approche de où était l’objet • La découverte est virtuellement disponible Journée Intech Device Independence – Page 23 Dimensions de l ’espace problème Selon trois axes Techniques d’interaction Collaboration Contexte Journée Intech Device Independence – Page 24 Mobilité : Interface « Baby face » De très nombreuses techniques d ’interaction Technique d’interaction : plusieurs niveaux d’abstraction – dispositif physique clavier, souris, écran, haut-parleur, ... – Système représentationnel langue pseudo-naturelle, manipulation directe, ... Système sensoriel Système cognitif Journée Intech Device Independence – Page 25 Interface « Baby face » Technique d ’interaction en sortie Son spatialisé : T = <hautparleur, LN> RDV à 15h Soundbeam Neckset Journée Intech Device Independence – Page 26 Dimensions de l ’espace problème Interaction homme-machine Techniques d’interaction Collaboration Contexte Journée Intech Device Independence – Page 27 Conclusion Grande variété des études Vaste espace de possibilités Travaux pluridisciplinaires – Groupe de Travail 4.3 "Mobilité et Ubiquité” du GDR I3 Grande variété des domaines d’application Journée Intech Device Independence – Page 28 Des solutions : des traducteurs, la plasticité, la prise en compte du contexte, des architectures, l’ergonomie Journée Intech Device Independence – Page 29 Traducteurs XML et XSL pour la présentation, UIML, SUNML, Xforms …. HTML VoiceML WML Journée Intech Device Independence – Page 30 XSL XML Langage de description d’interfaces Journée Intech Device Independence – Page 31 De l’IHM abstraite vers l’IHM concrète IHM abstraite (Exécution) FicheClient HMI Fichier SUNML (Spécification) <sunml> <interface id="FicheClient"> <structure> <dialog id="MainDialog" sequence="true"> ... <field id="LabelFieldNom" mode="read"> <element type="String">Nom :</element> </field> <field id="FieldNom" mode="read-write"> <element type="String">Toto</element> </field> ... </dialog> </structure> </interface> </sunml> Réification MainDialog LabelFieldNom Field Instance Journée Intech Device Independence – Page 32 FieldNom ... Field Projection IHM concrète (Exécution) JFrame1 JFrame JPanel1 Légende Dialog JPanel JLabel1 JField1 JLabel JTextField ... Plasticité des interfaces : une nécessité Problème ? – Exemple • SI la batterie du PC faiblit ALORS passer sur PDA – SI condition ALORS action Action Réaction Journée Intech Device Independence – Page 33 Espace problème (a) Aucun syst ème de avig n ation Initiateu r d u c h a ement ng A ct ion Cible Effe cte ur Réa ct ion N ature (b1) N v a iga ion t par ng o et l Ut ilis ate ur A ut re Ut ilis ate ur P late-f orme En vroi n nme e nt (b2) N v a iga ion t par m enu déroula nt Ut ilis ate ur Sy stème Inte r en v ion t s ur la cible Migrat ion Rem o ela d ge Red istribut ion Rep irse Journée Intech Device Independence – Page 34 Partielle Es p ae cd etrav ail C o ce n pt P ix el To ale t Se s ion Tâ c h ceomp o se é Tâ c h éléme e ntaire A ct ion p h yiqsu e Espace problème Domaine de plasticité Env ronneme i nt Seuil de plasticité Domaine de plasticité C1 Contexte couvert par l’IHM C2 Ut lisate i ur Journée Intech Device Independence – Page 35 Contexte non couvert Pl ate-forme Cadre de référence : phase “conception” “Spécifier 1 fois -> N Interfaces” approche par modèles ARTStudio Modèles archétypes D. Thevenin Modèles ontologiques Config 1 Domaine Concepts Concepts User Plate-forme Modèle Tâches et Concepts Tâches Tâches Contexte Modèle Tâches et Concepts User IHM abstraite IHM abstraite IHM concrète IHM concrète Evolution Evolution IHM finale Transition User Plate-forme Environment Adaptation Concepts Tâches Plate-forme Environment Config 2 Environment Evolution IHM finale Transition Transition Réification, Factorisation, Traduction, Abstraction / Reconception, Crossing, Intervention Humaine Journée Intech Device Independence – Page 36 Cadre de référence : phase “conception” Config 1 Tâches & Concepts IHM abstraite IHM concrète IHM finale Journée Intech Device Independence – Page 37 Cadre de référence : phase “exécution” Identification du changement de contexte Détection de changement de contexte Capture du contexte Execution de L’épilogue Journée Intech Device Independence – Page 38 Identification Des solutions candidates Selection d’une solution candidate Exécution du prologue Execution de la reaction Ingénierie : Capture de contexte Donnée captée et méta-donnée • • • • • • • • Précision Fréquence Stabilité Zone de couverture Complétude Ambiguïté Complémentarité Redondance Architecture logicielle Journée Intech Device Independence – Page 39 Ontologie … Contexte (U,T) = ensemble de rôles et de relations entre entités pour la réalisation de T par U Changement de Contexte = l’ensemble des rôles change,et/ou l’ensemble des relations change Tâches et activités ont lieu dans un réseau de contextes Contexte (U,T) = un réseau de situations qui partagent le même ensemble de rôles et de relations Les tâches mettent en jeu des entités (ex.: une table, un crayon, une couleur) Entité = un regroupement d’observables Entités peuvent jouer un rôle = une fonction relative à une tâche, qui est satisfaite par une entité, (par exemple, une table satisfait la fonction « surface de dépôt ») Entités peuvent entretenir des relations Domaine (monde) = un réseau d’états reliés par des actions État = un prédicat sur des observables But = état souhaité Tâche = <état courant, but>, c.-à-d. absence de plan Activité = <tâche courante, {tâches de fond}> Journée Intech Device Independence – Page 40 Approches par composants Journée Intech Device Independence – Page 41 Applications visées Problématique Applications évolutives et adaptables – accessibles via un PDA, un portable ou une station – variabilité des fonctionnalités selon le contexte d'utilisation (mode dégradé, connecté ou déconnecté, dépendance des ressources…) Applications construites à base de composants (composants métiers, composants d’IHM, composants services…) S’appuyer sur les infrastructures systèmes (RMI, EJB, …) Fournir une plate-forme à composants Exemples : – Agenda collaboratif – Gestion commerciale (facturations, commandes, client, fournisseur) Journée Intech Device Independence – Page 42 Spécificités des applications et contraintes IHMs Changement du contexte d'exécution du composant (d’utilisation de fonctionnalités) d'une station à un PDA, un téléphone portable … "Reconfiguration" du composant Retrait / ajout de composants (demande de fonctionnalités, de services) Composition de composants Comment réutiliser une IHM existante sur un support différent ? Comment composer les IHMs des composants métiers ? Déporter le composant prise de commande sur un PDA pour le consultant sur site Ajouter dynamiquement le service de gestion de stock pour informer du délai… Journée Intech Device Independence – Page 43 Proposition : modèle de composants et abstraction Réutiliser des composants métiers Spécification d ’ IHM indépendantes du support Composer les IHMs des composants métiers Un modèle de composant + ISL + SUNML Un modèle de composants qui découple composant métier et composants d ’IHM. La communication entre composants IHM et métier est exprimée par des interactions Un langage abstrait de description structurelle des IHMs : SUNML dans la lignée de XForms, RIML,... (inspiré de UIML) Journée Intech Device Independence – Page 44 Composition de composants métiers par interactions Règles de composition adaptées aux IHMs Fusion de règles vérifiant la cohérence de la composition Atelier de composition De l’IHM abstraite vers l’IHM concrète IHM abstraite (Exécution) FicheClient HMI Fichier SUNML (Spécification) <sunml> <interface id="FicheClient"> <structure> <dialog id="MainDialog" sequence="true"> ... <field id="LabelFieldNom" mode="read"> <element type="String">Nom :</element> </field> <field id="FieldNom" mode="read-write"> <element type="String">Toto</element> </field> ... </dialog> </structure> </interface> </sunml> Réification MainDialog LabelFieldNom FieldNom Field ? Dialog Field Projection ? IHM concrète (Exécution) JFrame1 JFrame ? JPanel1 JPanel durand Légende Composant métier (Exécution) Instance Journée Intech Device Independence – Page 45 ... JLabel1 JField1 JLabel JTextField ... De l’IHM abstraite vers l’IHM concrète Séparation du composant d’IHM du composant métier Expression des communications possibles entre ces composants avec ISL Adaptation des composants suivant le contexte d’exécution Controleur FicheClient IHM abstraite durand Composant métier Instance Légende Journée Intech Device Independence – Page 46 interaction JFrame1 IHM concrète Exemple de Liste de Clients Composition Représentant – Client (1-n) : Liste de clients Fichier SUNML (spécification) <sunml> <interface id="ListeClients"> <structure> <dialog id="MainDialog" sequence="true"> <list id="ListeClients" reference="FicheClient" select="Field[FieldNom]"/> </list> </structure> </interface> </sunml> Journée Intech Device Independence – Page 47 Exemple en Swing Ordinateur, ubiquité et mobilité Mobilité (utilisateur équipé) Ubiquité (environnement Journée Intech Device Independence – Page 48 équipé) Ordinateur Vestimentaire L ’ordinateur vestimentaire apparaît comme l’ordinateur de l’utilisateur mobile – Encore souvent son téléphone, son ordinateur de bureau... – Or la mobilité appelle d’autres applications pour l ’ordinateur : ordinateur de plongée, ... Il s ’agit souvent de systèmes Ad-Hoc, non ouverts, non flexibles Journée Intech Device Independence – Page 49 Plate-forme matérielle/logicielle ouverte et flexible : Un catalogue de composants matériels/logiciels «sur étagère» Mutualisation des développements Prototypage d ’applications de l ’Ordinateur Vestimentaire facilité Journée Intech Device Independence – Page 50 Méthodologie Générale ... Assemblage de composants matériels Conception de composants logiciels applicatifs Assemblage et configuration des composants logiciels Réalisation de code minimal de mise en œuvre de l'application Journée Intech Device Independence – Page 51 Quelques composants ... Déjà à notre catalogue... Capteurs sur I2C : Humidité, Température, divers boutons poussoirs ... Compas numérique Serveur Web (HTTPD) D’autres en préparation en collaboration avec des entreprises Sophipolitaines : Clipcard, Europe Technologies, IBM... : GSM/SMS, capteurs divers biométriques... Journée Intech Device Independence – Page 52 Etude Ergonomique Journée Intech Device Independence – Page 53 Interface « Baby face » : multimodalité Plusieurs techniques ou modalités d ’interaction Apports de la multimodalité – Flexibilité/adaptabilité (contexte d ’usage) – Robustesse (complémentarité, redondance) – Expressivité (complémentarité) Problèmes posés – Validation empirique de ces apports – Etude de l’usage des modalités (choix, appropriation, etc.) Journée Intech Device Independence – Page 54 Interface « Baby face » : multimodalité Technique = <d, s> Go to the middle of the message T = <caméra-doigt, gestes> T = <ordinateur, gestes> T = <micro, pseudo LN> T = <stylet, manipulation directe> Journée Intech Device Independence – Page 55 Interface « Baby face » : multimodalité Magicien d ’oz Compère Journée Intech Device Independence – Page 56 Sujet observé Interface « Baby face » : multimodalité Usage des modalités par les sujets Toutes commandes / Toutes sessions Vocale Tactile Gestuelle Embodied Journée Intech Device Independence – Page 57 Interface « Baby face » : multimodalité Usage des techniques d ’interaction par les sujets Variabilité inter-individuelle importante dans l ’usage (fréquence, préférences variées) Spécialisation Peu de redondance et de complémentarité Journée Intech Device Independence – Page 58 Merci à … Laurence Nigay (IMAG) : Marie THILLIEZ (Université de Valenciennes) : Gaëtan Rey, Joëlle Coutaz (IMAG) : – Exposé de synthèse aux Asisses I3 – LES APPLICATIONS DE PROXIMITE – LE CONTEXTEUR: UN MODELE COMPUTATIONEL POUR LE CONTEXTE Joelle Coutaz et Gaelle Calvary (IMAG) : – Plasticité des interfaces Philippe Renevier, Laurence Nigay, Pascal Salembier, Jullien Bouchet, Laurence Pasqualetti (IMAG) Jean-Yves Tigli (I3S) Anne-Marie Dery-Pinna et Jérémy Fierstone (I3S) : – SYSTEMES MIXTES MOBILES ET COLLABORATIFS – TROC : UN JEU COLLABORATIF SUR SUPPORT MOBILE EXPLOITANT DES TECHNIQUES DE REALITE AUGMENTEE – WCOMP : UNE PLATE-FORME EXPERIMENTALE OUVERTE D'ORDINATEUR VESTIMENTAIRE – COMPOSANTS ADAPTABLES ET MOBILES – Et tout le groupe : http://iihm.imag.fr/nigay/GTMOB/Dec2002/ Journée Intech Device Independence – Page 59 IHM et multiplicité des supports : Enseignements à l’ESSI JY Tigli Journée Intech Device Independence – Page 60