SlideShare una empresa de Scribd logo
1 de 49
Code utilisable
Usable Software Design
Johan Martinsson, développeur indépendant (BEEBUZZINESS)
Margaux Perrin, UX designer (Sogilis)
@JOHAN_ALPS
@MARGAUXLERGO1
Comment créer les meilleures réussites business ?
A l’aide de code
bien fait
A l’aide
d’expériences
utilisateurs bien
pensées
@JOHAN_ALPS
@MARGAUXLERGO2
Nous sommes tous des concepteurs·trices d’expérience utilisateur
@JOHAN_ALPS
@MARGAUXLERGO
La clé : connaître ses utilisateurs·trices : leurs besoins, leurs problèmes
 Interviews
 Observation d’activité
 Tests utilisateurs
 Questionnaires de satisfaction
A l’échelle du code :
The user of software design is
the developer
Alexandru Bolboaca
3
Ce n’est pas la faute de l’utilisateur·trice, c’est la faute du design
Source : http://www.lsd-mag.com/blog/design-inconfortable/
@JOHAN_ALPS
@MARGAUXLERGO4
Identifier les besoins : do-goals vs be-goals
@JOHAN_ALPS
@MARGAUXLERGO
Hassenzahl, 2003 : les gens perçoivent les produits interactifs selon deux dimensions :
Qualités pragmatiques
Qualités hédoniques
Capacité à soutenir l’accomplissement de « do-goals »
Exemples de do-goals : passer un appel, acheter un livre…
Capacité à soutenir l’accomplissement de « be-goals »
Exemples de be-goals : être compétent, être en relation avec
les autres, être autonome…
La satisfaction des besoins psychologiques est au cœur de l’UX
Hassenzahl, M. (2003). The thing and I: understanding the relationship between user and product. In M.Blythe, C. Overbeeke,
A. F. Monk, & P. C. Wright (Eds.), Funology: From Usability to Enjoyment (pp. 31-42). Dordrecht: Kluwer Academic Publishers.
5
Do-goals vs Be-goals
@JOHAN_ALPS
@MARGAUXLERGO
Besoin de…
Communiquer ? S’éclairer ? Se déplacer ?
Ou plutôt… Relationnel ? Autonomie, sécurité ? Stimulation,
réalisation de soi ?
6
Dans le cadre du développement
@JOHAN_ALPS
@MARGAUXLERGO
 Do-goals : développer sur du code existant (enrichir, débugger…)
 Be-goals : ?
Lallemand, C. (2015). Towards Consolidated Methods for the Design and Evaluation of User Experience.
(Doctoral dissertation). University of Luxembourg. https://publicaAons.uni.lu/handle/10993/21463
Satisfaction de ces BE-goals : salarié·e·s et patron·ne·s content·e·s
7
Grille d’évaluation
@JOHAN_ALPS
@MARGAUXLERGO
Nielson (1999) : L’utilisabilité se définit à travers 5 composantes
Bastien & Scapin (1993) : 8 critères
ergonomiques pour évaluer une
interface homme-machine
Nielsen, J. (1994). Usability Engineering. Morgan Kaufmann Publishers.
Bastien C. & Scapin D. (1993). Critères Ergonomiques pour l’Évaluation d’Interfaces Utilisateurs (version 2.1), INRIA, Technical report N° 156
8
Identifier les problèmes de design
@JOHAN_ALPS
@MARGAUXLERGO9
Code review
@JOHAN_ALPS
@MARGAUXLERGO
Analyser ce qu’on n’aime pas
10
Interviews
Qu’est ce qui était difficile dans le dernier sprint ?
Quelle partie du code était difficile à comprendre ?
Où as-tu eu peur d’introduire une régression ?
Alexandru Bolboaca
@JOHAN_ALPS
@MARGAUXLERGO11
Tests utilisateurs
@JOHAN_ALPS
@MARGAUXLERGO
Observer quelqu’un qui commence une story
12
Exemples…
@JOHAN_ALPS @MARGAUXLERGO 13
Incitation
@JOHAN_ALPS
@MARGAUXLERGO
 Autonomie Vie
courante
Design de poignées de portes : pousser ou tirer ? USB : dans quel sens ?
Moyens mis en œuvre pour amener les utilisateurs·trices à effectuer des actions spécifiques, mécanismes
faisant connaître aux utilisateurs·trices les alternatives
14
Incitation
@JOHAN_ALPS
@MARGAUXLERGO
Écrans
Voyage SNCF
Moyens mis en œuvre pour amener les utilisateurs·trices à effectuer des actions spécifiques, mécanismes
faisant connaître aux utilisateurs·trices les alternatives
 Autonomie
15
Incitation
@JOHAN_ALPS
@MARGAUXLERGO
Code
Moyens mis en œuvre pour amener les utilisateurs·trices à effectuer des actions spécifiques, mécanismes
faisant connaître aux utilisateurs·trices les alternatives
 Autonomie
16
Homogénéité et cohérence
@JOHAN_ALPS
@MARGAUXLERGO
Vie
courante
Source : http://lesmoyensgrands.over-blog.com
Exercice de
maternel
Choix de conception conservés pour des contextes identiques, et différents pour des contextes différents
 Autonomie
17
Homogénéité et cohérence
@JOHAN_ALPS
@MARGAUXLERGO
Écrans
Facebook
Choix de conception conservés pour des contextes identiques, et différents pour des contextes différents
 Autonomie
18
Homogénéité et cohérence
@JOHAN_ALPS
@MARGAUXLERGO
Code
Choix de conception conservés pour des contextes identiques, et différents pour des contextes différents
 Autonomie
- Alexandru Bolboaca
19
Compatibilité
@JOHAN_ALPS
@MARGAUXLERGO
Interface adaptée aux caractéristiques des utilisateurs·trices, au contexte, aux tâches
Source : http://www.designferia.com/meubles-design-chambre-enfant-lola
Vie
courante
 Autonomie
