Upload
toussaint-tissier
View
103
Download
0
Embed Size (px)
Citation preview
Journée Intech Device Independence – Page 1
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 2
Motivations et exemples d’applications
visées
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
IHM sur supports mobiles
Complexification de la conception ergonomique et logicielle
Journée Intech Device Independence – Page 6
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 7
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 8
Analyse des besoins
Conception
Conception logicielle
Codage
Tests Unitaires
Tests d’intégration
Tests UtilisateursEvaluation ergonomique
Boîtes à outils
Mécanismes généraux
Modèle d’architecture logicielle
Espace 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
Selon trois axes
Techniques d’interaction
Collaboration
Contexte
Journée Intech Device Independence – Page 11
Dimensions de l ’espace problème
Selon trois axes
Techniques d’interaction
Collaboration
Contexte
Journée Intech Device Independence – Page 12
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 13
Système interactif sensible au contexte
Journée Intech Device Independence – Page 14
Système interactif sensible au contexte
Exemple : Plate-forme MAGIC
Journée Intech Device Independence – Page 15
Applicatifs envisagés
Localisation de l’utilisateur
Identification et localisation de dispositifs d’interaction
Journée Intech Device Independence – Page 16
Applications de proximité
Applications de proximité
centraux légers
CEP Vendeurs Clients potentiels
Centre hospitalierServeurs BD, PC
des secrétariats …
Médecins : PDAs, PC portablesPatients : 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
Selon trois axes
Techniques d’interaction
Collaboration
Contexte
Journée Intech Device Independence – Page 18
Mobilité : nouveau découpage spatio-temporel
Déplacement dans l’espace Variation dans le temps : synchronisme/ asynchronisme
local distant
asyn
chro
ne
syn
chro
ne
Journée Intech Device Independence – Page 19
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 20
Plate-forme Magic
Camera + Micro
Casque + Ecouteurs
Capteur d’orientation
Stylos
Tablette + Extenseur de port
Réseau sans fils
Journée Intech Device Independence – Page 21
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 22
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 23
• 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
Terrain augmenté
Journée Intech Device Independence – Page 24
Dimensions de l ’espace problème
Selon trois axes
Techniques d’interaction
Collaboration
Contexte
Journée Intech Device Independence – Page 25
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ésentationnellangue pseudo-naturelle, manipulation directe, ...
Système sensoriel
Système cognitif
Journée Intech Device Independence – Page 26
Interface « Baby face »
Technique d ’interaction en sortie
Son spatialisé : T = <haut-parleur, LN>
SoundbeamNeckset
RDV à 15h
Journée Intech Device Independence – Page 27
Dimensions de l ’espace problème
Interaction homme-machine
Techniques d’interaction
Collaboration
Contexte
Journée Intech Device Independence – Page 28
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 29
Des solutions : des traducteurs, la
plasticité, la prise en compte du
contexte, des architectures,
l’ergonomie
Journée Intech Device Independence – Page 30
Traducteurs
XML
XSLHTML
VoiceML
WML
XML et XSL pour la présentation, UIML, SUNML, Xforms ….
Journée Intech Device Independence – Page 31
Langage de description d’interfaces
Journée Intech Device Independence – Page 32
De l’IHM abstraite vers l’IHM concrète
JFrame1
JPanel1
JLabel1 JField1 ...
IHM concrète (Exécution)
Projection
FicheClient
MainDialog
LabelFieldNom FieldNom ...
IHM abstraite (Exécution)
HMI
Dialog
Field Field
JFrame
JPanel
JTextFieldJLabelLégende
Instance
<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>
Fichier SUNML (Spécification)
Réification
Journée Intech Device Independence – Page 33
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 34
Espace problème
Initiateur duchangement
Action
Cible
Utilisateur
Autre
Utilisateur
EnvironnementPlate-forme
Effecteur
Réaction
Nature
Utilisateur
Système
Intervention sur la cible
RedistributionRemodelage Migration
Reprise
Partielle
Totale
Espace de travailConceptPixel
SessionTâche composéeTâche élémentaireAction physique
(a) Aucun systèmede navigation
(b1) Navigation par onglet
(b2) Navigation par menu déroulant
Journée Intech Device Independence – Page 35
Espace problème
Domaine de plasticité
Environnement
Plate-forme
Utilisateur
Seuil de plasticité
Domaine de plasticité
C2 Contexte non couvert
C1 Contexte couvert par l’IHM
Journée Intech Device Independence – Page 36
Cadre de référence : phase “conception”
Config 1 ModèleTâches etConcepts
IHM concrète
IHM finale
IHM abstraite
ModèleTâches etConcepts
Modèles archétypes
Config 2Concepts
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
“Spécifier 1 fois -> N Interfaces” approche par modèles
Journée Intech Device Independence – Page 37
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 38
Reconnaissance de situation
Exécution de la réaction
Capture du
contexte
IdentificationDes solutions
candidates
Selection d’unesolutioncandidate
Détection de
changement decontexte
Identification du
changement decontexte
Exécution du
prologue
Execution de la
reaction
Execution de
L’épilogue
Calcul d’une réaction
Cadre de référence : phase “exécution”
Journée Intech Device Independence – Page 39
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 40
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
Ontologie …
Les tâches mettent en jeu des entités (ex.: une table, un crayon, une couleur)Entité = un regroupement d’observablesEntité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 observablesBut = état souhaitéTâche = <état courant, but>, c.-à-d. absence de planActivité = <tâche courante, {tâches de fond}>
Journée Intech Device Independence – Page 41
Approches par composants
Journée Intech Device Independence – Page 42
Applications viséesProblé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 43
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 44
Proposition : modèle de composants et abstraction
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)
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
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 45
De l’IHM abstraite vers l’IHM concrète
JFrame1
JPanel1
JLabel1 JField1 ...
IHM concrète (Exécution)
Projection
FicheClient
MainDialog
LabelFieldNom FieldNom ...
IHM abstraite (Exécution)
HMI
Dialog
Field Field
JFrame
JPanel
JTextFieldJLabelLégende
Instance
<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>
Fichier SUNML (Spécification)
Réification
durand
Composant métier (Exécution)
?
?
?
Journée Intech Device Independence – Page 46
De l’IHM abstraite vers l’IHM concrète
Séparation du composant d’IHM du composant métierExpression des communications possibles entre ces composants avec ISLAdaptation des composants suivant le contexte d’exécution
durand
FicheClient
IHM concrète
IHM abstraite
Composant métier
JFrame1
LégendeInstance
interaction
Controleur
Journée Intech Device Independence – Page 47
Exemple de Liste de Clients
<sunml> <interface id="ListeClients"> <structure> <dialog id="MainDialog" sequence="true"> <list id="ListeClients" reference="FicheClient" select="Field[FieldNom]"/> </list> </structure> </interface></sunml>
Fichier SUNML (spécification)
Exemple en Swing
Composition Représentant – Client (1-n) : Liste de clients
Journée Intech Device Independence – Page 48
Ordinateur, ubiquité et mobilité
Ubiquité(environnementéquipé)
Mobilité(utilisateuréquipé)
Journée Intech Device Independence – Page 49
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 50
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 51
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 52
Quelques composants ...
Déjà à notre catalogue...
D’autres en préparation en collaboration avec des entreprises Sophipolitaines : Clipcard, Europe Technologies, IBM... :
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 53
Etude Ergonomique
Journée Intech Device Independence – Page 54
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 55
Interface « Baby face » : multimodalité
Technique = <d, s> Go to the middle of the message
T = <caméra-doigt, gestes> T = <micro, pseudo LN>
T = <ordinateur, gestes> T = <stylet, manipulation directe>
Journée Intech Device Independence – Page 56
Interface « Baby face » : multimodalité
Magicien d ’oz
Compère Sujet observé
Journée Intech Device Independence – Page 57
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 58
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 59
Merci à …
Laurence Nigay (IMAG) : – Exposé de synthèse aux Asisses I3
Marie THILLIEZ (Université de Valenciennes) : – LES APPLICATIONS DE PROXIMITE
Gaëtan Rey, Joëlle Coutaz (IMAG) : – 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)
– SYSTEMES MIXTES MOBILES ET COLLABORATIFS– TROC : UN JEU COLLABORATIF SUR SUPPORT MOBILE
EXPLOITANT DES TECHNIQUES DE REALITE AUGMENTEE Jean-Yves Tigli (I3S)
– WCOMP : UNE PLATE-FORME EXPERIMENTALE OUVERTE D'ORDINATEUR VESTIMENTAIRE
Anne-Marie Dery-Pinna et Jérémy Fierstone (I3S) : – COMPOSANTS ADAPTABLES ET MOBILES
– Et tout le groupe : http://iihm.imag.fr/nigay/GTMOB/Dec2002/
Journée Intech Device Independence – Page 60
IHM et multiplicité des supports :
Enseignements à l’ESSIJY Tigli