SlideShare a Scribd company logo
1 of 91
IHM et plasticité
ou Adaptation des IHMs
IHM et
Différents supports
Différents utilisateurs
Différents environnements
Problématique - aperçu des solutions
industrielles et recherche
Anne-Marie Déry pinna@polytech.unice.fr
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)
Plasticité des interfaces
Introduction : plasticité des IHMs – Page 3
Contenu du module
Semaine 1 Introduction au module
Plasticité en recherche
Semaine 2 HTML5
Semaine 3 l’IDM Pour l’IHM
Semaine 4 HTML5
Semaine 5 Phonegap
Semaine 6 XUL
Semaine 7 Travaux de recherche et rendus
Semaine 8 Evaluation
ENTRETIENS
Evaluation
Rapport à rendre individuel
Positionnement des cours par rapport à la plasticité
Rapport de synthèse sur les travaux de recherche (1 article) de votre choix
Quel contexte d’usage ? plateforme / environnement / utilisateur
Quel moment ? conception / exécution
Comment ? Présentation de la solution - modèle sous jacent
Présentation de la solution - illustration sur un exemple
Votre avis ? avantages et inconvénients
Entretien individuel
Objectif : vérifier vos acquis dans le module – vous devez pouvoir montrer et expliquer
vos TPs et avoir du recul par rapport à l’article que vous avez étudié
Déroulement : démonstrations à la demande et réponse aux questions sur le travail de
recherche étudié
Durée : 30 minutes
Motivations et exemples d’applications visées
Introduction : plasticité des IHMs – Page 6
Besoins en plasticité
Migration d’une application
La même application peut s’exécuter sur des supports
différents
• Migration de certaines taches
Besoins identifiés par un changement d’environnement
(arrivée dans un lieu public)
Besoins provoqués par l’utilisateur (changement de matériel,
mains occupées par une tache ?)
Différence entre migration et portage?
Introduction : plasticité des IHMs – Page 7
Diversité des supports : intéractions
Nouvelles capacités d’interaction : tactile
bornes - tables – vitrines – murs interactifs
Différence de taille des écrans – multi touch ou non –
utilisateur experts ou non
Environnement bruyant – sombre …
Adaptation aux environnements
 Une forte évolution ces dernières années
 A la maison
 Au travail
 Dans les transports en commun
 Dans la rue
 Dans les batiments publics ou privés
Plasticité des interfaces
Introduction : plasticité des IHMs – Page 9
Besoins de plasticité
Entre supports tactiles :
 de la table au mur, du téléphone au PC ?
- Différences de taille d’écran, différence de système, différences
des capacités tactiles
Entre un support non tactile et un support tactile :
 quand changer l’interaction ? Pourquoi ?
 Impact sur la présentation ?
 Impact sur l’enchaînement des taches
- Différences de technique d’interaction, d’usage….
Introduction : plasticité des IHMs – Page 10
Diversité des supports : supports dédiés
Supports dédiés à une activité
Niveau d’expertise des utilisateurs experts –
Niveau de fiabilité
En mobilité
Exemple le cas du GPS
Plasticité des interfaces
Introduction : plasticité des IHMs – Page 12
Besoins en plasticité
Nouveau matériel
 Changement de voiture
 Sortie d’une nouvelle montre de plongée
 Changement de lieu : sur le site de dépannage ou sur le site
professionnel : exemple du fontainier, du réparateur
d’électroménager
 Choix de l’utilisateur ou de son environnement professionnel ou
du niveau d’expertise
MÊMES USAGES ?
MÊMES SERVICES ?
Supports mobiles
Introduction : plasticité des IHMs – Page 14
Besoin en plasticité
Passage en mobilité
 En déplacement
 Dans les transports en commun
Changement de matériel
Nouvelles technologies
Nouveaux services
Quid de l’usage ? Quid du développeur ?
Adaptation aux utilisateurs
 Une forte évolution ces dernières années
Informatique pour tous
Plasticité des interfaces
Lyonnaise des eaux
Informatique au service de “la maison”
De la domotique aux services
Plasticité des interfaces
Introduction : plasticité des IHMs – Page 17
Besoins en plasticité
Au domicile
 Des utilisateurs différents du même service
 Des supports différents selon les pièces et l’activité
A l’extérieur – dans la rue
 Un environnement interagissant
 Les sollicitations commerciales, culturelles, de déplacement
 Des supports privés (mobiles) ou des supports publics (bornes interactives,
….)
 Des contraintes environnementales (bruit, lumière, mains occupées…)
Dans l’univers professionnel
 Supports privés et supports professionnels : taches fixées
D’un lieu à un autre
 Continuité de services
Adaptation aux utilisateurs
 Des professionnels aux novices
Plasticité des interfaces
Essayez votre coiffure, vos
lunettes…
Introduction : plasticité des IHMs – Page 19
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
Introduction : plasticité des IHMs – Page 20
Plastique pour qui et quand ?
2 cas
 A la conception – faciliter la vie du développeur
 Réutiliser un maximum pour chaque nouvelle cible
 Diminuer le coût de développement
 Prendre en compte l’usage (exemple Jeux vidéos -Shiva)
 A l’exécution – faciliter la vie de l’utilisateur final
 Faire migrer une application d’un support à un autre
 Faire migrer des taches d’un support à un autre
 Conserver les facilités l’usage et les habitudes tout en profitant des
spécificités des supports
Premières Approches à la conception
XML
XSL
HTML
VoiceML
WML Au centre une description
XMLisée
basées sur des Traducteurs
Un langage commun
Une génération de code
Des techniques de compilation
Limites et Avantages ?
Premières Approche à l’exécution :
 Problème traité : Migration totale
 Exemple
 SI la batterie du PC faiblit ALORS passer sur PDA
SI condition ALORS action
Action ⇒ Réaction
Ecrire une machine à états
Limites et Avantages ?
Reconnaissance de situation
Exécution de la
réaction
Capture du
contexte
Identification
Des solutions
candidates
Selection d’une
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 d’une réaction
Cadre de référence : phase “exécution”
Introduction : plasticité des IHMs – Page 24
Identifier le problème = Quel est le besoin en plasticité
 Conception et/ou exécution ?
 Quels dispositifs visés ?
 Quel(s) environnent(s) ?
 Quel(s) utilisateur(s) ?
Etudier l’existant
 Quelles sont les technologies adaptées ?
 De quels travaux de recherche peut-on s’inspirer ?
Proposer une solution
 Solution partielle ou complète
 Solution ad-hoc ou modèle
Démarche
Interventions dans le module
Des solutions partielles industrielles
 Pour des types d’application (Site Web)
 Pour des types de supports (téléphones mobiles)
Des projets – en recherche
 De la réutilisation pour la composition d’applications existantes
 De la migration dirigée par l’utilisateur
 Points communs : niveau de description des interfaces plus ou
moins abstraits : Langages à balises et IHM
LES SOLUTIONS ACTUELLES A DES PROBLEMES SIMPLES
EXISTENT POUR LE WEB
DES SOLUTIONS AD-HOC SONT BIEN CONNUES
LES TRAVAUX RECHERCHE SONT NOMBREUX
Bref aperçu
concernant les acteurs
Quand les organismes de normalisation
s’y mettent …
W3C et OASIS
WEB Design and
Applications et plateformes
WEB Design and
Applications et utilisateurs
 Pour mobile : “One Web” pour une grande
variété de dispositifs, de contextes et de
lieu grace au W3C’s Mobile Web
BestPractices.
 Device API Working group
 Model-Based UI : W3C Incubator Group -
Rapport Final 04 May 2010
( http://www.w3.org/2005/Incubator/mo
del-based-ui/)
 Accessibilité : W3C’s Web Accessibility Initiative
(WAI) grace aux Web Content Accessibility
Guidelines (WCAG) aide à construire des
contenus accesiibles à tous quelque soit le
handicap
 Respect de la vie privée : POWDER permettrait
d’impliquer l’utilisateur pour faire des choix
prenant en compte la vie privée. Donenr
confiance aux usagers
 Internationalisation : HTML, XML construits
sur Unicode, for instance plus publication d’in
guide
W3C
http://www.w3.org/standards/webdesign/
Equipes et travaux en présence
Equipes concernées : Fabio Paterno
et Jean Vanderdonckt
Rapport Final :
http://www.w3.org/2005/Incubator/model-based-ui/XGR-mbui-2
UIML
https://www.oasis-open.org/committees/uiml/
Description dérivée d'XML pour décrire des interfaces graphiques
Représentation pour divers GUI (par exemple Java awt).
IDEE : Dédinir un métalangage canonique qui peut décrire n'importe quelle interface
utilisateur indépendants des plateformes, qu'il s'agisse des plateformes actuelles ou
futures.
- interface de bureau, interface web, interface mobile, système embarqué, ou encore
applications « voix ».
Outils appelés renderers
Exemple UIML
 « User Interface Markup
Language »
 Langage multi-interface
(graphique, voix, ...)
 Une norme : UIML (uiml.org)
 Des implémentations ou «
renderers »
 Harmonia : Awt/Swing,
HTML, WML, VXML, ...
 Rubico : Visual Basic, GUI
builder
 TV Server, AG : C++ for