20
Wordpress : Visuel ou Texte
Compatibilité
@JOHAN_ALPS
@MARGAUXLERGO
Interface adaptée aux caractéristiques des utilisateurs·trices, au contexte, aux tâches
Écrans
msPaint Adobe Photoshop
 Autonomie
21
Compatibilité
@JOHAN_ALPS
@MARGAUXLERGO
Interface adaptée aux caractéristiques des utilisateurs·trices, au contexte, aux tâches
Code
 Autonomie
22
Lisibilité
@JOHAN_ALPS
@MARGAUXLERGO
Caractéristiques lexicales de présentation des informations
Vie
courante
 Compétence
23
Lisibilité
@JOHAN_ALPS
@MARGAUXLERGO
Caractéristiques lexicales de présentation des informations
Écrans
Bonnes pratiques :
 Taille de police : min = 12pt, normal = 16pt
 Taille des lignes : 45-75 caractères (best = 66) espaces compris
 Interlignes : 1,5x la taille de la police ; entre 2 paragraphes : 1,5x l’interligne
 Contraste : différence de contraste entre couleur du texte et couleur du fond : 70%
Wikipédia Wikiwand
 Compétence
24
Lisibilité
@JOHAN_ALPS
@MARGAUXLERGO
Caractéristiques lexicales de présentation des informations
Code
 Compétence
25
Lisibilité
@JOHAN_ALPS
@MARGAUXLERGO
Caractéristiques lexicales de présentation des informations
Code
 Compétence
26
Densité informationnelle
@JOHAN_ALPS
@MARGAUXLERGO
Limiter le nombre d’informations présentées en même temps
Vie
courante
 Compétence
Tiens toi
droite
Souris
Dis bonjour
Dis merci
Dis s’il te
plait
Ne mets pas
les coudes
sur la table
Propose
ton aideNe mets pas
tes doigts
dans ton nez
27
Densité informationnelle
@JOHAN_ALPS
@MARGAUXLERGO
Limiter le nombre d’informations présentées en même temps
Écrans
Cdiscount Google
 Compétence
28
Densité informationnelle
@JOHAN_ALPS
@MARGAUXLERGO
Limiter le nombre d’informations présentées en même temps
Code
 Compétence
29
Protection contre les erreurs
@JOHAN_ALPS
@MARGAUXLERGO
Moyens pour détecter et prévenir les erreurs
Vie
courante
 Contrôle
30
Protection contre les erreurs
@JOHAN_ALPS
@MARGAUXLERGO
Moyens pour détecter et prévenir les erreurs
Écrans
Google
Agenda
Suppression groupée
dans Gmail
 Contrôle
31
Protection contre les erreurs
@JOHAN_ALPS
@MARGAUXLERGO
Moyens pour corriger les erreurs
Code
 Contrôle
32
Protection contre les erreurs
@JOHAN_ALPS
@MARGAUXLERGO
Rendre impossible l’erreur
Code
 Contrôle
33
Feedback immédiat
@JOHAN_ALPS
@MARGAUXLERGO
Réponse immédiate renseignant sur l’action accomplie et son résultat
Vie
courante
 Contrôle
34
Feedback immédiat
@JOHAN_ALPS
@MARGAUXLERGO
Réponse immédiate renseignant sur l’action accomplie et son résultat
Écrans
Amazon Cdiscount
 Contrôle
35
Feedback immédiat
@JOHAN_ALPS
@MARGAUXLERGO
Réponse immédiate renseignant sur l’action accomplie et son résultat
Code
$ npm test
Executed 364 of 364 SUCCESS (2.663 secs)
TOTAL: 364 SUCCESS
 Contrôle
36
Qualité des messages d’erreur
@JOHAN_ALPS
@MARGAUXLERGO
Informations pertinentes et compréhensibles sur la nature de l’erreur et les actions à entreprendre
Vie
courante
Source : http://www.forum-auto.com
Astra061 : Bonjour,
En ce moment, ma voiture a un voyant qui s'allume et qui ne disparaît jamais. Il
s'agit du voyant d'une voiture avec une clé. Savez vous où est ce que ça cloche ?
Merci d'avance
JPR49 : bonjour,
Défaut moteur. il y a un code à relever, Ce forum regorge de sujets concernant
la lecture des codes.
valentin59​430 : Salut , voyant avec un clé et une voiture c'est pas l'alarme ?
td 100 : Surement une bougie de préchauffage HS si tu n'a rien remarqué
comme symptômes. Néanmoins il devrait s'éteindre arrivé à 90°
 Contrôle
37
Qualité des messages d’erreur
@JOHAN_ALPS
@MARGAUXLERGO
Informations pertinentes et compréhensibles sur la nature de l’erreur et les actions à entreprendre
Écrans
Google AirFrance
 Contrôle
38
Qualité des messages d’erreur
@JOHAN_ALPS
@MARGAUXLERGO
Informations pertinentes et compréhensibles sur la nature de l’erreur et les actions à entreprendre
Code
 Contrôle
39
Résumé
Apprentissage et mémorabilité :
- Inciter en proposant les alternatives
- Homogénéité et cohérence dans l’écriture
- Rendre le code compatible avec les développeurs·ses, ou l’inverse !
Efficience :
- Lisibilité des nommages
- Brièveté & densité informationnelle :
factoriser le code
Autonomie
Compétence
@JOHAN_ALPS
@MARGAUXLERGO
Erreurs :
- Rendre les erreurs impossibles
- Feedback immédiat : tests
- Qualité des messages d’erreur
Contrôle
@JOHAN_ALPS @MARGAUXLERGO 40
Satisfaction des besoins  Réussite business
@JOHAN_ALPS
@MARGAUXLERGO
BE-goals
:
 Autonom
ie
 Compéte
nce
 Contrôle
