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

BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...idelewebmestre
 
Cours polymère presentation powerpoint 46 pages
Cours polymère presentation powerpoint 46 pagesCours polymère presentation powerpoint 46 pages
Cours polymère presentation powerpoint 46 pagesPierreFournier32
 
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équine
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équineBOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équine
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équineidelewebmestre
 
BOW 2024-3-10 - Batcool Petits ruminants
BOW 2024-3-10 - Batcool Petits ruminantsBOW 2024-3-10 - Batcool Petits ruminants
BOW 2024-3-10 - Batcool Petits ruminantsidelewebmestre
 
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcins
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcinsBOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcins
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcinsidelewebmestre
 
BOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresBOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresidelewebmestre
 
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleurBOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleuridelewebmestre
 
La présentation du réseau téléinformatique
La présentation du réseau téléinformatiqueLa présentation du réseau téléinformatique
La présentation du réseau téléinformatiquesassarobertgina
 
Cadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en FranceCadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en Franceidelewebmestre
 
BOW 2024 - 3-2 - Stress thermique impact vaches laitières
BOW 2024 - 3-2 - Stress thermique impact vaches laitièresBOW 2024 - 3-2 - Stress thermique impact vaches laitières
BOW 2024 - 3-2 - Stress thermique impact vaches laitièresidelewebmestre
 
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSKennel
 
BOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinBOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinidelewebmestre
 
Agrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en DordogneAgrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en Dordogneidelewebmestre
 
Accompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la NièvreAccompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la Nièvreidelewebmestre
 
BOW 2024 - Logement des veaux laitiers en plein air
BOW 2024 - Logement des veaux laitiers en plein airBOW 2024 - Logement des veaux laitiers en plein air
BOW 2024 - Logement des veaux laitiers en plein airidelewebmestre
 
BOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chairBOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chairidelewebmestre
 
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...idelewebmestre
 
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminantsBow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminantsidelewebmestre
 

Último (20)

BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...
 
Cours polymère presentation powerpoint 46 pages
Cours polymère presentation powerpoint 46 pagesCours polymère presentation powerpoint 46 pages
Cours polymère presentation powerpoint 46 pages
 
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équine
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équineBOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équine
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équine
 
BOW 2024-3-10 - Batcool Petits ruminants
BOW 2024-3-10 - Batcool Petits ruminantsBOW 2024-3-10 - Batcool Petits ruminants
BOW 2024-3-10 - Batcool Petits ruminants
 
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcins
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcinsBOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcins
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcins
 
BOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresBOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitières
 
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleurBOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
 
La présentation du réseau téléinformatique
La présentation du réseau téléinformatiqueLa présentation du réseau téléinformatique
La présentation du réseau téléinformatique
 
Webinaire lésions podales_04.04.2024.pptx
Webinaire lésions podales_04.04.2024.pptxWebinaire lésions podales_04.04.2024.pptx
Webinaire lésions podales_04.04.2024.pptx
 
Cadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en FranceCadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en France
 
BOW 2024 - 3-2 - Stress thermique impact vaches laitières
BOW 2024 - 3-2 - Stress thermique impact vaches laitièresBOW 2024 - 3-2 - Stress thermique impact vaches laitières
BOW 2024 - 3-2 - Stress thermique impact vaches laitières
 
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
 
BOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinBOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcin
 
Agrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en DordogneAgrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en Dordogne
 
Accompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la NièvreAccompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la Nièvre
 
BOW 2024 - Logement des veaux laitiers en plein air
BOW 2024 - Logement des veaux laitiers en plein airBOW 2024 - Logement des veaux laitiers en plein air
BOW 2024 - Logement des veaux laitiers en plein air
 
BOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chairBOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chair
 
Note agro-climatique n°2 - 17 Avril 2024
Note agro-climatique n°2 - 17 Avril 2024Note agro-climatique n°2 - 17 Avril 2024
Note agro-climatique n°2 - 17 Avril 2024
 
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
 
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminantsBow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
 

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