embedded systems
Les 4 parties d'un document UIML:
<Head> : metadata (author, date,
version, ...)
<Template> : réutilisation de fragments
<Interface> : interface proprement dite
<Structure> : arbre des « widgets »
<Style> : styles (propriétés) des
widgets
<Content> : contenu (texte, image,
son)
<Behavior> : objet / événement /
action
<Peers> : mappings et liens vers l'extérieur
Introduction : plasticité des IHMs – Page 32
Travaux du W3C
Diaporama en ligne à :
http://www.w3.org/2011/Talks/dhm-polytechnice/
Documents recommandés :
http://www.alistapart.com/articles/responsive-web-design
l'article fondateur de l'approche du Responsive Web
Design ainsi que http://futurefriend.ly/resources.html
qui répertorie les approches les plus avancées et les
difficultés identifiées en la matière
Quand les RIA sont inspirés
Introduction : plasticité des IHMs – Page 34
RIA = le meilleur du web et du "desktop"
RIA & conception des interfaces
 Séparer présentation - logique – données
 Briques d'IHM réutilisables
Nécessité d'installer un plugin dans le navigateur et forte
concurrence sur les technologies
 Multiplication des technologies sur le poste de travail
RIAs
Introduction : plasticité des IHMs – Page 35
 AJAX : un ensemble de techno open source éprouvées
 Asynchronous Javascript And XML
Adobe Flex (2004) :
http://www.adobe.com/support/documentation/en/flex/
Microsoft Silverlight (2006) : http://www.silverlight.net
Sun JavaFX (2008) :
http://www.javafx.com/
Mozilla XUL (XML User Interface Language)
http://www.mozilla.org/projects/xul/
HTML5
http://www.html5rocks.com/fr/
Solutions RIAs disponibles
Source : Google Insights
Les solutions sur mobile
Exemples : PhoneGap et Titanium Mobile
Déployer l’application sur les magasins (AppStore, Android Market…)
afin de bénéficier de ce canal de distribution et de communication.
Réduire les coûts de développements : mutualiser le code.
implique de limiter la part des développements spécifiques à chaque plateforme et
donc de se limiter aux fonctionnalités supportées « out of the box ».
Expérience utilisateur et richesse fonctionnelle ?
Développement mobile multi-plateforme
PhoneGap
PhoneGap : outil open-source, racheté par Adobe
fournit des API JavaScript aux navigateurs Web standards, permettant d’appeler
des fonctionnalités natives non disponibles autrement : accéder à l’appareil photo, à
l’accéléromètre, au système de fichiers…
Cela nécessite d’embarquer le code source HTML/CSS/JS dans une application native,
grâce au composant permettant d’inclure une vue Web dans une application, disponible
dans chaque SDK.
iOS, Android, BlackBerry,
Bada, WindowsPhone, WebOS,
Symbian
Titanium
Développé par Appcelerator qui vend du support et des formations sur Titanium,
une solution libre.
Le principe de Titanium est de fournir une machine virtuelle JavaScript permettant
d’accéder au système natif, et ainsi de développer des applications natives mais en
JavaScript.
iOS, Android et depuis très
récemment BlackBerry
Phonegap
projet Cordova.
Composants navigateurs (appelé « WebView ») disponibles sur chaque OS mobile et
expose – dans ce composant navigateur – un certain nombre de passerelles vers les
éléments natifs du téléphone. accessibles via le langage Javascript (via des flux JSON).
API Phonegap
Accelerometer : écouter le capteur de mouvement
Camera : capturer une photo via l’application dédiée
Capture : capturer les flux son/image/vidéo du téléphone
Compass : orientation magnétique (N/S/E/O) de l’appareil
Connection : informations sur la connectivité DATA
Contacts : accès à la base de contacts
Device : identifiant du smartphone
Events : accès aux événements natifs (batterylow, volumeupbutton)
File : lecture / écriture de fichiers
Geolocation : réception des coordonnées géographiques
Media : lecture de fichier audio
Notification : notifications visuelles, sonores et tactiles
Storage : accès à une base de données SQL
plus plugins développés par la communauté sur le site GitHub dédié.
jQueryMobile
framework qui permet, à partir de pages HTML5/CSS3, d’obtenir des écrans et des
composants graphiques adaptés au rendu sur un écran de smartphone ou tablette.
Base : jQuery UI pour l’implémentation des composants graphiques (widgets). conçu
pour fonctionner sur un grand nombre de navigateurs et de plateformes différentes
classées suivant leur niveau de support : “dégrader” correctement l’application sur un
ancien téléphone.”).
Phonegap Tools
La nouvelle gamme Edge enrichit Adobe Creative Cloud
Services intuitifs qui s’adressent principalement aux designers. Ou comme le dit Adobe, ils
sont « destinés aux designers adeptes de la programmation et aux développeurs web
sensibles à la création […] et viennent compléter Dreamweaver CS6 ».
Edge Animate – pour la création d’interactions et d’animations sur le web en HTML,
JavaScript et CSS.
Edge Inspect – pour inspecter, prévisualiser et déboguer du contenu HTML sur terminaux
mobiles.
Edge Code – un éditeur de code reposant sur le projet Open SourceBrackets et optimisé
pour les designers et développeurs web travaillant en HTML, CSS et JavaScript.
Edge Reflow – un outil de création de « responsive web design » pour élaborer des mises
en page et des créations visuelles en CSS.
Edge Web Fonts – un service gratuit de polices web Open Source pour les sites web et les
applications.
Introduction : plasticité des IHMs – Page 44
Exigence des supports mobiles
Illustration des besoins en entreprise pour la téléphonie
 Le développement rapide des nouveaux modèles de téléphones portables
pose le problème de
 faciliter l’implémentation de nouvelles solutions logicielles et
 créer des interfaces utilisateurs.
 La différence entre d’une plateforme de téléphone à l’autre pose les
problèmes de
 réutiliser les développements
 développer des variantes des produits plus rapidement.
Quand les chercheurs s’en
mêlent…
Equipes en présence
Equipe IIHM Laboratoire IMAG à Grenoble
 Gaelle Calvary & Joelle Coutaz http://iihm.imag.fr/publication/
Equipe RAINBOW Laboratoire I3S à Sophia Antipolis
 Michel Riveill & Philippe Renevier & Audrey Occello & Anne Marie
Dery http://proton.polytech.unice.fr/biblio/displayReference.php?
team=0&&export=teamHtml&&idKeyWord1=1
Laboratoire HIIS à l’université de Pise
 Fabio Paterno http://hiis.isti.cnr.it/publications.php
Laboratoire CHI Université catholique de Louvain
 Jean Vanderdonckt
 http://uclouvain.academia.edu/JeanVanderdonckt/Papers
Equipe IHM au Université de Valencienne
 Anas Hariri & Sophie Lepreux & Christophe Kolski
http://www.univ-valenciennes.fr/LAMIH-intra/site/commun/_gestion/pu
Adaptation à la conception
CAMELEON
CONTEXT AWARE MODELLING FOR ENABLING AND
LEVERAGING EFFECTIVE INTERACTION
(IST R&D 2001-2004)
Un cadre de référence :
CAMELEON
http://giove.isti.cnr.it/projects/cameleon.html
Equipes et travaux en présence
http://giove.isti.cnr.it/projects/cameleon.html
I.S.T.I (Pisa, Italy)
Université Catholique de Louvain (Louvain, Belgium)
Université Joseph Fourier (Grenoble, France)
http://giove.isti.cnr.it/projects/cameleon/external_publication
s.html
http://iihm.imag.fr/publication/C10a/ User Interface Plasticity: Model
Driven Engineering to the Limit!
http://iihm.imag.fr/publication/BDB+04a/ CAMELEON-RT: a Software
Architecture Reference Model for Distributed, Migratable, and Plastic
User Interfaces
Introduction : plasticité des IHMs – Page 50
Phase de “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
Spécifier 1 fois -> N Interfaces
 approche par modèles
Introduction : plasticité des IHMs – Page 51
Tâches &
Concepts
IHM
abstraite
IHM
concrète
IHM finale
Config 1
Différents niveaux d’abstraction
3G MOBILE CONTEXT SENSITIVE ADAPTABILITY - USER
FRIENDLY MOBILE WORK PLACE FOR SEAMLESS ENTERPRISE
APPLICATIONS
CONSENSUS (PROJET Européen terminé en 2004)
www.consensus-online.org
Slides : Cédric Ulmer cedric.ulmer@sap.com
Introduction : plasticité des IHMs – Page 53
Objective
Cost-efficient development of
usable device independent Applications
For all SAP applications being able to
be displayed on all devices
50.000 sets of application Uis
need to be created!
Introduction : plasticité des IHMs – Page 54
State of the Art: Dilemma - Cost vs. Usability
Integrated adaptation
Integrated Adaptation
 semantic information
 context information
Cost
Usability
Recoding
• semantic adaptation
• device & application
specific
Transcoding
• syntactic
adaptation
• technology
specific
Introduction : plasticité des IHMs – Page 55
Renderer Independent Markup Language:
RIML
Augment applications with metadata for
adaptation engines to
prepare presentation
context- and device-specific
Tools:
Context-sensitive
Annotation Editor
Semantic Information:
Relevance, splitting hints,
context conditions,...
Context: User
Prefs, bandwith,..
Device Classes:
UI/Technical aspects
Introduction : plasticité des IHMs – Page 56
Renderer Independent Markup Language:
RIML (contn’d)
 RIML: Language Research
 Usability Research based on
 Focus on mobile devices
 How easy / hard is it to use specific UI Components on different devices (not
usability on application / process level)
 Definition of device classes