Rende
ment
Lassitu
de
Frustrati
on
Conflits
41
1. Code écrit pour être lu
2. Facile de trouver où modifier le code
3. Effet de bord minimal pour chaque modification
4. Simple ET rapide de valider une modification
5. Code peu dupliqué
Le besoin avant la solution
TDD et utilisabilité?
TDD
◦ Given, When, Then
◦ Affirmation
@JOHAN_ALPS
@MARGAUXLERGO43
Essai & erreur
◦ Modifier, Démarrer, click-click-click, Observer
◦ Exploration
TDD et utilisabilité?
Resources.delete()
Broadcast()
resetCurrent()
toggleSelectionMode()
Delete()
Manager.fire()
Navigator.delete()
Code smell !
Shot gun surgery
@JOHAN_ALPS
@MARGAUXLERGO44
TDD et utilisabilité?
Le TDD requiert une maitrise cognitive.
Si on a pas cette maitrise on a un problème d’utilisabilité.
TDD est un révélateur.
@JOHAN_ALPS
@MARGAUXLERGO45
Contraintes
Physiques
◦ Constructeurs, objets, …
Culturels
◦ Accords d’équipe: jamais null, ..
Sémantiques
◦ La connaissance métier: DDD, le métier
dans le code
Logiques
◦ ???
@JOHAN_ALPS
@MARGAUXLERGO46
Physiques
Culturels Sémantiques
Logiques
http://wiki.c2.com/?FirstLawOfProgramming
Take home message
Ce n’est pas la faute de l’utilisateur
Nous ne sommes pas notre utilisateur  tester
Besoin avant solution
Coder « utilisable »
@JOHAN_ALPS
@MARGAUXLERGO
Le business a besoin de code utilisable
48
Ressources
Références scientifiques
• Bolboaca A. (2016). Usable software design leanpub.com/usablesoftwaredesign
• Norman D. (1988). The Design of Everyday Things
• Van Boven, L., & Gilovich, T. (2003). To do or to have? That is the question. Journal of Personality and Social Psychology, 85, 1193–1202.
• Hassenzahl, M. (2003). The thing and I: understanding the relationship between user and product. In M.Blythe, C. Overbeeke, A. F. Monk, &
P. C. Wright (Eds.), Funology: From Usability to Enjoyment (pp. 31-42). Dordrecht: Kluwer Academic Publishers.
• Lallemand, C. (2015). Towards Consolidated Methods for the Design and Evaluation of User Experience. (Doctoral dissertation). University of
Luxembourg. https://publicaAons.uni.lu/handle/10993/21463
• Nielsen, J. (1994). Usability Engineering. Morgan Kaufmann Publishers.
• Bastien C. & Scapin D. (1993). Critères Ergonomiques pour l’Évaluation d’Interfaces Utilisateurs (version 2.1), INRIA, Technical report N° 156
Exemples vie courante
• http://lesmoyensgrands.over-blog.com
• http://www.lsd-mag.com/blog/design-inconfortable/
• http://www.forum-auto.com martinsson.johan@gmail.com
martinsson-johan.blogspot.fr
@johan_alps
ergo@margaux-perrin.com
margaux-perrin.com
@margauxlergo

Más contenido relacionado

Similar a Usable software design - code utilisable

Agile tour Lille 2015 allies ensemble contre les defauts
Agile tour Lille 2015 allies ensemble contre les defautsAgile tour Lille 2015 allies ensemble contre les defauts
Agile tour Lille 2015 allies ensemble contre les defautsAntoine Blk
 
Optimiser l'expérience utilisateur de l'Open Source
Optimiser l'expérience utilisateur de l'Open SourceOptimiser l'expérience utilisateur de l'Open Source
Optimiser l'expérience utilisateur de l'Open SourceMarc Wabnitz
 
Réussir son lancement mobile
Réussir son lancement mobileRéussir son lancement mobile
Réussir son lancement mobileJérémie Clévy
 
Ergonomie et taux de clic Webx D&N 2012
Ergonomie et taux de clic Webx D&N 2012Ergonomie et taux de clic Webx D&N 2012
Ergonomie et taux de clic Webx D&N 2012jessica_papiot
 
WEBXDN2012 - Ergonomie & Taux de clics
WEBXDN2012 - Ergonomie & Taux de clicsWEBXDN2012 - Ergonomie & Taux de clics
WEBXDN2012 - Ergonomie & Taux de clicswebxdn
 
Soirée Qualité Logicielle avec Sonar
Soirée Qualité Logicielle avec SonarSoirée Qualité Logicielle avec Sonar
Soirée Qualité Logicielle avec SonarElsassJUG
 
Une transformation digitale par le lean product engineering
Une transformation digitale par le lean product engineeringUne transformation digitale par le lean product engineering
Une transformation digitale par le lean product engineeringAntoine Contal
 
Conférence Paris Retail Week : sur la voix d'un futur moins digital ?
Conférence Paris Retail Week : sur la voix d'un futur moins digital ?Conférence Paris Retail Week : sur la voix d'un futur moins digital ?
Conférence Paris Retail Week : sur la voix d'un futur moins digital ?Fabernovel
 
Solutions Linux2008 Construire Sa Vision Qualite
Solutions Linux2008 Construire Sa Vision QualiteSolutions Linux2008 Construire Sa Vision Qualite
Solutions Linux2008 Construire Sa Vision Qualitefrancois.le.droff
 
Lbv Dev Meetup #3
Lbv Dev Meetup #3Lbv Dev Meetup #3
Lbv Dev Meetup #3LbvDev
 
Responsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, MéthodologieResponsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, Méthodologieekino
 
UX & Accessibilité : les clés pour réussir
UX & Accessibilité : les clés pour réussirUX & Accessibilité : les clés pour réussir
UX & Accessibilité : les clés pour réussirChristophe Clouzeau
 
