journée intech device independence – page 1 ihm et multiplicité des supports : problématique -...

32
Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie Déry [email protected]

Upload: anastaise-roussel

Post on 03-Apr-2015

103 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 1

IHM et multiplicité des supports :

problématique - aperçu de la recherche

et des solutions actuelles

Anne-Marie Déry [email protected]

Page 2: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 2

Motivations et exemples d’applications

visées

Page 3: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 3

IHM sur supports mobiles

Complexification de la conception ergonomique et logicielle

Page 4: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 4

IHM sur supports mobiles

Complexification de la conception ergonomique et

logicielle

Page 5: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 5

IHM sur supports mobiles

Complexification de la conception ergonomique et logicielle

Page 6: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

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

Page 7: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

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)

Page 8: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 8

Des solutions : des traducteurs, la

plasticité, la prise en compte du

contexte, des architectures,

l’ergonomie

Page 9: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 9

Contenu du module

Semaine 1 3/12                     1H : Introduction au module (AM Dery)                  3H : Cours XUL (Paul Franchi)

Semaine 2- 10/12                    4H : XUL  (Paul Franchi)

Semaine 3  17/12                    2H + 2H : Présentation Open Plug 

Semaine 4  7/1                   2H + 2H : Aperçu des autres langages (Cedric Joffroy)

Semaine 5   14/1                    2H + 2H :  Approche composants (Rainbow )

Semaine 6   21/1                     2H + 2H  : Apprche IIHM  (Gaelle Calvary)

Semaine 7    28/1                     User plasticity : DV (Mireille Blay Fornarino)

Semaine 8    4/2                     EXPOSES

Page 10: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 10

Contenu du module

Illustration des besoins en entreprise–Pour la téléphonie

Exemple d’Open Plug

Page 11: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 11

Contenu du module

Langages à balises et IHM

Page 12: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 12

Traducteurs

XML

XSLHTML

VoiceML

WML

XML et XSL pour la présentation, UIML, SUNML, Xforms ….

Page 13: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 13

Langage de description d’interfaces

Page 14: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 14

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

Page 15: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 15

Contenu du module

Pourquoi XUL ?

Page 16: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 16

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

Page 17: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 17

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

Page 18: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 18

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

Page 19: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 19

Contenu du module

Traitement e l’adaptation :

–Approches de l’équipe IIHM (Grenoble)

Page 20: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 20

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

Page 21: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 21

Tâches &Concepts

IHM abstraite

IHM concrète

IHM finale

Config 1

Cadre de référence : phase “conception”

Page 22: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 22

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”

Page 23: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 23

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

Page 24: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 24

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}>

Page 25: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 25

Contenu du module

Adapation à l’évolution des services fonctionnelsApproche de l’équpe RAINBOW

Page 26: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 26

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)

Page 27: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 27

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…

Page 28: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 28

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

Page 29: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 29

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)

?

?

?

Page 30: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 30

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

Page 31: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 31

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

Page 32: Journée Intech Device Independence – Page 1 IHM et multiplicité des supports : problématique - aperçu de la recherche et des solutions actuelles Anne-Marie

Journée Intech Device Independence – Page 32

Contenu du module

Exemple d’adaptation aux utilisateurs :–Web pour Déficients visuels