Usability Analysis leads to a limited number of Device Classes which represent devices
behaving similar from a users / usability perspective
Introduction : plasticité des IHMs – Page 57
Device-specific
fine-grained
Adaptation
SYNTACTIC ADAPTATION
Backend
Data
Application-specific Adaptation
SEMANTIC ADAPTATION
Information
Splitting Filter
Information
Pruning Filter
otherfilters...
T1
T2
T1
T2
WML
Transcoding Rules
•T1/T2 = UI info Templates
•Colors indicate importance
•Mandatory
•Optional
•T1/T2 = UI info Templates
•Colors indicate importance
•Mandatory
•Optional
T1 T1
T2 T1
Adaptation Concept
T1 T1
T2 T1
Template
Editor
Application data outbound
processing
Problématique de construction
d’IHM par composition
Introduction : plasticité des IHMs – Page 59
Projet ASPECT
Composition de composants
et de leurs IHMs
2003
Equipes et travaux en présence
Equipe Rainbow
http://atelierihm.polytech.unice.fr/bibliographie/
Anne-Marie Pinna-Dery and Jérémy Fierstone. Component model and
programming : a first step to manage Human Computer Interaction
Adaptation. In Mobile HCI’03, volume LNCS 2795, pages 456–460,
Udine, Italy, September 2003. L. Chittaro (Ed.), Springer Verlag.
Introduction : plasticité des IHMs – Page 61
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)
Composition de composants

Fusion de menus correspondants aux composants (1)
Composition de composants

Fusion de menus correspondants aux composants (2)
Introduction : plasticité des IHMs – Page 64
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 : Amusing
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
Introduction : plasticité des IHMs – Page 65
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
JTextFieldJLabel
<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)
?
?
?
Introduction : plasticité des IHMs – Page 66
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
Introduction : plasticité des IHMs – Page 67
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
durand
FicheClient
IHM concrète
IHM abstraite
Composant métier
JFrame1
Légende
Instance
interaction
Controleur
SERVFACE
SERVICE ANNOTATIONS FOR
USER INTERFACE
COMPOSITION
PROJET EUROPÉEN
HTTP://141.76.40.158/SERVFACE/
Equipes et travaux en présence
 Equipe de Fabio Paterno : http://hiis.isti.cnr.it/publications.php
2009 : A Universal, Declarative, Multiple Abstraction-Level Language for
Service-Oriented Applications in Ubiquitous Environments FABIO
PATERNO’, CARMEN SANTORO, and LUCIO DAVIDE SPANO ISTI-
CNR
 ServFace http://www.servface.eu/index.php?
option=com_docman&task=cat_view&gid=34&limit=5&limitstart=0&o
rder=date&dir=DESC&Itemid=60
Service Composition at the Presentation Layer using Web Service
Annotations
Introduction : plasticité des IHMs – Page 70
Vue d’ensemble
+ Annotations de services avec des éléments
d’interfaces
+ Composition de services
+ Génération de l’interface du service
« composite » à partir des annotations
+ 2 approches:
+ 1ière
approche : composition visuelle des services
+ 2ième
approche : composition dirigée par les tâches
Annotations de services
[Izquierdo et al., 2009]
1ière
approche: Composition Visuelle
[Nestler et al., 2009] [Feldmann et al., 2009]
End-User
Programming
Introduction : plasticité des IHMs – Page 73
1ière
approche: Composition Visuelle
[Nestler et al., 2009]
[Feldmann et al., 2009]
Services
(WSDL)
Services
Annotés
Auto-génération d’annotations
+ Annotations par
un “Expert”
Génération de
l’interface “abstraite”
Transformations:
1)M2M
2)M2C
Interface Finale
Service Annotator
Service Composer
MARIA
2ième
approche: Dirigée par les
tâches
[Feldmann et al., 2009] [Janeiro, 2009]
Introduction : plasticité des IHMs – Page 75
2ième
approche: Dirigée par les tâches
8/15
[Feldmann et al., 2009]
[Janeiro, 2009]
Transformations:
1)M2M
2)M2C
Interface Finale
Services
Génération d’annotations
(IHM + tâches)
+ A partir des opérations du service
+ Une opération = une “tâche annotée”
+ Une “tâche annotée” = une tâche système
Génération des tâches intéractives
+ Chaque tâche d’interaction = une fenêtre (par défaut)
+ Intervention du développeur : enlever les doublons
Génération de
l’interface “abstraite”
MARIA
Introduction : plasticité des IHMs – Page 76
UsiXML
UsiXML USer Interface eXtensible Markup Language)
XML pour applications interactives
UsiXML pour des non développeurs : analystes, concepteurs,
designers, ergonomes, chefs de projet, novices,...
UsiXML : élément principal User Interface Description Language (UIDL),
langage déclaratif décrivant les UI indépendament des caractéristiques physiques.
www.usixml.org
Introduction : plasticité des IHMs – Page 77
UsiXML
•UsiXML abstraction des éléments de base : widgets, controls, containers, modalities,
interaction techniques, ....
•UsiXML indépendant device, plateforme et modalités
•UsiXML reutilisation d’UI existantes dans un nouveau contexte par composition
www.usixml.org
Introduction : plasticité des IHMs – Page 78
UsiXML
Equipes et travaux en présence
Université catholique de Louvain : Jean Vanderdonckt
Université Joseph Fourier Grenoble : Joelle Coutaz
Publications Scientifiques du projet
http://www.usixml.eu/effective-ie-done/scientific-publications
http://www.usixml.eu/newsletters
http://www.usixml.org/en/meixner-g-paterno-f-vanderdonckt-j-past-
present-and-future-of-model-based-user-interface-development.html?
IDC=465&IDD=1317
Equipe IIHM
Université Joseph Fourier Grenoble : Joelle Coutaz
http://iihm.imag.fr/publication/
http://iihm.imag.fr/publication/MFC11b/ Flexible Plans for
Adaptation by End-Users
http://iihm.imag.fr/publication/GCM+09a/
Composition dynamique d’Interfaces Homme-Machine : Besoin
utilisateur ou Défi de chercheur ?
Equipe UCL
Université catholique de Louvain : Jean Vanderdonckt
http://uclouvain.academia.edu/JeanVanderdonckt/Papers
Generating User Interface for Information Applications from Task,
Domain and User models with DB-USE
http://uclouvain.academia.edu/JeanVanderdonckt/Papers/270313/Gener
ating_User_Interface_for_Information_Applications_from_Task_Do
main_and_User_models_with_DB-USE
User Interface Composition with UsiXML
http://uclouvain.academia.edu/JeanVanderdonckt/Papers/270311/User_
Interface_Composition_with_UsiXML
Introduction : plasticité des IHMs – Page 82
Equipe RAINBOW I3S
Construction d’applications adaptables
par composition
Introduction : plasticité des IHMs – Page 83
Un modèle inspiré d’Arche pour les services
Proposer un modèle d’architecture
pour un service interactif
N services fonctionnels et leurs interactions utilisateurs : comment
fusionner le tout ?
Services
Fonctionnel
Services
D’interaction
AdaptorAdaptor
Dialogue
Quid des assemblages
Comment fusionner 2 services respectant l’architecture?
Composition d’arches ?
Assemblage des services
fonctionnels
Quid des dialogues ?
Expression et fusion
Quid des IHM?
Expression et fusion
Travaux de références pour le domaine utilisateur
Travaux composants (Fractal, SOA, Noah, WCOMP MODEL)
Gestion de la dynamique de l’application (apparition et
disparition de composants et de services)
Expression des assemblages (orchestration, règles isl,
langages d’aspects…)
Sureté des assemblages
Travaux sur l’IDM
Modèles et transformation de modèles
Fusion de modèles
Travaux en IHMs
Plasticité des interfaces
Expression de modèles pour l’IHM (taches, dialogues…)
Nos spécificités
Etre centré sur le dialogue : relation « fonctionnel et IHM »
Déterminer le bon modèle de dialogue et avoir une
architecture N-Arches
Etre indépendant plateforme : s’appuyer sur un modèle
Etre indépendant dispositifs : s’appuyer sur les modèles d’IHM
pour la plasticité
Faire collaborer des modèles et pouvoir les changer
Assurer la dynamique de l’application : assembler à tous les niveaux
Déduire au maximum les assemblages
Trouver le bon niveau d’IHM abstrait
Introduction : plasticité des IHMs – Page 87
Adapter l’interface à l’évolution du système
(priorité 1)
déduction
Assemblage de services
(Orchestrations, fusion d’aspects,
Composants hiérarchiques)
Assemblage d’IHMs
(Utilisation d’IHMs abstraites, puis
Projection sur devices)
Intervention
Si conflits
Dialogues
S’adresse au développeur
Adapter l’interface aux besoins utilisateurs (priorité 2)
2 utilisateurs : le développeur ou
l’utilisateur final
Choix des services – organisation
de l’IHM
Choix des devices
Dialogue
Device Device
IS Service
Marks Service
IS Service
WebCal Service
IS Service
WebCal Service
Adaptation du système (priorité 3)
Déduire
l’assemblage
pour un utilisateur
MPI
Points communs aux adaptations visées
Conception Exécution
Noyau Fonctionnel
IHM
Evolution Noyau Fonctionnel Apparition, disparition de services
Nouvelles Utilisations Préférences, Contexte d’utilisation …
Adaptation
Adaptation
M IHM
Un langage abstrait orienté composition : SUNML puis LAIM / Flex
Un composant d’IHM : représentation fractal
Un modèle de dialogue et un modèle de plateforme
Une collaboration entre les modèles
MP
MD
Equipes et travaux en présence
Equipe Rainbow
http://atelierihm.polytech.unice.fr/bibliographie/
Du fonctionnel vers les IHM
http://proton.polytech.unice.fr/biblio/displayReference.php?
export=htmlPerso&&nom=Joffroy&&prenom=Cédric
Des IHM vers le fonctionnel
https://nyx.unice.fr/publis/brel-pinna-dery-etal:2011.pdf