Introduction à l'ergonomie - Drupal Lyon
Introduction à l'ergonomie - Drupal LyonIntroduction à l'ergonomie - Drupal Lyon
Introduction à l'ergonomie - Drupal LyonOlivier Lorrain
 
Formation : "Concevoir et promouvoir son site Internet"
Formation : "Concevoir et promouvoir son site Internet"Formation : "Concevoir et promouvoir son site Internet"
Formation : "Concevoir et promouvoir son site Internet"Synerg'hetic
 
IA et Test - MeetUp MoT - Julien Van Quackebeke - CEO All4Test
IA et Test - MeetUp MoT - Julien Van Quackebeke - CEO All4TestIA et Test - MeetUp MoT - Julien Van Quackebeke - CEO All4Test
IA et Test - MeetUp MoT - Julien Van Quackebeke - CEO All4TestMimoun Kissi 🤖
 
Du Code & Des Humains - Agile Tour Strasbourg 2017
Du Code & Des Humains - Agile Tour Strasbourg 2017Du Code & Des Humains - Agile Tour Strasbourg 2017
Du Code & Des Humains - Agile Tour Strasbourg 2017Nicolas VERINAUD
 
Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !
Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !
Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !Simplicité Software
 

Similar a Usable software design - code utilisable (20)

Agile tour Lille 2015 allies ensemble contre les defauts
Agile tour Lille 2015 allies ensemble contre les defautsAgile tour Lille 2015 allies ensemble contre les defauts
Agile tour Lille 2015 allies ensemble contre les defauts
 
Optimiser l'expérience utilisateur de l'Open Source
Optimiser l'expérience utilisateur de l'Open SourceOptimiser l'expérience utilisateur de l'Open Source
Optimiser l'expérience utilisateur de l'Open Source
 
Réussir son lancement mobile
Réussir son lancement mobileRéussir son lancement mobile
Réussir son lancement mobile
 
StarDust @SHAKE 2014
StarDust @SHAKE 2014StarDust @SHAKE 2014
StarDust @SHAKE 2014
 
Ergonomie et taux de clic Webx D&N 2012
Ergonomie et taux de clic Webx D&N 2012Ergonomie et taux de clic Webx D&N 2012
Ergonomie et taux de clic Webx D&N 2012
 
WEBXDN2012 - Ergonomie & Taux de clics
WEBXDN2012 - Ergonomie & Taux de clicsWEBXDN2012 - Ergonomie & Taux de clics
WEBXDN2012 - Ergonomie & Taux de clics
 
Soirée Qualité Logicielle avec Sonar
Soirée Qualité Logicielle avec SonarSoirée Qualité Logicielle avec Sonar
Soirée Qualité Logicielle avec Sonar
 
Une transformation digitale par le lean product engineering
Une transformation digitale par le lean product engineeringUne transformation digitale par le lean product engineering
Une transformation digitale par le lean product engineering
 
Conférence Paris Retail Week : sur la voix d'un futur moins digital ?
Conférence Paris Retail Week : sur la voix d'un futur moins digital ?Conférence Paris Retail Week : sur la voix d'un futur moins digital ?
Conférence Paris Retail Week : sur la voix d'un futur moins digital ?
 
Solutions Linux2008 Construire Sa Vision Qualite
Solutions Linux2008 Construire Sa Vision QualiteSolutions Linux2008 Construire Sa Vision Qualite
Solutions Linux2008 Construire Sa Vision Qualite
 
Etude Stardust
Etude StardustEtude Stardust
Etude Stardust
 
Présentation stardust
Présentation stardustPrésentation stardust
Présentation stardust
 
Lbv Dev Meetup #3
Lbv Dev Meetup #3Lbv Dev Meetup #3
Lbv Dev Meetup #3
 
Responsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, MéthodologieResponsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, Méthodologie
 
UX & Accessibilité : les clés pour réussir
UX & Accessibilité : les clés pour réussirUX & Accessibilité : les clés pour réussir
UX & Accessibilité : les clés pour réussir
 
Introduction à l'ergonomie - Drupal Lyon
Introduction à l'ergonomie - Drupal LyonIntroduction à l'ergonomie - Drupal Lyon
Introduction à l'ergonomie - Drupal Lyon
 
Formation : "Concevoir et promouvoir son site Internet"
Formation : "Concevoir et promouvoir son site Internet"Formation : "Concevoir et promouvoir son site Internet"
Formation : "Concevoir et promouvoir son site Internet"
 
IA et Test - MeetUp MoT - Julien Van Quackebeke - CEO All4Test
IA et Test - MeetUp MoT - Julien Van Quackebeke - CEO All4TestIA et Test - MeetUp MoT - Julien Van Quackebeke - CEO All4Test
IA et Test - MeetUp MoT - Julien Van Quackebeke - CEO All4Test
 
Du Code & Des Humains - Agile Tour Strasbourg 2017
Du Code & Des Humains - Agile Tour Strasbourg 2017Du Code & Des Humains - Agile Tour Strasbourg 2017
Du Code & Des Humains - Agile Tour Strasbourg 2017
 
Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !
Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !
Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !
 

Más de martinsson

Split my monolith - Workshop
Split my monolith - WorkshopSplit my monolith - Workshop
Split my monolith - Workshopmartinsson
 
TDD de la vraie vie - AlpesCraft 2022
TDD de la vraie vie - AlpesCraft 2022TDD de la vraie vie - AlpesCraft 2022
TDD de la vraie vie - AlpesCraft 2022martinsson
 
Testing strategies
Testing strategiesTesting strategies
Testing strategiesmartinsson
 
Testing strategies visualized
Testing strategies visualizedTesting strategies visualized
Testing strategies visualizedmartinsson
 
Split my monolith! Workshop
Split my monolith! Workshop Split my monolith! Workshop
Split my monolith! Workshop martinsson
 
No Agility without Continuous Delivery
No Agility without Continuous DeliveryNo Agility without Continuous Delivery
No Agility without Continuous Deliverymartinsson
 
