Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : aperçu de la recherche actuelle et future Anne-Marie Déry Projet Rainbow Laboratoire I3S Merci tout particulièrement à Laurence Nigay, Gaelle Calvary de lIMAG et au GT Mobilité et
Journée Intech Device Independence – Page 2 Motivations et exemples dapplications visées
Journée Intech Device Independence – Page 3 IHM sur supports mobiles l 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 IHM sur supports mobiles l Complexification de la conception ergonomique et logicielle
Journée Intech Device Independence – Page 6 Les enjeux de la mutation –Ingénierie au cas par cas insuffisante Coûts de développement et de maintenance Cohérence ergonomique entre versions l De nouveaux problèmes à résoudre – prendre en compte le contexte dans l'interaction Perception/modélisation/adaptation l Des solutions à des problèmes anciens à revoir – les techniques d'interaction : windows, icons, menus, pointing l Des problèmes classiques prennent une importance particulière – concevoir pour plusieurs plates-formes – assurer la sécurité et la confidentialité
Journée Intech Device Independence – Page 7 Plasticité des interfaces l Un peu dhistoire … –Introduction du terme à Interact99 –Capacité dune interface à sadapter à son contexte dusage dans le respect de son utilisabilité –Contexte dusage Plate-forme Environnement Utilisateur (2001)
Journée Intech Device Independence – Page 8 Analyse des besoins Conception Conception logicielle Codage Tests Unitaires Tests dintégration Tests Utilisateurs Evaluation ergonomique Boîtes à outils Mécanismes généraux Modèle darchitecture logicielleEspace de conception Propriétés ergonomiques Dimensions de l espace problème
Journée Intech Device Independence – Page 9 Espace de conception : Plasticité Propriétés ergonomiques : Autonomie Poids Dimensions de l espace problème Conception ergonomique Conception logicielle Outil de développement : Context Toolkit
Journée Intech Device Independence – Page 10 Dimensions de l espace problème l Selon trois axes Techniques dinteraction Collaboration Contexte
Journée Intech Device Independence – Page 11 Dimensions de l espace problème l Selon trois axes Techniques dinteraction Collaboration Contexte
Journée Intech Device Independence – Page 12 Système interactif sensible au contexte l Système interactif sensible au contexte capable didentifier les circonstances qui entourent laction utilisateur en vue doffrir des services contextualisés –offre sélective dinformation –décoration contextuelle pour recherche ultérieure l Contexte : ensemble de propriétés de phénomènes physiques qui peuvent être captées
Journée Intech Device Independence – Page 13 Système interactif sensible au contexte
Journée Intech Device Independence – Page 14 Système interactif sensible au contexte l Exemple : Plate-forme MAGIC
Journée Intech Device Independence – Page 15 Applicatifs envisagés l Localisation de lutilisateur l Identification et localisation de dispositifs dinteraction
Journée Intech Device Independence – Page 16 Applications de proximité centraux légers CEPVendeursClients potentiels Centre hospitalier Serveurs BD, PC des secrétariats … Médecins : PDAs, PC portables Patients : carte vitale … Hospitalisation à domicile « HAN fixe » du patient Médecins : PDAs, PC portables …
Journée Intech Device Independence – Page 17 Dimensions de l espace problème l Selon trois axes Techniques dinteraction Collaboration Contexte
Journée Intech Device Independence – Page 18 Mobilité : nouveau découpage spatio-temporel l Déplacement dans lespace l Variation dans le temps : synchronisme/ asynchronisme local distant asynchrone synchrone
Journée Intech Device Independence – Page 19 Mobilité : nouveau découpage spatial l Etude selon les lieux dinteraction et non la distance CONFINE lieu de linteraction délimité VAGABOND lieu de linteraction nimporte où ENSEMBLEDISPERSE IDENTIQUE (local) DIFFERENT (distant)
Journée Intech Device Independence – Page 20 l Vagabond / Ensemble : Hummingbird Viktoria Research Institute de Gothenburg (Suède) –Conscience de groupe –Indication visuelle et orale Confiné / Dispersé : Système collaboratif[Kraut 96] l Système mixte mobile –Magic, Troc (IMAG)
Journée Intech Device Independence – Page 21 Plate-forme Magic Camera + Micro Casque + Ecouteurs Capteur dorientation Stylos Tablette + Extenseur de port Réseau sans fils
Journée Intech Device Independence – Page 22 MAGIC : Travail sur le terrain de fouille l Explorer le site (Mobilité) l Travailler en groupe sur le site (Collecticiel) l Sinformer auprès dexperts distants (Collecticiel) l Comparer des objets physiques avec des objets dune base de données (Augmentation) l Accéder aux objets enlevés du site (Augmentation)
Journée Intech Device Independence – Page 23 MAGIC : vue densemble Sur la tablette : –Communication (forum, mail, etc.) –Coordination (carte) –Production (outils dédition) A travers le casque: –Combinaison du physique avec linformatique grâce à la passerelle
Journée Intech Device Independence – Page 24 Un archéologue travaille Il trouve un objet La découverte est retirée du site Lobjet est sauvegardé dans une base de données Un archéologue approche de où était lobjet La découverte est virtuellement disponible Terrain augmenté
Journée Intech Device Independence – Page 25 Menu Formules Liste Gestion du piège Gestion des cubes Historique Carte TROC : Interface de la tablette tactile
Journée Intech Device Independence – Page 26 Temps de jeu Objet ciblé Description de lobjet ciblé Formules actives Autre objet visible Niveau dénergie magique Œil magique Messages Interface dans le casque
Journée Intech Device Independence – Page 27 Dimensions de l espace problème l Selon trois axes Techniques dinteraction Collaboration Contexte
Journée Intech Device Independence – Page 28 Mobilité : Interface « Baby face » l De très nombreuses techniques d interaction l Technique d interaction : plusieurs perspectives psychologie cognitive : système sensoriel informatique : technique dinteraction l Technique dinteraction : plusieurs niveaux dabstraction –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 29 Interface « Baby face » l Technique d interaction en sortie l Son spatialisé : T = Soundbeam Neckset RDV à 15h
Journée Intech Device Independence – Page 30 Dimensions de l espace problème l Interaction homme-machine Techniques dinteraction Collaboration Contexte
Journée Intech Device Independence – Page 31 Conclusion l Grande variété des études l Vaste espace de possibilités l Travaux pluridisciplinaires –Groupe de Travail 4.3 "Mobilité et Ubiquité du GDR I3 l Grande variété des domaines dapplication
Journée Intech Device Independence – Page 32 Des solutions : des traducteurs, la plasticité, la prise en compte du contexte, des architectures, lergonomie
Journée Intech Device Independence – Page 33 Traducteurs XML XSL HTML VoiceML WML XML et XSL pour la présentation, UIML, SUNML, Xforms ….
Journée Intech Device Independence – Page 34 Langage de description dinterfaces
Journée Intech Device Independence – Page 35 De lIHM abstraite vers lIHM concrète JFrame1 JPanel1 JLabel1JField1... IHM concrète (Exécution) Projection FicheClient MainDialog LabelFieldNomFieldNom... IHM abstraite (Exécution) HMI Dialog Field JFrame JPanel JTextFieldJLabel Légende Instance... Nom : Toto... Fichier SUNML (Spécification) Réification
Journée Intech Device Independence – Page 36 Plasticité des interfaces : une nécessité l 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 37 Espace problème
Journée Intech Device Independence – Page 38 Espace problème l Domaine de plasticité Seuil de plasticité Domaine de plasticité C2 Contexte non couvert C1 Contexte couvert par lIHM
Journée Intech Device Independence – Page 39 Cadre de référence : principes l Spécifier 1 fois -> N Interfaces approche par modèles Trois groupes de modèles Domaine Contexte Adaptation Trois instanciations Ontologiques: Métadescriptifs, théorie Archetypes: spécifiques au contexte ciblé, phase conception Observés: exécutables, phase exécution
Journée Intech Device Independence – Page 40 Cadre de référence : phase conception Config 1 Modèle Tâches et Concepts IHM concrète IHM finale IHM abstraite Modèle Tâches et Concepts Modèles archétypes Config 2 Concepts Tâches User Plate-forme Environment Evolution Transition IHM concrète IHM finale IHM abstraite Concepts Tâches User Plate-forme Environment Evolution Transition Domaine Concepts Tâches Contexte User Plate-forme Environment Adaptation Evolution Transition Modèles ontologiques ARTStudio D. Thevenin Réification, Factorisation, Traduction, Abstraction / Reconception, Crossing, Intervention Humaine
Journée Intech Device Independence – Page 41 Tâches & Concepts IHM abstraite IHM concrète IHM finale Config 1 Cadre de r é f é rence : phase conception
Journée Intech Device Independence – Page 42 Reconnaissance de situation Exécution de la réaction Capture du contexte Identification Des solutions candidates Selection dune solution candidate Détection de changement de contexte Identification du changement de contexte Exécution du prologue Execution de la reaction Execution de Lépilogue Calcul dune réaction Cadre de r é f é rence : phase ex é cution
Journée Intech Device Independence – Page 43 Ingénierie : Capture de contexte l Donnée captée et méta-donnée Précision Fréquence Stabilité Zone de couverture Complétude Ambiguïté Complémentarité Redondance l Architecture logicielle
Journée Intech Device Independence – Page 44 l Leçon 1: Le contexte peut seulement être défini pour une finalité l Leçon 2: Le contexte est un espace d'informations qui sert l'interprétation l Leçon 3: Le contexte est un espace d'informations partagé l Leçon 4: Le contexte est un espace dinformations infini et évolutif Contexte : Absence de consensus mais des leçons
Journée Intech Device Independence – Page 45 l Contexte (U,T) = ensemble de rôles et de relations entre entités pour la réalisation de T par U l Changement de Contexte = lensemble des rôles change,et/ou lensemble des relations change l Tâches et activités ont lieu dans un réseau de contextes l Contexte (U,T) = un réseau de situations qui partagent le même ensemble de rôles et de relations Ontologie … Les tâches mettent en jeu des entités (ex.: une table, un crayon, une couleur) Entité = un regroupement dobservables 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 =, c.-à-d. absence de plan Activité =
Journée Intech Device Independence – Page 46 Approches par composants
Journée Intech Device Independence – Page 47 Applications visées Problématique l 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…) l Applications construites à base de composants (composants métiers, composants dIHM, composants services…) Sappuyer 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 48 Spécificités des applications et contraintes IHMs l Changement du contexte d'exécution du composant (dutilisation de fonctionnalités) d'une station à un PDA, un téléphone portable … "Reconfiguration" du composant l Retrait / ajout de composants (demande de fonctionnalités, de services) Composition de composants l Comment réutiliser une IHM existante sur un support différent ? l 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 49 Proposition : modèle de composants et abstraction l La communication entre composants IHM et métier est exprimée par des interactions l Un langage abstrait de description structurelle des IHMs : SUNML dans la lignée de XForms, RIML,... (inspiré de UIML) l Composition de composants métiers par interactions l Règles de composition adaptées aux IHMs l Fusion de règles vérifiant la cohérence de la composition l Atelier de composition Réutiliser des composants métiers 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. Spécification d IHM indépendantes du support
Journée Intech Device Independence – Page 50 De lIHM abstraite vers lIHM concrète JFrame1 JPanel1 JLabel1JField1... IHM concrète (Exécution) Projection FicheClient MainDialog LabelFieldNomFieldNom... IHM abstraite (Exécution) HMI Dialog Field JFrame JPanel JTextFieldJLabel Légende Instance... Nom : Toto... Fichier SUNML (Spécification) Réification durand Composant métier (Exécution) ? ? ?
Journée Intech Device Independence – Page 51 De lIHM abstraite vers lIHM concrète Séparation du composant dIHM du composant métier Expression des communications possibles entre ces composants avec ISL Adaptation des composants suivant le contexte dexécution durand FicheClient IHM concrète IHM abstraite Composant métier JFrame1 Légende Instance interaction Controleur
Journée Intech Device Independence – Page 52 Exemple de Liste de Clients <list id="ListeClients" reference="FicheClient" select="Field[FieldNom]"/> Fichier SUNML (spécification) Exemple en Swing Composition Représentant – Client (1-n) : Liste de clients
Journée Intech Device Independence – Page 53 Ordinateur, ubiquité et mobilité Ubiquité (environnement équipé) Mobilité (utilisateur équipé)
Journée Intech Device Independence – Page 54 Ordinateur Vestimentaire l L ordinateur vestimentaire apparaît donc comme lordinateur de lutilisateur mobile –Encore souvent son téléphone, son ordinateur de bureau... –Or la mobilité appelle dautres applications pour l ordinateur : ordinateur de plongée,... l Il s agit souvent de systèmes Ad-Hoc, non ouverts, non flexibles
Journée Intech Device Independence – Page 55 Plate-forme matérielle/logicielle ouverte et flexible : l Un catalogue de composants matériels/logiciels «sur étagère» l Mutualisation des développements l Prototypage d applications de l Ordinateur Vestimentaire facilité
Journée Intech Device Independence – Page 56 Méthodologie Générale... l Assemblage de composants matériels l Conception de composants logiciels applicatifs l Assemblage et configuration des composants logiciels l Réalisation de code minimal de mise en œuvre de l'application
Journée Intech Device Independence – Page 57 Quelques composants... l Déjà à notre catalogue... l Dautres en préparation en collaboration avec des entreprises Sophipolitaines : Clipcard, Europe Technologies, IBM... : l GSM/SMS, capteurs divers biométriques... Capteurs sur I2C : Humidité, Température, divers boutons poussoirs... Compas numérique Serveur Web (HTTPD)
Journée Intech Device Independence – Page 58 Etude Ergonomique
Journée Intech Device Independence – Page 59 Interface « Baby face » : multimodalité l Plusieurs techniques ou modalités d interaction l Apports de la multimodalité –Flexibilité/adaptabilité (contexte d usage) –Robustesse (complémentarité, redondance) –Expressivité (complémentarité) l Problèmes posés –Validation empirique de ces apports –Etude de lusage des modalités (choix, appropriation, etc.)
Journée Intech Device Independence – Page 60 Interface « Baby face » : multimodalité l Technique = Go to the middle of the message T =
Journée Intech Device Independence – Page 61 Interface « Baby face » : multimodalité l Magicien d oz CompèreSujet observé
Journée Intech Device Independence – Page 62 Interface « Baby face » : multimodalité l Usage des modalités par les sujets l Toutes commandes / Toutes sessions Vocale Tactile Gestuelle Embodied
Journée Intech Device Independence – Page 63 Interface « Baby face » : multimodalité l Usage des techniques d interaction par les sujets l Variabilité inter-individuelle importante dans l usage (fréquence, préférences variées) l Spécialisation l Peu de redondance et de complémentarité
Journée Intech Device Independence – Page 64 Merci à … l Laurence Nigay (IMAG) : –Exposé de synthèse aux Asisses I3 l Marie THILLIEZ (Université de Valenciennes) : –LES APPLICATIONS DE PROXIMITE l Gaëtan Rey, Joëlle Coutaz (IMAG) : –LE CONTEXTEUR: UN MODELE COMPUTATIONEL POUR LE CONTEXTE l Joelle Coutaz et Gaelle Calvary (IMAG) : – Plasticité des interfaces l Philippe Renevier, Laurence Nigay, Pascal Salembier, l Jullien Bouchet, Laurence Pasqualetti (IMAG) –SYSTEMES MIXTES MOBILES ET COLLABORATIFS –TROC : UN JEU COLLABORATIF SUR SUPPORT MOBILE EXPLOITANT DES TECHNIQUES DE REALITE AUGMENTEE l Jean-Yves Tigli (I3S) –WCOMP : UNE PLATE-FORME EXPERIMENTALE OUVERTE D'ORDINATEUR VESTIMENTAIRE l Anne-Marie Dery-Pinna et Jérémy Fierstone (I3S) : –COMPOSANTS ADAPTABLES ET MOBILES –Et tout le groupe :
Journée Intech Device Independence – Page 65 IHM et multiplicité des supports : Enseignements à lESSI JY Tigli
Journée Intech Device Independence – Page 66 IHM et multiplicité des supports : Enseignements à lESSI JY Tigli, Projet Mainline Laboratoire I3S Responsable filière STREAM ( Système Temps Réel Embarqués et Applications Mobiles ) à ESSI
Journée Intech Device Independence – Page 67 Impacts sur la formation dingénieur à lESSI l L'évolution récente de l'enseignement sur les Interfaces Hommes/Machines afin de l'adapter aux nouveaux terminaux utilisateurs (téléphone, PDA, tablette PC, « wearable computer »). l La filière STREAM (d'une filière informatique embarquée vers le développement logiciel pour les nouveaux terminaux informatiques légers, voire éclectiques), l La mise en place de projets d'école autour de projets porteurs : Web et accessibilité, « Wearable Computer »
Journée Intech Device Independence – Page 68 Multiplicité des supports et enseignements dIHM à lESSI l MODULE I.H.M (Anne-Marie Dery) ( ESSI 3ième année et DESS Filières LOG, SAR, VIMM, IMAFA, STREAM commun avec le DESS Ergonomie de Nice l De nouvelles modalités « Une modalité est une source d'information, un moyen de communication par lequel on obtient des informations entre l'utilisateur et la machine (ex. : la parole, le geste, la souris) » l Des variations du contexte d'utilisation, liées aux nouveaux terminaux utilisateurs (téléphone, PDA, tablette PC, wearable computer).
Journée Intech Device Independence – Page 69 Multiplicité des supports et nouveaux métiers de linformatique embarquée pour lESSI l Vers le double métier des systèmes embarqués l 2001 : Naissance de la filière STREAM à lESSI l Nette progression du nombre d'ingénieurs formés dans ce domaine. l Evolutions concrètes: 2001 : MODULE Système Embarqué et Applications Mobiles (J.Y. Tigli et M. Riveill) ESSI3 STREAM (obligatoire), SAR DEA RSD 2002 : MODULE Carte à Puces (M. Koenig) 2003 : MODULE Réseaux sans fil ?
Journée Intech Device Independence – Page 70 Multiplicité des supports et projets décole de lESSI l Collaboration entre entreprises/laboratoires/Ecoles au travers un domaine dapplication commun l Aujourdhui déjà deux projets dÉcole : ( ) –Outils pour lAccessibilité –« Wearable Computer » ou ordinateur sur soi
Journée Intech Device Independence – Page 71 Multiplicité des supports : Quelques prototypes en cours de développement … l Une plateforme commune de développement dapplications « wearable computer » sous java avec des composants « beans » en logiciel et matériel/logiciel l Exemples dApplication : – Un système dinformations spatiales (avec GPS, compas numérique) (Balat, Garabedian, Pacoud, Salson, DESS- ESSI3) – Une IHM sensible au contexte utilisateur (avec un télémètre et capteur dintensité lumineuse) (Cheung, Fuchet, Joulie, ESSI3)