More Related Content

What's hot

Intro conception et évaluation des IHM
Intro conception et évaluation des IHMIntro conception et évaluation des IHM
Intro conception et évaluation des IHMAnne-Marie Pinna-Dery
 
IHM et Genie Logiciel: Plasticite
IHM et Genie Logiciel: PlasticiteIHM et Genie Logiciel: Plasticite
IHM et Genie Logiciel: PlasticiteMarius Butuc
 
Ergonomie et modélisation des utilisateurs d'une ihm 2014
Ergonomie et modélisation des utilisateurs d'une ihm 2014Ergonomie et modélisation des utilisateurs d'une ihm 2014
Ergonomie et modélisation des utilisateurs d'une ihm 2014Atelier IHM Polytech Nice Sophia
 
Ergonomie et modelisation utilisateurs
Ergonomie et modelisation utilisateursErgonomie et modelisation utilisateurs
Ergonomie et modelisation utilisateursAnne-Marie Pinna-Dery
 
Cours 2 conception d'une ihm
Cours 2   conception d'une ihm Cours 2   conception d'une ihm
Cours 2 conception d'une ihm ludolmn
 
Maquettes IHM - Présentation USE AGE - 20-02-2014
Maquettes IHM - Présentation USE AGE - 20-02-2014Maquettes IHM - Présentation USE AGE - 20-02-2014
Maquettes IHM - Présentation USE AGE - 20-02-2014Use Age
 
Cours 3 : pratique de l’ergonomie et mobilité
Cours 3 :  pratique de l’ergonomie et mobilitéCours 3 :  pratique de l’ergonomie et mobilité
Cours 3 : pratique de l’ergonomie et mobilitéludolmn
 
Plateforme Ouverte de Supervision et de Traçabilité pour les Environnements C...
Plateforme Ouverte de Supervision et de Traçabilité pour les Environnements C...Plateforme Ouverte de Supervision et de Traçabilité pour les Environnements C...
Plateforme Ouverte de Supervision et de Traçabilité pour les Environnements C...Anthony Gelibert
 
Composition d'applications multi-modèles dirigée par la composition des inter...
Composition d'applications multi-modèles dirigée par la composition des inter...Composition d'applications multi-modèles dirigée par la composition des inter...
Composition d'applications multi-modèles dirigée par la composition des inter...Atelier IHM Polytech Nice Sophia
 

What's hot (20)

Intro conception et évaluation des IHM
Intro conception et évaluation des IHMIntro conception et évaluation des IHM
Intro conception et évaluation des IHM
 
Intro conception2015vf bis
Intro conception2015vf bisIntro conception2015vf bis
Intro conception2015vf bis
 
Cours Adaptation des IHM
Cours Adaptation des IHMCours Adaptation des IHM
Cours Adaptation des IHM
 
Plasticité2014 part4vf
Plasticité2014 part4vfPlasticité2014 part4vf
Plasticité2014 part4vf
 
Idm et ihm
Idm et ihmIdm et ihm
Idm et ihm
 
IHM et Genie Logiciel: Plasticite
IHM et Genie Logiciel: PlasticiteIHM et Genie Logiciel: Plasticite
IHM et Genie Logiciel: Plasticite
 
Intro conception2017
Intro conception2017Intro conception2017
Intro conception2017
 
Introduction à la Conception et Evaluation des IHM
Introduction à la Conception et Evaluation des IHMIntroduction à la Conception et Evaluation des IHM
Introduction à la Conception et Evaluation des IHM
 
Ergonomie et modélisation des utilisateurs d'une ihm 2014
Ergonomie et modélisation des utilisateurs d'une ihm 2014Ergonomie et modélisation des utilisateurs d'une ihm 2014
Ergonomie et modélisation des utilisateurs d'une ihm 2014
 
Ergonomie et modelisation utilisateurs
Ergonomie et modelisation utilisateursErgonomie et modelisation utilisateurs
Ergonomie et modelisation utilisateurs
 
Intro ihm
Intro ihmIntro ihm
Intro ihm
 
Modelisation et maquettage 2015
Modelisation et maquettage 2015Modelisation et maquettage 2015
Modelisation et maquettage 2015
 
Cours 2 conception d'une ihm
Cours 2   conception d'une ihm Cours 2   conception d'une ihm
Cours 2 conception d'une ihm
 
Maquettes IHM - Présentation USE AGE - 20-02-2014
Maquettes IHM - Présentation USE AGE - 20-02-2014Maquettes IHM - Présentation USE AGE - 20-02-2014
Maquettes IHM - Présentation USE AGE - 20-02-2014
 
Présentation ceihma tous
Présentation ceihma tousPrésentation ceihma tous
Présentation ceihma tous
 
Intro conception2014
Intro conception2014Intro conception2014
Intro conception2014
 
Cours 3 : pratique de l’ergonomie et mobilité
Cours 3 :  pratique de l’ergonomie et mobilitéCours 3 :  pratique de l’ergonomie et mobilité
Cours 3 : pratique de l’ergonomie et mobilité
 
Ihm introduction
Ihm introductionIhm introduction
Ihm introduction
 
Plateforme Ouverte de Supervision et de Traçabilité pour les Environnements C...
Plateforme Ouverte de Supervision et de Traçabilité pour les Environnements C...Plateforme Ouverte de Supervision et de Traçabilité pour les Environnements C...
Plateforme Ouverte de Supervision et de Traçabilité pour les Environnements C...
 
Composition d'applications multi-modèles dirigée par la composition des inter...
Composition d'applications multi-modèles dirigée par la composition des inter...Composition d'applications multi-modèles dirigée par la composition des inter...
Composition d'applications multi-modèles dirigée par la composition des inter...
 

Similar to Introduction à la plasticité

Personnalisation basée sur l'utilisation d'ontologies, utilisation du context...
Personnalisation basée sur l'utilisation d'ontologies, utilisation du context...Personnalisation basée sur l'utilisation d'ontologies, utilisation du context...
Personnalisation basée sur l'utilisation d'ontologies, utilisation du context...louschwartz
 
De l’open source à l’open cloud
De l’open source à l’open cloudDe l’open source à l’open cloud
De l’open source à l’open cloudRobert Viseur
 
Introduction module IHM Polytech Sophia Dept Info SI3
Introduction module IHM Polytech Sophia Dept Info SI3Introduction module IHM Polytech Sophia Dept Info SI3
Introduction module IHM Polytech Sophia Dept Info SI3Anne-Marie Pinna-Dery
 
Afterwork de la recherche : structuration de la recherche sur les usages et l...
Afterwork de la recherche : structuration de la recherche sur les usages et l...Afterwork de la recherche : structuration de la recherche sur les usages et l...
Afterwork de la recherche : structuration de la recherche sur les usages et l...La French Tech Rennes St Malo
 
Atelier Mazedia Multitouch SITEM 2011 Expérience Fontevraud - Rétrospective
Atelier Mazedia Multitouch SITEM 2011 Expérience Fontevraud - RétrospectiveAtelier Mazedia Multitouch SITEM 2011 Expérience Fontevraud - Rétrospective
Atelier Mazedia Multitouch SITEM 2011 Expérience Fontevraud - RétrospectiveRoux Michel
 
Design pour une plateforme de service
Design pour une plateforme de serviceDesign pour une plateforme de service
Design pour une plateforme de serviceFrançois Huguet
 
IMMERSITE, la conception collaborative des projets urbains
IMMERSITE, la conception collaborative des projets urbainsIMMERSITE, la conception collaborative des projets urbains
IMMERSITE, la conception collaborative des projets urbainsantic Pays basque
 
Conférence iPad, gPad et autres tablettes tactiles par Technifutur
Conférence iPad, gPad et autres tablettes tactiles par TechnifuturConférence iPad, gPad et autres tablettes tactiles par Technifutur
Conférence iPad, gPad et autres tablettes tactiles par Technifuturreferenceur
 
De l’ergonomie aux bonnes méthodes de développement de vos applications Windo...
De l’ergonomie aux bonnes méthodes de développement de vos applications Windo...De l’ergonomie aux bonnes méthodes de développement de vos applications Windo...
De l’ergonomie aux bonnes méthodes de développement de vos applications Windo...Microsoft
 
Prefercom présentation
Prefercom présentationPrefercom présentation
Prefercom présentationLEVY REMI
 
[Webinar Niji] Frameworks XPlateform mobile - 2210
[Webinar Niji] Frameworks XPlateform mobile - 2210 [Webinar Niji] Frameworks XPlateform mobile - 2210
[Webinar Niji] Frameworks XPlateform mobile - 2210 Niji
 
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptxChapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptxssuserec8501
 
Framework XPlatform Mobile
Framework XPlatform MobileFramework XPlatform Mobile
Framework XPlatform MobileGabriel DUPONT
 
WygDay 2010 - session plénière
WygDay 2010 - session plénièreWygDay 2010 - session plénière
WygDay 2010 - session plénièreWygwam
 