No agility without continuous delivery frugagile
No agility without continuous delivery   frugagileNo agility without continuous delivery   frugagile
No agility without continuous delivery frugagilemartinsson
 
De legacy au tdd agilegrenoble
De legacy au tdd   agilegrenobleDe legacy au tdd   agilegrenoble
De legacy au tdd agilegrenoblemartinsson
 
De legacy au tdd - Agile pays basque
De legacy au tdd  - Agile pays basqueDe legacy au tdd  - Agile pays basque
De legacy au tdd - Agile pays basquemartinsson
 
Usable software design ncraft
Usable software design ncraftUsable software design ncraft
Usable software design ncraftmartinsson
 
Pyramide des tests
Pyramide des testsPyramide des tests
Pyramide des testsmartinsson
 
Changer Pour Mieux Coder
Changer Pour Mieux CoderChanger Pour Mieux Coder
Changer Pour Mieux Codermartinsson
 

Más de martinsson (14)

Split my monolith - Workshop
Split my monolith - WorkshopSplit my monolith - Workshop
Split my monolith - Workshop
 
TDD de la vraie vie - AlpesCraft 2022
TDD de la vraie vie - AlpesCraft 2022TDD de la vraie vie - AlpesCraft 2022
TDD de la vraie vie - AlpesCraft 2022
 
Testing strategies
Testing strategiesTesting strategies
Testing strategies
 
Testing strategies visualized
Testing strategies visualizedTesting strategies visualized
Testing strategies visualized
 
Split my monolith! Workshop
Split my monolith! Workshop Split my monolith! Workshop
Split my monolith! Workshop
 
No Agility without Continuous Delivery
No Agility without Continuous DeliveryNo Agility without Continuous Delivery
No Agility without Continuous Delivery
 
No agility without continuous delivery frugagile
No agility without continuous delivery   frugagileNo agility without continuous delivery   frugagile
No agility without continuous delivery frugagile
 
De legacy au tdd agilegrenoble
De legacy au tdd   agilegrenobleDe legacy au tdd   agilegrenoble
De legacy au tdd agilegrenoble
 
De legacy au tdd - Agile pays basque
De legacy au tdd  - Agile pays basqueDe legacy au tdd  - Agile pays basque
De legacy au tdd - Agile pays basque
 
Usable software design ncraft
Usable software design ncraftUsable software design ncraft
Usable software design ncraft
 
Pyramide des tests
Pyramide des testsPyramide des tests
Pyramide des tests
 
Changer Pour Mieux Coder
Changer Pour Mieux CoderChanger Pour Mieux Coder
Changer Pour Mieux Coder
 
Mikado
MikadoMikado
Mikado
 
Mikado
MikadoMikado
Mikado
 

Último

Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Ville de Châteauguay
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...Institut de l'Elevage - Idele
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéInstitut de l'Elevage - Idele
 
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...Institut de l'Elevage - Idele
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageInstitut de l'Elevage - Idele
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestionyakinekaidouchi1
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...Institut de l'Elevage - Idele
 
optimisation logistique MLT_231102_155827.pdf
optimisation logistique  MLT_231102_155827.pdfoptimisation logistique  MLT_231102_155827.pdf
optimisation logistique MLT_231102_155827.pdfSoukainaMounawir
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...Institut de l'Elevage - Idele
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesInstitut de l'Elevage - Idele
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de planchermansouriahlam
 
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...Institut de l'Elevage - Idele
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusInstitut de l'Elevage - Idele
 
firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirstjob4
 

Último (15)

Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversité
 
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestion
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
 
JTC 2024 Bâtiment et Photovoltaïque.pdf
JTC 2024  Bâtiment et Photovoltaïque.pdfJTC 2024  Bâtiment et Photovoltaïque.pdf
JTC 2024 Bâtiment et Photovoltaïque.pdf
 
optimisation logistique MLT_231102_155827.pdf
optimisation logistique  MLT_231102_155827.pdfoptimisation logistique  MLT_231102_155827.pdf
optimisation logistique MLT_231102_155827.pdf
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentes
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de plancher
 
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
 
firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdf
 

