Flexibilité Méthodologique pour la conception d'IHM...
Transcript of Flexibilité Méthodologique pour la conception d'IHM...
Laboratoire d’Informatique de Grenoble Octobre 2013
Flexibilité Méthodologique pour la conception d'IHM Plastiques
Eric Céret en l’absence de, mais avec
Sophie Dupuy-Chessa et Gaëlle Calvary
Using So)ware Metrics in the Evalua6on of a Conceptual
Component Model
Équipe Ingénierie de l'Interaction Homme-Machine (IIHM) • Axes de recherche :
• Nouvelles techniques d'interaction • Plasticité des IHMs • Ingénierie : modèle, méthode, architecture logicielle • …
• ± 40 chercheurs, doctorants et ingénieurs
• Plasticité des IHMs • Ingénierie : modèle, méthode, architecture logicielle
Contexte académique Laboratoire d’Informatique de Grenoble (LIG) • Projet scientifique : l’Informatique ambiante et durable • 500 chercheurs, enseignants-chercheurs, doctorants et
personnels en support à la recherche • 22 équipes de recherche
liglab.fr iihm.imag.fr
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Adoption des méthodes
Les développeurs résistent à adopter / appliquer une méthode de conception et de développement :
• Inadéquation au projet
Adaptabilité des méthodes
→
F. Garzotto and V. Perrone, Industrial Acceptability of Web Design Methods: an Empirical Study, Journal of Web Engineering, vol. 6, no. 1, pp. 73–96, 2007.
C. Barry and M. Lang, A Survey of Multimedia and Web Development Techniques and Methodology Usage, IEEE MultiMedia, vol. 8, no. 2, pp. 52–60, Apr. 2001. B. Fitzgerald, An empirical investigation into the adoption of systems development methodologies, Information & Management, vol. 34, no. 6, pp. 317–328, 1998.
• Difficulté d’apprentissage
• Processus complexe, linéaire, rigide, inadapté aux compétences
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Méthodes
Nous définissons une méthode comme :
• Un modèle de processus (= comment, quand, par qui, … ?)
• Un modèle de produit (que produire ?)
• [Un ensemble d’outils]
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Flexibilité du modèle de processus
Approches Niveau de flexibilité SPEM Très par0elle
ISO/IEC 24744 Par0elle Méthodes Agiles Par0elle
Work Product Pool Assez bonne Méthodes situa0onnelles Par0elle
UML4SPM to WS-‐BEPL Par0elle SO2M Très par0elle BPMN Par0elle
Comment augmenter la flexibilité ?
E. Céret, S. Dupuy-Chessa, G. Calvary, M2Flex: a process metamodel for flexibility at runtime, IEEE Research Challenges in Information Science, RCIS’2013, Paris
→
Etude de l’existant sur 18 mois
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote
E. Céret, S. Dupuy-Chessa, G. Calvary, A. Front, D. Rieu A Taxonomy of Design Methods Process Models Information and Software Technology Volume 55, Issue 5 (mars 2013), pp. 795-821
Flexibilité du modèle de processus
Variabilité Complétude Distensibilité Granularabilité
Flexibilité Méthodes rigides
Sélection de méthode rigide
Méthodes multi-chemins
Personnalisation de méthodes multi-chemins
Construction de méthode
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Variabilité capacité du modèle de processus à proposer différents chemins parmi les étapes qui le constituent
Expression des besoins
Spécifica0ons
Concep0on générale
Concep0on détaillée
Réalisa0on / Codage
Tests unitaires
Tests d’intégra0on
ReceLe
Maintenance Interviews u0lisateurs →
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Variabilité
Inadéquation au projet Variabilité Difficulté d’apprentissage
Processus complexe Granularabilité Complétude Distensibilité
Processus linéaire
Processus rigide Inadaptation aux compétences
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Variabilité
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Granularabilité
Le modèle de processus : • exprime différents niveaux de détails
• offre différents (niveaux de) langages
… en fonction de l'expertise et des besoins du concepteur
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Créer Base de Données
Interview Modélisation entités-
associations
Schéma Entités-
associations
Transformation en
relationnel
…
En0té 1 Asso-‐cia0on En0té 2
Granularabilité : différents niveaux de détails
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Interview Identifier les choses, les
objets
Entités Identifier les liens entre les choses
Associations
Promote Flexibilité du modèle de processus
Granularabilité : différents (niveaux de) langages
Créer Base de Données
Interview Modélisation entités-
associations
Schéma Entités-
associations
Transformation en
relationnel
…
En0té 1 Asso-‐cia0on En0té 2
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Inadéquation au projet Variabilité Difficulté d’apprentissage
Processus complexe Granularabilité Complétude Distensibilité
Processus linéaire
Processus rigide Inadaptation aux compétences
Granularabilité
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Granularabilité
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Complétude Capacité du modèle de processus à accepter que les activités ne soient pas toutes réalisées (ou que les artefacts ne soient pas tous produits)
Expression des besoins
Spécifica0ons
Concep0on générale
Concep0on détaillée
Réalisa0on / Codage
Tests unitaires
Tests d’intégra0on
ReceLe
Maintenance
Composant pré-existant (ex : profils utilisateurs pré-définis)
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Inadéquation au projet Variabilité Difficulté d’apprentissage
Processus complexe Granularabilité Complétude Distensibilité
Processus linéaire
Processus rigide Inadaptation aux compétences
Complétude
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Complétude
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Distensibilité Le modèle de processus est dit distensible lorsqu'il permet que son utilisateur final (le développeur) ajoute ou retranche des activités selon ses besoins
Expression des besoins
Spécifica0ons
Concep0on générale
Concep0on détaillée
Réalisa0on / Codage
Tests unitaires
Tests d’intégra0on
ReceLe
Maintenance
Etude des risques
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Distensibilité
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Inadéquation au projet Variabilité Difficulté d’apprentissage
Processus complexe Granularabilité Complétude Distensibilité
Processus linéaire
Processus rigide Inadaptation aux compétences
Distensibilité
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Promote Flexibilité du modèle de processus
Inadéquation au projet Variabilité Difficulté d’apprentissage
Processus complexe Granularabilité Complétude Distensibilité
Processus linéaire
Processus rigide Inadaptation aux compétences
Flexibilité
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
M2Flex métamodèle de processus flexible
E. Céret, S. Dupuy-Chessa, G. Calvary, M2Flex: a process metamodel for flexibility at runtime, IEEE Research Challenges in Information Science, RCIS’2013, Paris
Variabilité
Distensibilité
( )trueisOptionala
trueisOptionalsinputasStatussActivitya
=⇒
=∧∈
∈∀∈∀
...
,,
Flexibilité du modèle de processus
Complétude
Granularabilité →
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
D2Flex : outil de conception de modèle de processus
Granularabilité
Complétude
Variabilité
Flexibilité du modèle de processus
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Conception de processus de conception / développement
R2Flex Exécution de M1Flex M1Flex
D2Flex
M2Flex
Modèle de processus de conception / développement
Adaptation de M1Flex
Promote Taxonomie des modèles de processus de conception / développement
Métamodèle de processus flexible
Distensibilité
→
Vue d’ensemble
Flexibilité du modèle de processus
Variabilité Granularabilité Complétude
Application concrète !
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Etude(s) de cas bidimensionnelle
Flexibilité du modèle de processus
● Etude de la plasticité pour les opérateurs mobiles en centrale nucléaire
● Conception d’un processus de développement adapté ● à l’existant ● au domaine ● aux concepteurs / développeurs
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Application : conception d’IHMs plastiques
• Croissance du nombre de dispositifs interactifs
• Multiplication des modalités d’interaction
• Désir de « continuité de service » simple
è Besoin d’adapter dynamiquement l’IHM à la situation
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
ATTENTION !
Plasticité des IHMs Problématique
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
LQNMb Le rôti est cuit ! →
Plasticité des IHMs Problématique
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
→
Plasticité des IHMs Problématique
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
→
Plasticité des IHMs Problématique
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
→
Plasticité des IHMs Problématique
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Adaptation automatique et dynamique au contexte d’usage
• Utilisateur
• Plateforme
• Environnement
(in)capacités, langue, préférences,… Dispositifs présents, systèmes, ressources Luminosité, bruits, contexte social,…
dans le respect des bonnes propriétés pour l’utilisateur
Calvary, G., Coutaz, J., and Thevenin, D. A Unifying Reference Framework for the Development of Plastic User Interfaces In M. Little and L. Nigay, eds., Engineering for Human-Computer Interaction. Springer Berlin / Heidelberg, 2001, 173–192.
→
Plasticité des IHMs Définition
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
• De nombreuses techniques :
• Développement de plusieurs IHMs pour des contextes choisis
• Adaptation pré-câblée ex. HTML+CSS : type de media, taille d’écran,… couplage téléviseur / téléphone par Samsung
• Langages portables (Java, QT, GTK…)
• …
→
Plasticité des IHMs Existant
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Existant : les limites Développements multiples
« Le Monde » sur PC Application sur iPhone
Limites : coût complexité couverture partielle des contextes possibles
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Existant : les limites HTML + CSS
« lemonde.fr » sur écran Aperçu avant impression
Limites : adaptation partielle à un contexte couverture partielle des contextes possibles
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Existant : les limites Adaptation pré-cablée
Google Drive sur iPhone lemonde.fr sur iPhone
Limites : dégradation de l’interface adaptation très partielle à un contexte couverture partielle des contextes possibles
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Existant : les limites Langages portables (Android SDK, QT)
TaskManager sur tablette Android TaskManager sur smartphone
Limites : contextes prédéfinis et partiels adaptation incomplète
→
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
• De nombreuses techniques : Ø Aucune n’offre une couverture complète
→
Plasticité des IHMs Existant
• Raisons principales Ø Quelques adaptations choisies dans
l’ensemble des possibles Ø codé / pré-câblé
• Challenge Ø Raisonner sur la génération de l’IHM Ø Ingénierie Dirigée par les Modèles
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
© JS Sottet
χ
Room
Cellar Kitchen Desk BedRoom µ
Domaine
Manage Home Comfort : Window
Select Room : HBox
Set Room Temp : HBox
Room Selec0on : Listbox
OK : BuWon
Input Temp : TextField
µ
CUI
Manage Home Confort
Select Room
Set Room Temp.
µ
AUI
µ Manage Home Confort
Select Room
View Room Temp.
>>[]
* Tâches
Set Room Temp.
>>[]
→
Plasticité des IHMs Modèles
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Modèle de tâches
IHM abstraite
IHM concrète
τ
τ
τ
IHM finale
U0lisateur
Plateforme
Environnement
QOC
Qualité
Domaine
Organisa0on
Transforma0on
Robot
Interacteurs
Programme
Workflow
Projets 2000 – 2013 Caméléon EMODE UsiXML V1 UsiXML v2
→
→
Plasticité des IHMs Modèle de processus
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
rule AuiInteractionUnit2CuiInteractionUnit{
from a:Abstract!AuiInteractionUnit to
c:Concrete!CuiInteractionUnit (title <- a.title, auiInteractionUnit2 <- a.auiInteractionUnit2, auiObject1 <- a.auiObject1)
}
rule AuiObject2CuiObject{
from
a: Abstract!AuiObject to
c:Concrete!CuiObject (id <- a.id, label <- a.label, longLabel <- a.l , help <- a.help, shortLabel <- a.shortLabel, cont
}
→
Plasticité des IHMs Adoption dans l’industrie
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
E. Céret, G. Calvary, S. Dupuy-Chessa, Flexibility in MDE for scaling up from simple applications to real case, studies illustration on a Nuclear Power Plant, 25ème Conférence francophone sur l’Interaction Homme-Machine (ACM IHM’2013, Bordeaux, Novembre 2013).
Conception d’IHMs pour le contrôle-commande
Plasticité des IHMs
→
Conclusions : • Equipe de développement convaincue de la faisabilité • Etude de cas à grande échelle en cours
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Conclusion
→
Conception de processus de conception / développement
R2Flex Exécution de M1Flex
Modèles
Transformations
FlexiLab
Serveur d’application Catalogue de services
Moteur de workflow …
Données et
Traitements
M1Flex D2Flex
M2Flex
Modèle de processus de conception / développement
Processus de génération d’IHM
Adaptation de M1Flex
Génération & adaptation
de l’IHM
Promote Taxonomie des modèles de processus de conception / développement
Métamodèle de processus flexible
1. Flexibilité des processus
• Probléma0que • Quadri-‐dimension • Processus flexible
2. Plas0cité des IHMs
• Problématique • Existant • Modélisation • Adaptation
3. Conclusion
Invitation
→
Aller sur www.design-methods.net • Consulter les méthodes classées • Comparer des méthodes • Proposer des méthodes !
Processus de transfert industriel en cours : merci pour vos marques d’intérêt !