Projets d'Humanités numérique et collaboration de différents métiers
Projets d'Humanités numérique et collaboration de différents métiersProjets d'Humanités numérique et collaboration de différents métiers
Projets d'Humanités numérique et collaboration de différents métiersEmmanuelle Morlock
 

Similar to Introduction à la plasticité (20)

Personnalisation basée sur l'utilisation d'ontologies, utilisation du context...
Personnalisation basée sur l'utilisation d'ontologies, utilisation du context...Personnalisation basée sur l'utilisation d'ontologies, utilisation du context...
Personnalisation basée sur l'utilisation d'ontologies, utilisation du context...
 
De l’open source à l’open cloud
De l’open source à l’open cloudDe l’open source à l’open cloud
De l’open source à l’open cloud
 
Introduction module IHM Polytech Sophia Dept Info SI3
Introduction module IHM Polytech Sophia Dept Info SI3Introduction module IHM Polytech Sophia Dept Info SI3
Introduction module IHM Polytech Sophia Dept Info SI3
 
Interactivite@ledna
Interactivite@lednaInteractivite@ledna
Interactivite@ledna
 
output
outputoutput
output
 
Afterwork de la recherche : structuration de la recherche sur les usages et l...
Afterwork de la recherche : structuration de la recherche sur les usages et l...Afterwork de la recherche : structuration de la recherche sur les usages et l...
Afterwork de la recherche : structuration de la recherche sur les usages et l...
 
Atelier Mazedia Multitouch SITEM 2011 Expérience Fontevraud - Rétrospective
Atelier Mazedia Multitouch SITEM 2011 Expérience Fontevraud - RétrospectiveAtelier Mazedia Multitouch SITEM 2011 Expérience Fontevraud - Rétrospective
Atelier Mazedia Multitouch SITEM 2011 Expérience Fontevraud - Rétrospective
 
Design pour une plateforme de service
Design pour une plateforme de serviceDesign pour une plateforme de service
Design pour une plateforme de service
 
IMMERSITE, la conception collaborative des projets urbains
IMMERSITE, la conception collaborative des projets urbainsIMMERSITE, la conception collaborative des projets urbains
IMMERSITE, la conception collaborative des projets urbains
 
Conférence iPad, gPad et autres tablettes tactiles par Technifutur
Conférence iPad, gPad et autres tablettes tactiles par TechnifuturConférence iPad, gPad et autres tablettes tactiles par Technifutur
Conférence iPad, gPad et autres tablettes tactiles par Technifutur
 
De l’ergonomie aux bonnes méthodes de développement de vos applications Windo...
De l’ergonomie aux bonnes méthodes de développement de vos applications Windo...De l’ergonomie aux bonnes méthodes de développement de vos applications Windo...
De l’ergonomie aux bonnes méthodes de développement de vos applications Windo...
 
Prefercom présentation
Prefercom présentationPrefercom présentation
Prefercom présentation
 
PreferCom
PreferComPreferCom
PreferCom
 
[Webinar Niji] Frameworks XPlateform mobile - 2210
[Webinar Niji] Frameworks XPlateform mobile - 2210 [Webinar Niji] Frameworks XPlateform mobile - 2210
[Webinar Niji] Frameworks XPlateform mobile - 2210
 
bb-d_ERGO-UX
bb-d_ERGO-UXbb-d_ERGO-UX
bb-d_ERGO-UX
 
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptxChapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
 
WygDay 2010
WygDay 2010WygDay 2010
WygDay 2010
 
Framework XPlatform Mobile
Framework XPlatform MobileFramework XPlatform Mobile
Framework XPlatform Mobile
 
WygDay 2010 - session plénière
WygDay 2010 - session plénièreWygDay 2010 - session plénière
WygDay 2010 - session plénière
 
Projets d'Humanités numérique et collaboration de différents métiers
Projets d'Humanités numérique et collaboration de différents métiersProjets d'Humanités numérique et collaboration de différents métiers
Projets d'Humanités numérique et collaboration de différents métiers
 