Usable software design - code utilisable

  • 1. Code utilisable Usable Software Design Johan Martinsson, développeur indépendant (BEEBUZZINESS) Margaux Perrin, UX designer (Sogilis) @JOHAN_ALPS @MARGAUXLERGO1
  • 2. Comment créer les meilleures réussites business ? A l’aide de code bien fait A l’aide d’expériences utilisateurs bien pensées @JOHAN_ALPS @MARGAUXLERGO2
  • 3. Nous sommes tous des concepteurs·trices d’expérience utilisateur @JOHAN_ALPS @MARGAUXLERGO La clé : connaître ses utilisateurs·trices : leurs besoins, leurs problèmes  Interviews  Observation d’activité  Tests utilisateurs  Questionnaires de satisfaction A l’échelle du code : The user of software design is the developer Alexandru Bolboaca 3
  • 4. Ce n’est pas la faute de l’utilisateur·trice, c’est la faute du design Source : http://www.lsd-mag.com/blog/design-inconfortable/ @JOHAN_ALPS @MARGAUXLERGO4
  • 5. Identifier les besoins : do-goals vs be-goals @JOHAN_ALPS @MARGAUXLERGO Hassenzahl, 2003 : les gens perçoivent les produits interactifs selon deux dimensions : Qualités pragmatiques Qualités hédoniques Capacité à soutenir l’accomplissement de « do-goals » Exemples de do-goals : passer un appel, acheter un livre… Capacité à soutenir l’accomplissement de « be-goals » Exemples de be-goals : être compétent, être en relation avec les autres, être autonome… La satisfaction des besoins psychologiques est au cœur de l’UX Hassenzahl, M. (2003). The thing and I: understanding the relationship between user and product. In M.Blythe, C. Overbeeke, A. F. Monk, & P. C. Wright (Eds.), Funology: From Usability to Enjoyment (pp. 31-42). Dordrecht: Kluwer Academic Publishers. 5
  • 6. Do-goals vs Be-goals @JOHAN_ALPS @MARGAUXLERGO Besoin de… Communiquer ? S’éclairer ? Se déplacer ? Ou plutôt… Relationnel ? Autonomie, sécurité ? Stimulation, réalisation de soi ? 6
  • 7. Dans le cadre du développement @JOHAN_ALPS @MARGAUXLERGO  Do-goals : développer sur du code existant (enrichir, débugger…)  Be-goals : ? Lallemand, C. (2015). Towards Consolidated Methods for the Design and Evaluation of User Experience. (Doctoral dissertation). University of Luxembourg. https://publicaAons.uni.lu/handle/10993/21463 Satisfaction de ces BE-goals : salarié·e·s et patron·ne·s content·e·s 7
  • 8. Grille d’évaluation @JOHAN_ALPS @MARGAUXLERGO Nielson (1999) : L’utilisabilité se définit à travers 5 composantes Bastien & Scapin (1993) : 8 critères ergonomiques pour évaluer une interface homme-machine Nielsen, J. (1994). Usability Engineering. Morgan Kaufmann Publishers. Bastien C. & Scapin D. (1993). Critères Ergonomiques pour l’Évaluation d’Interfaces Utilisateurs (version 2.1), INRIA, Technical report N° 156 8
  • 9. Identifier les problèmes de design @JOHAN_ALPS @MARGAUXLERGO9
  • 11. Interviews Qu’est ce qui était difficile dans le dernier sprint ? Quelle partie du code était difficile à comprendre ? Où as-tu eu peur d’introduire une régression ? Alexandru Bolboaca @JOHAN_ALPS @MARGAUXLERGO11
  • 14. Incitation @JOHAN_ALPS @MARGAUXLERGO  Autonomie Vie courante Design de poignées de portes : pousser ou tirer ? USB : dans quel sens ? Moyens mis en œuvre pour amener les utilisateurs·trices à effectuer des actions spécifiques, mécanismes faisant connaître aux utilisateurs·trices les alternatives 14
  • 15. Incitation @JOHAN_ALPS @MARGAUXLERGO Écrans Voyage SNCF Moyens mis en œuvre pour amener les utilisateurs·trices à effectuer des actions spécifiques, mécanismes faisant connaître aux utilisateurs·trices les alternatives  Autonomie 15
  • 16. Incitation @JOHAN_ALPS @MARGAUXLERGO Code Moyens mis en œuvre pour amener les utilisateurs·trices à effectuer des actions spécifiques, mécanismes faisant connaître aux utilisateurs·trices les alternatives  Autonomie 16
  • 17. Homogénéité et cohérence @JOHAN_ALPS @MARGAUXLERGO Vie courante Source : http://lesmoyensgrands.over-blog.com Exercice de maternel Choix de conception conservés pour des contextes identiques, et différents pour des contextes différents  Autonomie 17
  • 18. Homogénéité et cohérence @JOHAN_ALPS @MARGAUXLERGO Écrans Facebook Choix de conception conservés pour des contextes identiques, et différents pour des contextes différents  Autonomie 18
  • 19. Homogénéité et cohérence @JOHAN_ALPS @MARGAUXLERGO Code Choix de conception conservés pour des contextes identiques, et différents pour des contextes différents  Autonomie - Alexandru Bolboaca 19
  • 20. Compatibilité @JOHAN_ALPS @MARGAUXLERGO Interface adaptée aux caractéristiques des utilisateurs·trices, au contexte, aux tâches Source : http://www.designferia.com/meubles-design-chambre-enfant-lola Vie courante  Autonomie 20
  • 21. Wordpress : Visuel ou Texte Compatibilité @JOHAN_ALPS @MARGAUXLERGO Interface adaptée aux caractéristiques des utilisateurs·trices, au contexte, aux tâches Écrans msPaint Adobe Photoshop  Autonomie 21
  • 22. Compatibilité @JOHAN_ALPS @MARGAUXLERGO Interface adaptée aux caractéristiques des utilisateurs·trices, au contexte, aux tâches Code  Autonomie 22
  • 23. Lisibilité @JOHAN_ALPS @MARGAUXLERGO Caractéristiques lexicales de présentation des informations Vie courante  Compétence 23
  • 24. Lisibilité @JOHAN_ALPS @MARGAUXLERGO Caractéristiques lexicales de présentation des informations Écrans Bonnes pratiques :  Taille de police : min = 12pt, normal = 16pt  Taille des lignes : 45-75 caractères (best = 66) espaces compris  Interlignes : 1,5x la taille de la police ; entre 2 paragraphes : 1,5x l’interligne  Contraste : différence de contraste entre couleur du texte et couleur du fond : 70% Wikipédia Wikiwand  Compétence 24
  • 25. Lisibilité @JOHAN_ALPS @MARGAUXLERGO Caractéristiques lexicales de présentation des informations Code  Compétence 25
  • 26. Lisibilité @JOHAN_ALPS @MARGAUXLERGO Caractéristiques lexicales de présentation des informations Code  Compétence 26
  • 27. Densité informationnelle @JOHAN_ALPS @MARGAUXLERGO Limiter le nombre d’informations présentées en même temps Vie courante  Compétence Tiens toi droite Souris Dis bonjour Dis merci Dis s’il te plait Ne mets pas les coudes sur la table Propose ton aideNe mets pas tes doigts dans ton nez 27
  • 28. Densité informationnelle @JOHAN_ALPS @MARGAUXLERGO Limiter le nombre d’informations présentées en même temps Écrans Cdiscount Google  Compétence 28
  • 29. Densité informationnelle @JOHAN_ALPS @MARGAUXLERGO Limiter le nombre d’informations présentées en même temps Code  Compétence 29
  • 30. Protection contre les erreurs @JOHAN_ALPS @MARGAUXLERGO Moyens pour détecter et prévenir les erreurs Vie courante  Contrôle 30
  • 31. Protection contre les erreurs @JOHAN_ALPS @MARGAUXLERGO Moyens pour détecter et prévenir les erreurs Écrans Google Agenda Suppression groupée dans Gmail  Contrôle 31
  • 32. Protection contre les erreurs @JOHAN_ALPS @MARGAUXLERGO Moyens pour corriger les erreurs Code  Contrôle 32
  • 33. Protection contre les erreurs @JOHAN_ALPS @MARGAUXLERGO Rendre impossible l’erreur Code  Contrôle 33
  • 34. Feedback immédiat @JOHAN_ALPS @MARGAUXLERGO Réponse immédiate renseignant sur l’action accomplie et son résultat Vie courante  Contrôle 34
  • 35. Feedback immédiat @JOHAN_ALPS @MARGAUXLERGO Réponse immédiate renseignant sur l’action accomplie et son résultat Écrans Amazon Cdiscount  Contrôle 35
  • 36. Feedback immédiat @JOHAN_ALPS @MARGAUXLERGO Réponse immédiate renseignant sur l’action accomplie et son résultat Code $ npm test Executed 364 of 364 SUCCESS (2.663 secs) TOTAL: 364 SUCCESS  Contrôle 36
  • 37. Qualité des messages d’erreur @JOHAN_ALPS @MARGAUXLERGO Informations pertinentes et compréhensibles sur la nature de l’erreur et les actions à entreprendre Vie courante Source : http://www.forum-auto.com Astra061 : Bonjour, En ce moment, ma voiture a un voyant qui s'allume et qui ne disparaît jamais. Il s'agit du voyant d'une voiture avec une clé. Savez vous où est ce que ça cloche ? Merci d'avance JPR49 : bonjour, Défaut moteur. il y a un code à relever, Ce forum regorge de sujets concernant la lecture des codes. valentin59​430 : Salut , voyant avec un clé et une voiture c'est pas l'alarme ? td 100 : Surement une bougie de préchauffage HS si tu n'a rien remarqué comme symptômes. Néanmoins il devrait s'éteindre arrivé à 90°  Contrôle 37
  • 38. Qualité des messages d’erreur @JOHAN_ALPS @MARGAUXLERGO Informations pertinentes et compréhensibles sur la nature de l’erreur et les actions à entreprendre Écrans Google AirFrance  Contrôle 38
  • 39. Qualité des messages d’erreur @JOHAN_ALPS @MARGAUXLERGO Informations pertinentes et compréhensibles sur la nature de l’erreur et les actions à entreprendre Code  Contrôle 39
  • 40. Résumé Apprentissage et mémorabilité : - Inciter en proposant les alternatives - Homogénéité et cohérence dans l’écriture - Rendre le code compatible avec les développeurs·ses, ou l’inverse ! Efficience : - Lisibilité des nommages - Brièveté & densité informationnelle : factoriser le code Autonomie Compétence @JOHAN_ALPS @MARGAUXLERGO Erreurs : - Rendre les erreurs impossibles - Feedback immédiat : tests - Qualité des messages d’erreur Contrôle @JOHAN_ALPS @MARGAUXLERGO 40
  • 41. Satisfaction des besoins  Réussite business @JOHAN_ALPS @MARGAUXLERGO BE-goals :  Autonom ie  Compéte nce  Contrôle Rende ment Lassitu de Frustrati on Conflits 41
  • 42. 1. Code écrit pour être lu 2. Facile de trouver où modifier le code 3. Effet de bord minimal pour chaque modification 4. Simple ET rapide de valider une modification 5. Code peu dupliqué Le besoin avant la solution
  • 43. TDD et utilisabilité? TDD ◦ Given, When, Then ◦ Affirmation @JOHAN_ALPS @MARGAUXLERGO43 Essai & erreur ◦ Modifier, Démarrer, click-click-click, Observer ◦ Exploration
  • 45. TDD et utilisabilité? Le TDD requiert une maitrise cognitive. Si on a pas cette maitrise on a un problème d’utilisabilité. TDD est un révélateur. @JOHAN_ALPS @MARGAUXLERGO45
  • 46. Contraintes Physiques ◦ Constructeurs, objets, … Culturels ◦ Accords d’équipe: jamais null, .. Sémantiques ◦ La connaissance métier: DDD, le métier dans le code Logiques ◦ ??? @JOHAN_ALPS @MARGAUXLERGO46 Physiques Culturels Sémantiques Logiques
  • 48. Take home message Ce n’est pas la faute de l’utilisateur Nous ne sommes pas notre utilisateur  tester Besoin avant solution Coder « utilisable » @JOHAN_ALPS @MARGAUXLERGO Le business a besoin de code utilisable 48
  • 49. Ressources Références scientifiques • Bolboaca A. (2016). Usable software design leanpub.com/usablesoftwaredesign • Norman D. (1988). The Design of Everyday Things • Van Boven, L., & Gilovich, T. (2003). To do or to have? That is the question. Journal of Personality and Social Psychology, 85, 1193–1202. • Hassenzahl, M. (2003). The thing and I: understanding the relationship between user and product. In M.Blythe, C. Overbeeke, A. F. Monk, & P. C. Wright (Eds.), Funology: From Usability to Enjoyment (pp. 31-42). Dordrecht: Kluwer Academic Publishers. • Lallemand, C. (2015). Towards Consolidated Methods for the Design and Evaluation of User Experience. (Doctoral dissertation). University of Luxembourg. https://publicaAons.uni.lu/handle/10993/21463 • Nielsen, J. (1994). Usability Engineering. Morgan Kaufmann Publishers. • Bastien C. & Scapin D. (1993). Critères Ergonomiques pour l’Évaluation d’Interfaces Utilisateurs (version 2.1), INRIA, Technical report N° 156 Exemples vie courante • http://lesmoyensgrands.over-blog.com • http://www.lsd-mag.com/blog/design-inconfortable/ • http://www.forum-auto.com martinsson.johan@gmail.com martinsson-johan.blogspot.fr @johan_alps ergo@margaux-perrin.com margaux-perrin.com @margauxlergo