Introduction à la plasticité

  • 1. IHM et plasticité ou Adaptation des IHMs IHM et Différents supports Différents utilisateurs Différents environnements Problématique - aperçu des solutions industrielles et recherche Anne-Marie Déry pinna@polytech.unice.fr
  • 2. 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) Plasticité des interfaces
  • 3. Introduction : plasticité des IHMs – Page 3 Contenu du module Semaine 1 Introduction au module Plasticité en recherche Semaine 2 HTML5 Semaine 3 l’IDM Pour l’IHM Semaine 4 HTML5 Semaine 5 Phonegap Semaine 6 XUL Semaine 7 Travaux de recherche et rendus Semaine 8 Evaluation ENTRETIENS
  • 4. Evaluation Rapport à rendre individuel Positionnement des cours par rapport à la plasticité Rapport de synthèse sur les travaux de recherche (1 article) de votre choix Quel contexte d’usage ? plateforme / environnement / utilisateur Quel moment ? conception / exécution Comment ? Présentation de la solution - modèle sous jacent Présentation de la solution - illustration sur un exemple Votre avis ? avantages et inconvénients Entretien individuel Objectif : vérifier vos acquis dans le module – vous devez pouvoir montrer et expliquer vos TPs et avoir du recul par rapport à l’article que vous avez étudié Déroulement : démonstrations à la demande et réponse aux questions sur le travail de recherche étudié Durée : 30 minutes
  • 5. Motivations et exemples d’applications visées
  • 6. Introduction : plasticité des IHMs – Page 6 Besoins en plasticité Migration d’une application La même application peut s’exécuter sur des supports différents • Migration de certaines taches Besoins identifiés par un changement d’environnement (arrivée dans un lieu public) Besoins provoqués par l’utilisateur (changement de matériel, mains occupées par une tache ?) Différence entre migration et portage?
  • 7. Introduction : plasticité des IHMs – Page 7 Diversité des supports : intéractions Nouvelles capacités d’interaction : tactile bornes - tables – vitrines – murs interactifs Différence de taille des écrans – multi touch ou non – utilisateur experts ou non Environnement bruyant – sombre …
  • 8. Adaptation aux environnements  Une forte évolution ces dernières années  A la maison  Au travail  Dans les transports en commun  Dans la rue  Dans les batiments publics ou privés Plasticité des interfaces
  • 9. Introduction : plasticité des IHMs – Page 9 Besoins de plasticité Entre supports tactiles :  de la table au mur, du téléphone au PC ? - Différences de taille d’écran, différence de système, différences des capacités tactiles Entre un support non tactile et un support tactile :  quand changer l’interaction ? Pourquoi ?  Impact sur la présentation ?  Impact sur l’enchaînement des taches - Différences de technique d’interaction, d’usage….
  • 10. Introduction : plasticité des IHMs – Page 10 Diversité des supports : supports dédiés Supports dédiés à une activité Niveau d’expertise des utilisateurs experts – Niveau de fiabilité En mobilité
  • 11. Exemple le cas du GPS Plasticité des interfaces
  • 12. Introduction : plasticité des IHMs – Page 12 Besoins en plasticité Nouveau matériel  Changement de voiture  Sortie d’une nouvelle montre de plongée  Changement de lieu : sur le site de dépannage ou sur le site professionnel : exemple du fontainier, du réparateur d’électroménager  Choix de l’utilisateur ou de son environnement professionnel ou du niveau d’expertise
  • 13. MÊMES USAGES ? MÊMES SERVICES ? Supports mobiles
  • 14. Introduction : plasticité des IHMs – Page 14 Besoin en plasticité Passage en mobilité  En déplacement  Dans les transports en commun Changement de matériel Nouvelles technologies Nouveaux services Quid de l’usage ? Quid du développeur ?
  • 15. Adaptation aux utilisateurs  Une forte évolution ces dernières années Informatique pour tous Plasticité des interfaces Lyonnaise des eaux
  • 16. Informatique au service de “la maison” De la domotique aux services Plasticité des interfaces
  • 17. Introduction : plasticité des IHMs – Page 17 Besoins en plasticité Au domicile  Des utilisateurs différents du même service  Des supports différents selon les pièces et l’activité A l’extérieur – dans la rue  Un environnement interagissant  Les sollicitations commerciales, culturelles, de déplacement  Des supports privés (mobiles) ou des supports publics (bornes interactives, ….)  Des contraintes environnementales (bruit, lumière, mains occupées…) Dans l’univers professionnel  Supports privés et supports professionnels : taches fixées D’un lieu à un autre  Continuité de services
  • 18. Adaptation aux utilisateurs  Des professionnels aux novices Plasticité des interfaces Essayez votre coiffure, vos lunettes…
  • 19. Introduction : plasticité des IHMs – Page 19 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
  • 20. Introduction : plasticité des IHMs – Page 20 Plastique pour qui et quand ? 2 cas  A la conception – faciliter la vie du développeur  Réutiliser un maximum pour chaque nouvelle cible  Diminuer le coût de développement  Prendre en compte l’usage (exemple Jeux vidéos -Shiva)  A l’exécution – faciliter la vie de l’utilisateur final  Faire migrer une application d’un support à un autre  Faire migrer des taches d’un support à un autre  Conserver les facilités l’usage et les habitudes tout en profitant des spécificités des supports
  • 21. Premières Approches à la conception XML XSL HTML VoiceML WML Au centre une description XMLisée basées sur des Traducteurs Un langage commun Une génération de code Des techniques de compilation Limites et Avantages ?
  • 22. Premières Approche à l’exécution :  Problème traité : Migration totale  Exemple  SI la batterie du PC faiblit ALORS passer sur PDA SI condition ALORS action Action ⇒ Réaction Ecrire une machine à états Limites et Avantages ?
  • 23. Reconnaissance de situation Exécution de la réaction Capture du contexte Identification Des solutions candidates Selection d’une 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 d’une réaction Cadre de référence : phase “exécution”
  • 24. Introduction : plasticité des IHMs – Page 24 Identifier le problème = Quel est le besoin en plasticité  Conception et/ou exécution ?  Quels dispositifs visés ?  Quel(s) environnent(s) ?  Quel(s) utilisateur(s) ? Etudier l’existant  Quelles sont les technologies adaptées ?  De quels travaux de recherche peut-on s’inspirer ? Proposer une solution  Solution partielle ou complète  Solution ad-hoc ou modèle Démarche
  • 25. Interventions dans le module Des solutions partielles industrielles  Pour des types d’application (Site Web)  Pour des types de supports (téléphones mobiles) Des projets – en recherche  De la réutilisation pour la composition d’applications existantes  De la migration dirigée par l’utilisateur  Points communs : niveau de description des interfaces plus ou moins abstraits : Langages à balises et IHM
  • 26. LES SOLUTIONS ACTUELLES A DES PROBLEMES SIMPLES EXISTENT POUR LE WEB DES SOLUTIONS AD-HOC SONT BIEN CONNUES LES TRAVAUX RECHERCHE SONT NOMBREUX Bref aperçu concernant les acteurs
  • 27. Quand les organismes de normalisation s’y mettent … W3C et OASIS
  • 28. WEB Design and Applications et plateformes WEB Design and Applications et utilisateurs  Pour mobile : “One Web” pour une grande variété de dispositifs, de contextes et de lieu grace au W3C’s Mobile Web BestPractices.  Device API Working group  Model-Based UI : W3C Incubator Group - Rapport Final 04 May 2010 ( http://www.w3.org/2005/Incubator/mo del-based-ui/)  Accessibilité : W3C’s Web Accessibility Initiative (WAI) grace aux Web Content Accessibility Guidelines (WCAG) aide à construire des contenus accesiibles à tous quelque soit le handicap  Respect de la vie privée : POWDER permettrait d’impliquer l’utilisateur pour faire des choix prenant en compte la vie privée. Donenr confiance aux usagers  Internationalisation : HTML, XML construits sur Unicode, for instance plus publication d’in guide W3C http://www.w3.org/standards/webdesign/
  • 29. Equipes et travaux en présence Equipes concernées : Fabio Paterno et Jean Vanderdonckt Rapport Final : http://www.w3.org/2005/Incubator/model-based-ui/XGR-mbui-2
  • 30. UIML https://www.oasis-open.org/committees/uiml/ Description dérivée d'XML pour décrire des interfaces graphiques Représentation pour divers GUI (par exemple Java awt). IDEE : Dédinir un métalangage canonique qui peut décrire n'importe quelle interface utilisateur indépendants des plateformes, qu'il s'agisse des plateformes actuelles ou futures. - interface de bureau, interface web, interface mobile, système embarqué, ou encore applications « voix ». Outils appelés renderers
  • 31. Exemple UIML  « User Interface Markup Language »  Langage multi-interface (graphique, voix, ...)  Une norme : UIML (uiml.org)  Des implémentations ou « renderers »  Harmonia : Awt/Swing, HTML, WML, VXML, ...  Rubico : Visual Basic, GUI builder  TV Server, AG : C++ for embedded systems Les 4 parties d'un document UIML: <Head> : metadata (author, date, version, ...) <Template> : réutilisation de fragments <Interface> : interface proprement dite <Structure> : arbre des « widgets » <Style> : styles (propriétés) des widgets <Content> : contenu (texte, image, son) <Behavior> : objet / événement / action <Peers> : mappings et liens vers l'extérieur
  • 32. Introduction : plasticité des IHMs – Page 32 Travaux du W3C Diaporama en ligne à : http://www.w3.org/2011/Talks/dhm-polytechnice/ Documents recommandés : http://www.alistapart.com/articles/responsive-web-design l'article fondateur de l'approche du Responsive Web Design ainsi que http://futurefriend.ly/resources.html qui répertorie les approches les plus avancées et les difficultés identifiées en la matière
  • 33. Quand les RIA sont inspirés
  • 34. Introduction : plasticité des IHMs – Page 34 RIA = le meilleur du web et du "desktop" RIA & conception des interfaces  Séparer présentation - logique – données  Briques d'IHM réutilisables Nécessité d'installer un plugin dans le navigateur et forte concurrence sur les technologies  Multiplication des technologies sur le poste de travail RIAs
  • 35. Introduction : plasticité des IHMs – Page 35  AJAX : un ensemble de techno open source éprouvées  Asynchronous Javascript And XML Adobe Flex (2004) : http://www.adobe.com/support/documentation/en/flex/ Microsoft Silverlight (2006) : http://www.silverlight.net Sun JavaFX (2008) : http://www.javafx.com/ Mozilla XUL (XML User Interface Language) http://www.mozilla.org/projects/xul/ HTML5 http://www.html5rocks.com/fr/ Solutions RIAs disponibles Source : Google Insights
  • 37. Exemples : PhoneGap et Titanium Mobile Déployer l’application sur les magasins (AppStore, Android Market…) afin de bénéficier de ce canal de distribution et de communication. Réduire les coûts de développements : mutualiser le code. implique de limiter la part des développements spécifiques à chaque plateforme et donc de se limiter aux fonctionnalités supportées « out of the box ». Expérience utilisateur et richesse fonctionnelle ? Développement mobile multi-plateforme
  • 38. PhoneGap PhoneGap : outil open-source, racheté par Adobe fournit des API JavaScript aux navigateurs Web standards, permettant d’appeler des fonctionnalités natives non disponibles autrement : accéder à l’appareil photo, à l’accéléromètre, au système de fichiers… Cela nécessite d’embarquer le code source HTML/CSS/JS dans une application native, grâce au composant permettant d’inclure une vue Web dans une application, disponible dans chaque SDK. iOS, Android, BlackBerry, Bada, WindowsPhone, WebOS, Symbian
  • 39. Titanium Développé par Appcelerator qui vend du support et des formations sur Titanium, une solution libre. Le principe de Titanium est de fournir une machine virtuelle JavaScript permettant d’accéder au système natif, et ainsi de développer des applications natives mais en JavaScript. iOS, Android et depuis très récemment BlackBerry
  • 40. Phonegap projet Cordova. Composants navigateurs (appelé « WebView ») disponibles sur chaque OS mobile et expose – dans ce composant navigateur – un certain nombre de passerelles vers les éléments natifs du téléphone. accessibles via le langage Javascript (via des flux JSON).
  • 41. API Phonegap Accelerometer : écouter le capteur de mouvement Camera : capturer une photo via l’application dédiée Capture : capturer les flux son/image/vidéo du téléphone Compass : orientation magnétique (N/S/E/O) de l’appareil Connection : informations sur la connectivité DATA Contacts : accès à la base de contacts Device : identifiant du smartphone Events : accès aux événements natifs (batterylow, volumeupbutton) File : lecture / écriture de fichiers Geolocation : réception des coordonnées géographiques Media : lecture de fichier audio Notification : notifications visuelles, sonores et tactiles Storage : accès à une base de données SQL plus plugins développés par la communauté sur le site GitHub dédié.
  • 42. jQueryMobile framework qui permet, à partir de pages HTML5/CSS3, d’obtenir des écrans et des composants graphiques adaptés au rendu sur un écran de smartphone ou tablette. Base : jQuery UI pour l’implémentation des composants graphiques (widgets). conçu pour fonctionner sur un grand nombre de navigateurs et de plateformes différentes classées suivant leur niveau de support : “dégrader” correctement l’application sur un ancien téléphone.”).
  • 43. Phonegap Tools La nouvelle gamme Edge enrichit Adobe Creative Cloud Services intuitifs qui s’adressent principalement aux designers. Ou comme le dit Adobe, ils sont « destinés aux designers adeptes de la programmation et aux développeurs web sensibles à la création […] et viennent compléter Dreamweaver CS6 ». Edge Animate – pour la création d’interactions et d’animations sur le web en HTML, JavaScript et CSS. Edge Inspect – pour inspecter, prévisualiser et déboguer du contenu HTML sur terminaux mobiles. Edge Code – un éditeur de code reposant sur le projet Open SourceBrackets et optimisé pour les designers et développeurs web travaillant en HTML, CSS et JavaScript. Edge Reflow – un outil de création de « responsive web design » pour élaborer des mises en page et des créations visuelles en CSS. Edge Web Fonts – un service gratuit de polices web Open Source pour les sites web et les applications.
  • 44. Introduction : plasticité des IHMs – Page 44 Exigence des supports mobiles Illustration des besoins en entreprise pour la téléphonie  Le développement rapide des nouveaux modèles de téléphones portables pose le problème de  faciliter l’implémentation de nouvelles solutions logicielles et  créer des interfaces utilisateurs.  La différence entre d’une plateforme de téléphone à l’autre pose les problèmes de  réutiliser les développements  développer des variantes des produits plus rapidement.
  • 45. Quand les chercheurs s’en mêlent…
  • 46. Equipes en présence Equipe IIHM Laboratoire IMAG à Grenoble  Gaelle Calvary & Joelle Coutaz http://iihm.imag.fr/publication/ Equipe RAINBOW Laboratoire I3S à Sophia Antipolis  Michel Riveill & Philippe Renevier & Audrey Occello & Anne Marie Dery http://proton.polytech.unice.fr/biblio/displayReference.php? team=0&&export=teamHtml&&idKeyWord1=1 Laboratoire HIIS à l’université de Pise  Fabio Paterno http://hiis.isti.cnr.it/publications.php Laboratoire CHI Université catholique de Louvain  Jean Vanderdonckt  http://uclouvain.academia.edu/JeanVanderdonckt/Papers Equipe IHM au Université de Valencienne  Anas Hariri & Sophie Lepreux & Christophe Kolski http://www.univ-valenciennes.fr/LAMIH-intra/site/commun/_gestion/pu
  • 47. Adaptation à la conception
  • 48. CAMELEON CONTEXT AWARE MODELLING FOR ENABLING AND LEVERAGING EFFECTIVE INTERACTION (IST R&D 2001-2004) Un cadre de référence : CAMELEON http://giove.isti.cnr.it/projects/cameleon.html
  • 49. Equipes et travaux en présence http://giove.isti.cnr.it/projects/cameleon.html I.S.T.I (Pisa, Italy) Université Catholique de Louvain (Louvain, Belgium) Université Joseph Fourier (Grenoble, France) http://giove.isti.cnr.it/projects/cameleon/external_publication s.html http://iihm.imag.fr/publication/C10a/ User Interface Plasticity: Model Driven Engineering to the Limit! http://iihm.imag.fr/publication/BDB+04a/ CAMELEON-RT: a Software Architecture Reference Model for Distributed, Migratable, and Plastic User Interfaces
  • 50. Introduction : plasticité des IHMs – Page 50 Phase de “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 Spécifier 1 fois -> N Interfaces  approche par modèles
  • 51. Introduction : plasticité des IHMs – Page 51 Tâches & Concepts IHM abstraite IHM concrète IHM finale Config 1 Différents niveaux d’abstraction
  • 52. 3G MOBILE CONTEXT SENSITIVE ADAPTABILITY - USER FRIENDLY MOBILE WORK PLACE FOR SEAMLESS ENTERPRISE APPLICATIONS CONSENSUS (PROJET Européen terminé en 2004) www.consensus-online.org Slides : Cédric Ulmer cedric.ulmer@sap.com
  • 53. Introduction : plasticité des IHMs – Page 53 Objective Cost-efficient development of usable device independent Applications For all SAP applications being able to be displayed on all devices 50.000 sets of application Uis need to be created!
  • 54. Introduction : plasticité des IHMs – Page 54 State of the Art: Dilemma - Cost vs. Usability Integrated adaptation Integrated Adaptation  semantic information  context information Cost Usability Recoding • semantic adaptation • device & application specific Transcoding • syntactic adaptation • technology specific
  • 55. Introduction : plasticité des IHMs – Page 55 Renderer Independent Markup Language: RIML Augment applications with metadata for adaptation engines to prepare presentation context- and device-specific Tools: Context-sensitive Annotation Editor Semantic Information: Relevance, splitting hints, context conditions,... Context: User Prefs, bandwith,.. Device Classes: UI/Technical aspects
  • 56. Introduction : plasticité des IHMs – Page 56 Renderer Independent Markup Language: RIML (contn’d)  RIML: Language Research  Usability Research based on  Focus on mobile devices  How easy / hard is it to use specific UI Components on different devices (not usability on application / process level)  Definition of device classes Usability Analysis leads to a limited number of Device Classes which represent devices behaving similar from a users / usability perspective
  • 57. Introduction : plasticité des IHMs – Page 57 Device-specific fine-grained Adaptation SYNTACTIC ADAPTATION Backend Data Application-specific Adaptation SEMANTIC ADAPTATION Information Splitting Filter Information Pruning Filter otherfilters... T1 T2 T1 T2 WML Transcoding Rules •T1/T2 = UI info Templates •Colors indicate importance •Mandatory •Optional •T1/T2 = UI info Templates •Colors indicate importance •Mandatory •Optional T1 T1 T2 T1 Adaptation Concept T1 T1 T2 T1 Template Editor Application data outbound processing
  • 59. Introduction : plasticité des IHMs – Page 59 Projet ASPECT Composition de composants et de leurs IHMs 2003
  • 60. Equipes et travaux en présence Equipe Rainbow http://atelierihm.polytech.unice.fr/bibliographie/ Anne-Marie Pinna-Dery and Jérémy Fierstone. Component model and programming : a first step to manage Human Computer Interaction Adaptation. In Mobile HCI’03, volume LNCS 2795, pages 456–460, Udine, Italy, September 2003. L. Chittaro (Ed.), Springer Verlag.
  • 61. Introduction : plasticité des IHMs – Page 61 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)
  • 62. Composition de composants  Fusion de menus correspondants aux composants (1)
  • 63. Composition de composants  Fusion de menus correspondants aux composants (2)
  • 64. Introduction : plasticité des IHMs – Page 64 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 : Amusing 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
  • 65. Introduction : plasticité des IHMs – Page 65 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 JTextFieldJLabel <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) ? ? ?
  • 66. Introduction : plasticité des IHMs – Page 66 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
  • 67. Introduction : plasticité des IHMs – Page 67 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 durand FicheClient IHM concrète IHM abstraite Composant métier JFrame1 Légende Instance interaction Controleur
  • 68. SERVFACE SERVICE ANNOTATIONS FOR USER INTERFACE COMPOSITION PROJET EUROPÉEN HTTP://141.76.40.158/SERVFACE/
  • 69. Equipes et travaux en présence  Equipe de Fabio Paterno : http://hiis.isti.cnr.it/publications.php 2009 : A Universal, Declarative, Multiple Abstraction-Level Language for Service-Oriented Applications in Ubiquitous Environments FABIO PATERNO’, CARMEN SANTORO, and LUCIO DAVIDE SPANO ISTI- CNR  ServFace http://www.servface.eu/index.php? option=com_docman&task=cat_view&gid=34&limit=5&limitstart=0&o rder=date&dir=DESC&Itemid=60 Service Composition at the Presentation Layer using Web Service Annotations
  • 70. Introduction : plasticité des IHMs – Page 70 Vue d’ensemble + Annotations de services avec des éléments d’interfaces + Composition de services + Génération de l’interface du service « composite » à partir des annotations + 2 approches: + 1ière approche : composition visuelle des services + 2ième approche : composition dirigée par les tâches
  • 72. 1ière approche: Composition Visuelle [Nestler et al., 2009] [Feldmann et al., 2009] End-User Programming
  • 73. Introduction : plasticité des IHMs – Page 73 1ière approche: Composition Visuelle [Nestler et al., 2009] [Feldmann et al., 2009] Services (WSDL) Services Annotés Auto-génération d’annotations + Annotations par un “Expert” Génération de l’interface “abstraite” Transformations: 1)M2M 2)M2C Interface Finale Service Annotator Service Composer MARIA
  • 74. 2ième approche: Dirigée par les tâches [Feldmann et al., 2009] [Janeiro, 2009]
  • 75. Introduction : plasticité des IHMs – Page 75 2ième approche: Dirigée par les tâches 8/15 [Feldmann et al., 2009] [Janeiro, 2009] Transformations: 1)M2M 2)M2C Interface Finale Services Génération d’annotations (IHM + tâches) + A partir des opérations du service + Une opération = une “tâche annotée” + Une “tâche annotée” = une tâche système Génération des tâches intéractives + Chaque tâche d’interaction = une fenêtre (par défaut) + Intervention du développeur : enlever les doublons Génération de l’interface “abstraite” MARIA
  • 76. Introduction : plasticité des IHMs – Page 76 UsiXML UsiXML USer Interface eXtensible Markup Language) XML pour applications interactives UsiXML pour des non développeurs : analystes, concepteurs, designers, ergonomes, chefs de projet, novices,... UsiXML : élément principal User Interface Description Language (UIDL), langage déclaratif décrivant les UI indépendament des caractéristiques physiques. www.usixml.org
  • 77. Introduction : plasticité des IHMs – Page 77 UsiXML •UsiXML abstraction des éléments de base : widgets, controls, containers, modalities, interaction techniques, .... •UsiXML indépendant device, plateforme et modalités •UsiXML reutilisation d’UI existantes dans un nouveau contexte par composition www.usixml.org
  • 78. Introduction : plasticité des IHMs – Page 78 UsiXML
  • 79. Equipes et travaux en présence Université catholique de Louvain : Jean Vanderdonckt Université Joseph Fourier Grenoble : Joelle Coutaz Publications Scientifiques du projet http://www.usixml.eu/effective-ie-done/scientific-publications http://www.usixml.eu/newsletters http://www.usixml.org/en/meixner-g-paterno-f-vanderdonckt-j-past- present-and-future-of-model-based-user-interface-development.html? IDC=465&IDD=1317
  • 80. Equipe IIHM Université Joseph Fourier Grenoble : Joelle Coutaz http://iihm.imag.fr/publication/ http://iihm.imag.fr/publication/MFC11b/ Flexible Plans for Adaptation by End-Users http://iihm.imag.fr/publication/GCM+09a/ Composition dynamique d’Interfaces Homme-Machine : Besoin utilisateur ou Défi de chercheur ?
  • 81. Equipe UCL Université catholique de Louvain : Jean Vanderdonckt http://uclouvain.academia.edu/JeanVanderdonckt/Papers Generating User Interface for Information Applications from Task, Domain and User models with DB-USE http://uclouvain.academia.edu/JeanVanderdonckt/Papers/270313/Gener ating_User_Interface_for_Information_Applications_from_Task_Do main_and_User_models_with_DB-USE User Interface Composition with UsiXML http://uclouvain.academia.edu/JeanVanderdonckt/Papers/270311/User_ Interface_Composition_with_UsiXML
  • 82. Introduction : plasticité des IHMs – Page 82 Equipe RAINBOW I3S Construction d’applications adaptables par composition
  • 83. Introduction : plasticité des IHMs – Page 83 Un modèle inspiré d’Arche pour les services Proposer un modèle d’architecture pour un service interactif N services fonctionnels et leurs interactions utilisateurs : comment fusionner le tout ? Services Fonctionnel Services D’interaction AdaptorAdaptor Dialogue
  • 84. Quid des assemblages Comment fusionner 2 services respectant l’architecture? Composition d’arches ? Assemblage des services fonctionnels Quid des dialogues ? Expression et fusion Quid des IHM? Expression et fusion
  • 85. Travaux de références pour le domaine utilisateur Travaux composants (Fractal, SOA, Noah, WCOMP MODEL) Gestion de la dynamique de l’application (apparition et disparition de composants et de services) Expression des assemblages (orchestration, règles isl, langages d’aspects…) Sureté des assemblages Travaux sur l’IDM Modèles et transformation de modèles Fusion de modèles Travaux en IHMs Plasticité des interfaces Expression de modèles pour l’IHM (taches, dialogues…)
  • 86. Nos spécificités Etre centré sur le dialogue : relation « fonctionnel et IHM » Déterminer le bon modèle de dialogue et avoir une architecture N-Arches Etre indépendant plateforme : s’appuyer sur un modèle Etre indépendant dispositifs : s’appuyer sur les modèles d’IHM pour la plasticité Faire collaborer des modèles et pouvoir les changer Assurer la dynamique de l’application : assembler à tous les niveaux Déduire au maximum les assemblages Trouver le bon niveau d’IHM abstrait
  • 87. Introduction : plasticité des IHMs – Page 87 Adapter l’interface à l’évolution du système (priorité 1) déduction Assemblage de services (Orchestrations, fusion d’aspects, Composants hiérarchiques) Assemblage d’IHMs (Utilisation d’IHMs abstraites, puis Projection sur devices) Intervention Si conflits Dialogues S’adresse au développeur
  • 88. Adapter l’interface aux besoins utilisateurs (priorité 2) 2 utilisateurs : le développeur ou l’utilisateur final Choix des services – organisation de l’IHM Choix des devices Dialogue Device Device IS Service Marks Service IS Service WebCal Service IS Service WebCal Service
  • 89. Adaptation du système (priorité 3) Déduire l’assemblage pour un utilisateur
  • 90. MPI Points communs aux adaptations visées Conception Exécution Noyau Fonctionnel IHM Evolution Noyau Fonctionnel Apparition, disparition de services Nouvelles Utilisations Préférences, Contexte d’utilisation … Adaptation Adaptation M IHM Un langage abstrait orienté composition : SUNML puis LAIM / Flex Un composant d’IHM : représentation fractal Un modèle de dialogue et un modèle de plateforme Une collaboration entre les modèles MP MD
  • 91. Equipes et travaux en présence Equipe Rainbow http://atelierihm.polytech.unice.fr/bibliographie/ Du fonctionnel vers les IHM http://proton.polytech.unice.fr/biblio/displayReference.php? export=htmlPerso&&nom=Joffroy&&prenom=Cédric Des IHM vers le fonctionnel https://nyx.unice.fr/publis/brel-pinna-dery-etal:2011.pdf

Editor's Notes

  1. Macromedia 2004 -&gt; Adobe 2005 silverlight 2006 javascript 1995 Xmlhttprequest 1999 dans IE5
  2. Try not to present too much about SAP and our technology but more general on mobile application development and what‘s missing
  3. Ziel der Folie: Einführung der allgemeinen Zielsetzung für das Projekts kosteneffizient – keine Individuallösungen benutzbar – einheitliche Benutzungsschnittstellen geräteunabhängig – Adaption der Anwendungen in Bezug auf Geräte/Kontext Achtung: Bild aus einem älteren Corporate Profile
  4. Ziel der Folie: Die Verfahren der automatischen und manuellen Adaption sind nicht ausreichend. Gewünscht ist eine hohe Benutzbarkeit bei relativ niedrigen Kosten. Der grüne Punkt ist der „Wunsch“ Ziel ist eine die Flexibilität auf einer Kurve zwischen automatischer Adaption – Integrierter Adaption – Manuelle Adaption zu ermöglichen. Auf dieser Linie kann eine hohe Steigerung der Benutzbarkeit mit geringem Kostenaufwand ermöglicht werden. Weitere Verbesserungen werden relativ teurer. Die Integration Adaption wird ermöglicht durch semantische Informationen – Beschreibung der Bedeutung/Wichtigkeit der einzelnen Komponenten (z.B. Ein-Ausgabefelder) und dem Bezug zu Kontextinformationen Kontext Information – Die Bereitstellung (und Verwendung) von Informationen zur Beschreibung des aktuellen Kontext. Zum Kontext gehören zum Beispiel Geräteklasse, Lokation, Umgebung des Benutzers (laut/leise, hell/dunkel, mobil/stationär)
  5. Raffinement de l’IHM, (op. UNION )
  6. On arrive au problème que si on souhaite représenter les besoins de tous les utilisateurs dans les différents contextes d’utilisation qu’ils peuvent avoir, ainsi que les différents services que l’on peut avoir. On se retrouve à devoir représenter toutes cela par une arche à chaque fois ce qui fait que l’on a une explosion au niveau du nombre d’arche, afin de représenter tout. Problème de capitalisation !!! L’utilisateur peut utiliser un même service sur différents dispositifs. Sur un dispositif différents services Un même service, un même dispositifs, différents utilisateurs. Problème de redondance des informations =&gt; l’utilisateur devra personnaliser à nouveau les services/dispositifs pour chacun des usages Travail à faire aussi bien au niveau développement qu’à l’exécution.
  7. On arrive au problème que si on souhaite représenter les besoins de tous les utilisateurs dans les différents contextes d’utilisation qu’ils peuvent avoir, ainsi que les différents services que l’on peut avoir. On se retrouve à devoir représenter toutes cela par une arche à chaque fois ce qui fait que l’on a une explosion au niveau du nombre d’arche, afin de représenter tout. Problème de capitalisation !!! L’utilisateur peut utiliser un même service sur différents dispositifs. Sur un dispositif différents services Un même service, un même dispositifs, différents utilisateurs. Problème de redondance des informations =&gt; l’utilisateur devra personnaliser à nouveau les services/dispositifs pour chacun des usages Travail à faire aussi bien au niveau développement qu’à l’exécution.
  8. Pour éviter à l’utilisateur de devoir refaire ses préférences, on se propose d’avoir une arche à n pied côtés SI m pieds côté SInt pour capitaliser les préférences. Rajouter des utilisateurs qui arrivent sur le DC pour bien illustrer que l’on a qu’une arche pour tous les utilisateurs et pas n arche pour les n utilisateurs. Titre à revoir !!! Découpage de haut niveau. Une boîte ne représente pas forcément un service mais un assemblage de services. Assemblage au niveau de l’adaptateur (appel à différents services du FC)
  9. Pour éviter à l’utilisateur de devoir refaire ses préférences, on se propose d’avoir une arche à n pied côtés SI m pieds côté SInt pour capitaliser les préférences. Rajouter des utilisateurs qui arrivent sur le DC pour bien illustrer que l’on a qu’une arche pour tous les utilisateurs et pas n arche pour les n utilisateurs. Titre à revoir !!! Découpage de haut niveau. Une boîte ne représente pas forcément un service mais un assemblage de services. Assemblage au niveau de l’adaptateur (appel à différents services du FC)
  10. Pour éviter à l’utilisateur de devoir refaire ses préférences, on se propose d’avoir une arche à n pied côtés SI m pieds côté SInt pour capitaliser les préférences. Rajouter des utilisateurs qui arrivent sur le DC pour bien illustrer que l’on a qu’une arche pour tous les utilisateurs et pas n arche pour les n utilisateurs. Titre à revoir !!! Découpage de haut niveau. Une boîte ne représente pas forcément un service mais un assemblage de services. Assemblage au niveau de l’adaptateur (appel à différents services du FC)
  11. Pour éviter à l’utilisateur de devoir refaire ses préférences, on se propose d’avoir une arche à n pied côtés SI m pieds côté SInt pour capitaliser les préférences. Rajouter des utilisateurs qui arrivent sur le DC pour bien illustrer que l’on a qu’une arche pour tous les utilisateurs et pas n arche pour les n utilisateurs. Titre à revoir !!! Découpage de haut niveau. Une boîte ne représente pas forcément un service mais un assemblage de services. Assemblage au niveau de l’adaptateur (appel à différents services du FC)
  12. Pour éviter à l’utilisateur de devoir refaire ses préférences, on se propose d’avoir une arche à n pied côtés SI m pieds côté SInt pour capitaliser les préférences. Rajouter des utilisateurs qui arrivent sur le DC pour bien illustrer que l’on a qu’une arche pour tous les utilisateurs et pas n arche pour les n utilisateurs. Titre à revoir !!! Découpage de haut niveau. Une boîte ne représente pas forcément un service mais un assemblage de services. Assemblage au niveau de l’adaptateur (appel à différents services du FC)