Notas del editor

  1. Je (Johan) pense que nous construisons les meilleurs réussites business et les meilleurs environnements de travail à l'aide de code bien fait, qui est facile à comprendre et dans lequel il est agréable de travailler Margaux : pour moi c’est une expérience utilisateur bien pensée qui permet de construire les meilleures réussites business. C’est l’expérience, et même pour être précise, le souvenir de l’expérience que nous faisons vivre à notre cible qui va déterminer si celle-ci va revenir ou non, parler en bien ou en mal de nous, etc. C’est ça qui fidélise la clientèle.
  2. Alors qu’on parle d’UX design généralement dans le domaine du développement logiciel, nous sommes tous des concepteurs d’UX : la prof qui prépare ses cours, le restaurateur qui choisit l’ambiance, le menu, la décoration de son restaurant, la dentiste avec son patient, etc. Nous avons tous, à notre niveau, le moyen d’améliorer ou de détériorer l’expérience que nous faisons vivre à quelqu’un d’autre.
  3. C’est au designer d’expérience de concevoir correctement l’expérience et les objets qui la composent. Si quelque chose ne fonctionne pas, ce n’est pas la faute de l’utilisateur, c’est la faute du design ! “It is the duty of machines and those who design them to understand people. It is not our duty to understand the arbitrary, meaningless dictates of machines.”
  4. Un modèle intéressant pour designer des expériences est celui d’Hassenzahl : d’après lui, les gens perçoivent les produits interactifs selon deux dimensions. Lire la diapo
  5. Par exemple, dans les photos ici, à votre avis, cette jeune femme a un besoin pragmatique de communiquer, ou plutôt un besoin hédonique d’être en relation avec ses proches ? Cette veilleuse originale permet surtout au petit garçon de s’éclairer, ou de se sentir autonome et en sécurité pour aller aux toilettes la nuit ? Ici, besoin de se déplacer ou d’être stimuler, de se dépasser ?
  6. C’est intéressant… Dans ce cas, quels seraient les BE goals des développeurs ? Le do c’est développer, c’est facile. Mais le BE, à ton avis ? Carine Lallemand (chercheuse en UX) a fait ces cartes pour aider les UX designer à trouver les besoins de ses utilisateurs. > Enumérer les 7 cartes Au dos il y a des descriptions. Dans contrôle par exemple il y a le sentiment que les choses sont structurées et prévisibles, être à l’abri des incertitudes, être en contrôle des évènements, comprendre comment les choses fonctionnent, interagir avec des systèmes transparents et clairs Les besoins hédoniques des développeurs sont les besoins pragmatiques de leur patron : avoir des employés autonomes et efficaces dans leur domaine, qui ont le contrôle sur ce qu’ils produisent
  7. Pour évaluer un outil, on peut s’appuyer sur des grilles d’évaluation. Nielson a définit l’utilisabilité d’un outil à travers 5 composantes : Décrire les 5 En ergonomie logicielle, il y a aussi les critères de Bastien et Scapin qui sont une référence : 8 critères et 16 sous-critères qui permettent d’évaluer une IHM Je pense que certains d’entre eux peuvent nous aider à évaluer les 5 points de Nielson dans le cadre du développement.
  8. Ensuite il faut identifier les problèmes des design existants Et là le piège à éviter c’est de croire qu’on connait les problèmes car on ressemble à la cible ! Même dans un cas comme celui-ci où tes plus proches collègues sont ta cible, tu ne peux pas te passer de tests utilisateurs ou d’interviews pour comprendre où sont les endroits qui posent problème et pourquoi. Quand on design quelque chose, on devient
  9. Dans le web, aussi : multi-navigateurs, version mobile, pas de problème si réseau moyen…
  10. Le premier est plus utilisable pour celui qui connaît pas le style fonctionnelle Le deuxième est plus utilisable pour ceux qui connaît les deux Dans l’évaluation de l’utilisabilité il faut se poser la question pourquoi on n’aime pas Le designer doit envisager de former lorsqu’il introduit un nouvel outil
  11. Que se passe-t-il si baseUrl devient monsite.fr au lieu de autresite.fr/ ?
  12. Que se passe-t-il si baseUrl devient monsite.fr au lieu de autresite.fr/ ?
  13. Permet de s’adapter en temps-réel pour corriger des erreurs Exemple du verre qui tombe -> lancement d’un objet pour illustrer : Johan capable de ratraper la balle que je lui lance car il a un feedback immédiat sur la position de l’objet Autre exemple : écriture au clavier
  14. Que se passe-t-il si baseUrl devient monsite.fr au lieu de autresite.fr/ ?
  15. Achat en 1 clic : Bouton Acheter en un clic dans la fiche produit Validation Tunnel d’achat classique : Bouton Ajouter dans la fiche produit Clic sur Panier ajout, suppression, modification de quantités, clic sur Passer la commande Choix de l’adresse, nouvelle adresse ou point relai Ajout d’un emballage, d’un message cadeau ? Mode de livraison (rapide ou pas) Paiement Validation
  16. Achat en 1 clic : Bouton Acheter en un clic dans la fiche produit Validation Tunnel d’achat classique : Bouton Ajouter dans la fiche produit Clic sur Panier ajout, suppression, modification de quantités, clic sur Passer la commande Choix de l’adresse, nouvelle adresse ou point relai Ajout d’un emballage, d’un message cadeau ? Mode de livraison (rapide ou pas) Paiement Validation