{"id":7841,"date":"2021-03-02T20:41:45","date_gmt":"2021-03-02T19:41:45","guid":{"rendered":"https:\/\/stephaniewalter.design\/fr\/?p=7841"},"modified":"2021-03-03T09:25:47","modified_gmt":"2021-03-03T08:25:47","slug":"design-et-performance-ces-cas-oublies","status":"publish","type":"post","link":"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/","title":{"rendered":"Design et performance : ces cas oubli\u00e9s"},"content":{"rendered":"<div class=\"juiz-outdated-message jodpm-top\">Ce contenu a \u00e9t\u00e9 r\u00e9dig\u00e9 il y a 5 ans. Il se peut qu'il ne soit plus \u00e0 jour.<\/div><p>En g\u00e9n\u00e9ral, les \u00e9quipes de design livrent l\u2019\u00e9cran dans un \u00ab\u202f\u00e9tat parfait\u202f\u00bb. C\u2019est l\u2019\u00e9cran final, une fois que tout est bien charg\u00e9, avec toutes les bonnes donn\u00e9es, les bonnes images, rien ne manque, tout s\u2019est bien d\u00e9roul\u00e9. Youpi. Et ce qu\u2019il se passe avant, durant ces quelques millisecondes (ou parfois secondes) de chargement est souvent laiss\u00e9 \u00e0 l\u2019appr\u00e9ciation de l\u2019\u00e9quipe de d\u00e9veloppement. Tout comme ce qui se passe s\u2019il manque une donn\u00e9e, qu\u2019une serveur met du temps \u00e0 r\u00e9pondre, r\u00e9pond une erreur, une ressource manquante, etc. Designer ces cas oubli\u00e9s\u202fpermet grandement d\u2019am\u00e9liorer la collaboration designer \/ d\u00e9veloppeurs sur des th\u00e9matiques et d\u2019am\u00e9liorer l\u2019exp\u00e9rience utilisateur.<\/p>\n<p>Voici le transcript de ma conf\u00e9rence sur ce sujet \u00e0 <span lang=\"en\"><a href=\"https:\/\/www.welovespeed.com\/\">We Love Speed 2021<\/a><\/span>. Vous pouvez aller directement \u00e0 la partie \u00ab <a href=\"#slides\"><span lang=\"en\">slides<\/span><\/a> \u00bb et \u00e0 la partie \u00ab <a href=\"#video\">vid\u00e9o en Replay<\/a> \u00bb si vous le souhaitez.<\/p>\n<h2>Designer ce qu\u2019il se passe durant le chargement.<\/h2>\n<p>Tout commence&#8230; par une<strong> page vide<\/strong>. Et ensuite, quoi ?<\/p>\n<p>Eh bien, en g\u00e9n\u00e9ral, vous ne voulez <strong>pas attendre que la page enti\u00e8re soit charg\u00e9e pour afficher quelque chose<\/strong>. C\u2019est l\u00e0 que mon travail de designeuse va g\u00e9n\u00e9ralement vous <strong>aider.<\/strong><\/p>\n<p>Car souvent, la premi\u00e8re chose \u00e0 laquelle on pense quand on dit performance, c\u2019est ce qu\u2019il se passe pendant le chargement du contenu.<\/p>\n<p>Si vous vous int\u00e9ressez un peu \u00e0 la performance, l&rsquo;une des premi\u00e8res consignes dont vous avez d\u00fb entendre parler est l\u2019optimisation du \u201c<strong><span lang=\"en\">critical rendering path<\/span><\/strong>\u201d. Cela signifie que lorsqu&rsquo;une page se charge, on veut en g\u00e9n\u00e9ral afficher aux utilisatrices et utilisateurs en priorit\u00e9 \u00ab\u00a0le contenu qui leur permettra de rester suffisamment longtemps pour que le reste de la page ait le temps de se charger.<\/p>\n<div id=\"attachment_7850\" class=\"wp-caption alignnone\"><img decoding=\"async\" aria-describedby=\"caption-attachment-7850\" class=\"wp-image-7850 size-full\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/priorite-de-contenu.jpg\" alt=\"un zoning avec diff\u00e9rentes priorit\u00e9s de contenus num\u00e9rot\u00e9s\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/priorite-de-contenu.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/priorite-de-contenu-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/priorite-de-contenu-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><p id=\"caption-attachment-7850\" class=\"wp-caption-text\">Priorit\u00e9 de contenu : faites votre recherche utilisateur<\/p><\/div>\n<p>Mon travail est donc de designer une<strong> solide architecture d&rsquo;information<\/strong> pour ces pages pour que ce qui s\u2019affiche en haut soit suffisamment int\u00e9ressant pour que les personnes restent le temps que le reste de la page se charge.<\/p>\n<p>Il n&rsquo;y a pas de recette \u00ab\u00a0magique\u00a0\u00bb pour y parvenir : vous devez <strong>comprendre leurs besoins <\/strong>et <strong>d\u00e9finir des priorit\u00e9s d&rsquo;affichage<\/strong> de votre page : pourquoi visitent-elles cette page, que veulent-elles accomplir ?<\/p>\n<p>Par exemple : s&rsquo;il s&rsquo;agit d&rsquo;un <strong>article<\/strong>, le <strong>titre<\/strong> et <strong>l&rsquo;introduction<\/strong> doivent \u00eatre affich\u00e9s le plus rapidement possible afin que les visiteuses et visiteurs puissent \u00ab\u00a0au moins\u00a0\u00bb se faire une premi\u00e8re id\u00e9e de \u00ab\u00a0est-ce que je veux continuer \u00e0 lire ceci ou est-ce que je retourne d&rsquo;o\u00f9 je viens ?<\/p>\n<p>Il existe des m\u00e9thodes d\u2019UX design qui peuvent vous aider \u00e0 \u00ab\u00a0hi\u00e9rarchiser\u00a0\u00bb ce contenu :<\/p>\n<ul>\n<li aria-level=\"1\"><strong>Interviews<\/strong> (\u00e7a tombe bien j\u2019ai un<a href=\"https:\/\/stephaniewalter.design\/fr\/blog\/aide-memoire-pour-des-questions-et-relances-dentretiens-utilisateur\/\"> aide-m\u00e9moire pour vous aider \u00e0 poser des questions d\u2019entretien utilisateur<\/a>).<\/li>\n<li aria-level=\"1\"><strong>Tri des cartes<\/strong> (g\u00e9n\u00e9ralement, vous triez les cartes par groupes, mais vous pouvez imaginer de trier le contenu en fonction de la priorit\u00e9<\/li>\n<\/ul>\n<h3>Identifier les contraintes techniques<\/h3>\n<p>Il va ensuite falloir arriver \u00e0 faire en sorte que la <strong>partie technique<\/strong> qui permet de construire la page soit en <strong>ad\u00e9quation avec cette priorit\u00e9 de contenus<\/strong>. La premi\u00e8re \u00e9tape consiste donc g\u00e9n\u00e9ralement \u00e0 aller voir l&rsquo;\u00e9quipe de d\u00e9veloppement et \u00e0 identifier, \u00e0 partir de cette \u00ab\u00a0priorit\u00e9\u00a0\u00bb, ce qui peut prendre du temps pour \u00eatre r\u00e9ellement charg\u00e9.<\/p>\n<p>Il s&rsquo;agit g\u00e9n\u00e9ralement d&rsquo;une discussion ouverte sur le fonctionnement de la page. Surtout pour les applications web. Parce que, avec une tonne de JavaScript et de micro-services, ce n&rsquo;est pas toujours aussi simple que le classique \u00ab\u00a0pages rendues c\u00f4t\u00e9 serveur PHP\u00a0\u00bb d\u2019un site WordPress comme celui-l\u00e0.<\/p>\n<h3>D\u00e9cider ensemble d\u2019une strat\u00e9gie de chargement<\/h3>\n<p>Une fois que je comprends les contraintes techniques, je designe ma<strong> strat\u00e9gie de chargement <\/strong>pour cette page et ce contenu. J\u2019essaie d&rsquo;imaginer comment la page va se charger en fonction de ces contraintes.<\/p>\n<p>Je communique cela \u00e0 mes \u00e9quipes de dev \u00e0 l\u2019aide d\u2019un <strong>sch\u00e9mas de chargement<\/strong>\u00a0(ou <span lang=\"en\">loading flow<\/span>). L&rsquo;id\u00e9e est de montrer les diff\u00e9rentes \u00e9tapes de chargement.<\/p>\n<p>Bien s\u00fbr, si la page se charge rapidement, l&rsquo;utilisatrice ne sera pas consciente de ces \u00e9tapes car elles peuvent se d\u00e9rouler tr\u00e8s rapidement. Mais si la page se charge plus lentement, cela permet d&rsquo;\u00e9viter un \u00e9cran vide.<\/p>\n<p>Voici un exemple:<img decoding=\"async\" class=\"alignnone size-full wp-image-7852\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/loading-flow-1.jpg\" alt=\"\" width=\"2822\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-1.jpg 2822w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-1-768x294.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-1-1536x588.jpg 1536w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-1-2048x784.jpg 2048w\" sizes=\"(max-width: 2822px) 100vw, 2822px\" \/><\/p>\n<p>On peut d\u00e9couper cet exemple en 5 \u00e9tapes au niveau du chargement. Sur cette page, la premi\u00e8re chose que nous affichons c\u2019est une <strong>coquille compos\u00e9e des \u00e9l\u00e9ments statiques<\/strong> (comme le logo, les fonds). Ensuite, nous chargeons le <strong>contenu statique<\/strong> (navigation).<\/p>\n<p>L\u2019\u00e9tape suivante consiste \u00e0 afficher les <strong>titres<\/strong> des pages et des sections. Cela aide les utilisatrices \u00e0 savoir qu&rsquo;elles sont sur la bonne page).<\/p>\n<p>Vous vous souvenez que je vous ai dit que j&rsquo;avais besoin de comprendre comment la page est construite ? C&rsquo;est l\u00e0 que j&rsquo;ai ma premi\u00e8re \u00ab\u00a0limitation technique\u00a0\u00bb (pour l&rsquo;instant) :<\/p>\n<ul>\n<li aria-level=\"1\">Le serveur envoie une liste de tuiles (mais uniquement la liste et le titre)<\/li>\n<li aria-level=\"1\">Une fois que la liste est arriv\u00e9e et seulement ensuite, le serveur envoie le contenu pour chaque tuile<\/li>\n<\/ul>\n<p>Cela signifie que, en fonction de diff\u00e9rents param\u00e8tres, il peut arriver qu&rsquo;un contenu d&rsquo;une tuile moins prioritaire (donc plus bas sur la page) \u00ab\u00a0arrive\u00a0\u00bb avant dans le navigateur. Mais je ne peux rien y faire.<\/p>\n<p>La strat\u00e9gie est donc la suivante :<\/p>\n<ul>\n<li aria-level=\"1\">Nous affichons les tuiles d\u00e8s que nous avons la premi\u00e8re avec du contenu dans le navigateur.<\/li>\n<li aria-level=\"1\">Pour celles dont le contenu n&rsquo;est pas encore arriv\u00e9, nous avons un indicateur de chargement si elles mettent trop de temps \u00e0 charger.<\/li>\n<li aria-level=\"1\">Enfin, nous affichons le<strong> reste des tuiles<\/strong> lorsque nous avons les donn\u00e9es dans le navigateur.<\/li>\n<\/ul>\n<p>L\u00e0 encore, ce n&rsquo;est pas id\u00e9al mais c&rsquo;est une contrainte technique.<\/p>\n<p>Si j\u2019ai des <strong>m\u00e9triques<\/strong>, j\u2019essaie de les ajouter sur ces sch\u00e9mas de chargement. Voici ci-dessous un exemple du flux de chargement d&rsquo;une application native. L&rsquo;une des mesures que nous avons est que nous souhaitons afficher les 10 premiers \u00e9l\u00e9ments dans les 3 secondes. Ce sch\u00e9ma documente donc la mani\u00e8re dont le contenu est cens\u00e9 se charger, avec les diff\u00e9rentes m\u00e9triques et parcours.<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-7854 size-full\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/loading-flow-metriques-1.jpg\" alt=\"Exemple de flux de chargement avec les \u00e9crans \u00e0 diff\u00e9rents \u00e9tats et des metriques\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-metriques-1.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-metriques-1-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-metriques-1-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<h3>Testez, testez, testez.<\/h3>\n<p>Les flux de chargement c\u2019est bien sympa, mais c\u2019est juste un livrable de design pour nous aider \u00e0 communiquer avec les \u00e9quipes de dev. La derni\u00e8re \u00e9tape consiste \u00e0 tester tout \u00e7a une fois impl\u00e9ment\u00e9 dans le navigateur. <strong>Testez<\/strong> dans de vrais navigateurs, de vraies applications, diff\u00e9rentes conditions de r\u00e9seau et affinez les r\u00e9glages. Car vous pouvez designer autant de sch\u00e9mas que vous le souhaitez, mais vous aurez encore quelques <strong>ajustements \u00e0 faire<\/strong>.<\/p>\n<p>\u00c7a, c\u2019\u00e9tait le meilleur sc\u00e9nario de \u00ab sous s\u2019est bien charg\u00e9. Mais parfois, les choses tournent mal pendant le chargement. En tant que designer, je dois \u00e9galement penser \u00e0 tous ces cas d\u2019erreur.<\/p>\n<h2>Designer les cas d\u2019erreur.<\/h2>\n<p>Comme souvent dans mon processus de concept, ma premi\u00e8re \u00e9tape est g\u00e9n\u00e9ralement de parler \u00e0 l&rsquo;\u00e9quipe de d\u00e9veloppement pour identifier ce qui pourrait mal tourner. Dans le cas d\u2019erreurs, j\u2019essaie d\u2019identifier :<\/p>\n<ul>\n<li aria-level=\"1\"><strong>Qu\u2019est ce qui peut se produire<\/strong> comme erreur (g\u00e9n\u00e9ralement un code d&rsquo;erreur)<\/li>\n<li aria-level=\"1\"><strong>Pourquoi<\/strong> cela se produit-il ?<\/li>\n<li aria-level=\"1\">Cela va-t-il avoir un <strong>impact<\/strong> sur les utilisatrices ? <i>(s\u2019il n\u2019y a jamais d\u2019impact, peut-\u00eatre n&rsquo;avons-nous pas besoin d\u2019un design pour \u00e7a ?)<\/i><\/li>\n<li aria-level=\"1\">Les utilisatrices et utilisateurs peuvent-elles faire quelque chose pour r\u00e9parer cette erreur ou la contourner ?<\/li>\n<\/ul>\n<h3>Erreurs au niveau de la page<\/h3>\n<p>En g\u00e9n\u00e9ral, le premier type d&rsquo;erreur auquel vous devez penser se situe <strong>au niveau de la page<\/strong>. Quelque chose s&rsquo;est mal pass\u00e9 et vous ne pouvez pas charger le contenu de la page. Pensez par exemple aux pages 404. Si c\u2019est possible, vous souhaitez garder la personne sur le site.<\/p>\n<p>Dans mon exemple de site plus haut, si l&rsquo;API n\u2019a pas r\u00e9pondu, nous pouvons charger le<strong> squelette de la page. <\/strong>Mais nous ne pouvons pas charger les tuiles<strong>.<\/strong> J\u2019ai donc un petit message d\u2019erreur. Malheureusement ici, les utilisatrices ne peuvent pas faire grand-chose (sauf r\u00e9essayer ou revenir plus tard)<\/p>\n<p>Ici mon but est de faire comprendre que la page a fini de charger, mais qu\u2019il y a eu un souci.<\/p>\n<h3>Erreur au niveau du composant<\/h3>\n<p>Dans mon cas, puisque nous avons une API qui charge le contenu de chaque composant dans une tuile, je peux \u00e9galement avoir une <strong>erreur au niveau du composant<\/strong>.<\/p>\n<p>Dans ce cas, nous informons l\u2019utilisatrice que la tuile n\u2019a pas charg\u00e9 pour faire la diff\u00e9rence avec un \u00ab la tuile est charg\u00e9e mais n\u2019a pas de contenu \u00bb (voir section suivante). Dans mon cas, la personne <strong>ne peut encore une fois h\u00e9las rien faire<\/strong> (\u00e0 part attendre ou revenir).<\/p>\n<p>Mais parfois, parfois les gens peuvent faire quelque chose. Par exemple, sur un projet d\u2019application mobile de vid\u00e9o surveillance, il pouvait y avoir un souci avec le wifi. Dans ce cas, nous encourageons les personnes \u00e0 v\u00e9rifier la connexion, voir red\u00e9marrer la box.<\/p>\n<h3>Messages d\u2019erreurs : les bonnes pratiques<\/h3>\n<p>Voici donc quelques <strong>bonnes pratiques g\u00e9n\u00e9riques <\/strong>pour la gestion des messages d&rsquo;erreur :<\/p>\n<ul>\n<li aria-level=\"1\">Si les utilisatrices et utilisateur peuvent faire quelque chose pour<strong> corriger l&rsquo;erreur, dites leur comment faire<\/strong><\/li>\n<li aria-level=\"1\">Soyez <strong>coh\u00e9rentes<\/strong> et <strong>consistantes<\/strong> dans la langue utilis\u00e9e. Par exemple si vous \u00e9crivez \u00ab Mes favoris \u00bb tout au long des \u00e9crans, \u00e9vitez d\u2019\u00e9crire \u00ab vos marque page \u00bb dans le message d\u2019erreur.<\/li>\n<li aria-level=\"1\"><strong>Ne bl\u00e2mez pas<\/strong> les utilisatrices et utilisateurs. JAMAIS. Ce n&rsquo;est pas leur faute, c&rsquo;est la faute du syst\u00e8me.<\/li>\n<\/ul>\n<ul>\n<li>Pensez \u00e0 avoir un<strong> ton coh\u00e9rent avec votre identit\u00e9<\/strong> et les attentes. En fran\u00e7ais surtout, faites attention au vouvoiement, langage soutenu, etc.<\/li>\n<\/ul>\n<h3>Documentation des messages d\u2019erreur<\/h3>\n<p><img decoding=\"async\" class=\"alignnone wp-image-7855 size-full\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/loading-flow-erreurs.jpg\" alt=\"Le loading flow mis \u00e0 jours avec des branches sur les erreurs\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-erreurs.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-erreurs-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-erreurs-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p>Une fois ces deux types de messages design\u00e9s, je les ajoute dans mes sch\u00e9mas de chargement de contenu. Dans mon design system, je documente \u00e9galement les \u00e9tats au niveau des composants. Ainsi, mon composant \u00ab\u00a0tuile\u00a0\u00bb a maintenant<\/p>\n<ul>\n<li aria-level=\"1\">Un \u00e9tat de chargement<\/li>\n<li aria-level=\"1\">Un \u00e9tat d&rsquo;erreur<\/li>\n<\/ul>\n<h2>Designer pour des contenus manquants<\/h2>\n<p>Une autre chose que nous avons tendance \u00e0 <strong>oublier<\/strong> quand on design, c\u2019est est <strong>ce qui se passe quand il n&rsquo;y a pas de contenu.<\/strong> Le but est d&rsquo;aider \u00e0 faire comprendre comprendre que le contenu s\u2019est bel et bien charg\u00e9, mais que cette partie n\u2019a pas (encore) de contenu<\/p>\n<h3>Pas de r\u00e9sultats et \u00e9crans vides<\/h3>\n<p>Ces \u00e9tats qu\u2019on appellera <strong>\u00e9tats vides<\/strong>\u00a0peuvent \u00eatre des opportunit\u00e9s de design int\u00e9ressantes. Par exemple, si la <strong>recherche qui n&rsquo;aboutit \u00e0 aucun r\u00e9sultat<\/strong>, vous pourriez proposer des <strong>alternatives<\/strong> comme le fait <span lang=\"en\">DrMarteens<\/span> (le top des cat\u00e9gories et des produits les plus vendus). Le but est que la personne reste sur le site et continue \u00e0 naviguer malgr\u00e9 le manque de contenu.<\/p>\n<p>Dans une application de type <strong>liste de t\u00e2ches<\/strong>, le fait de ne plus avoir de t\u00e2ches est une \u00ab bonne \u00bb chose. F\u00e9licitez les gens, car g\u00e9n\u00e9ralement les personnes sont heureuses d\u2019avoir termin\u00e9 toute leur t\u00e2che (ou lu tous leurs mails). \u00c7a peut \u00eatre un \u00e9cran qui peut avoir <strong>plus ou moins de personnalit\u00e9<\/strong> en fonction de votre marque \/ produit. Mais l\u00e0 encore, attention de rester dans le ton de votre marque.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7857\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/etats-vide-page.jpg\" alt=\"example de Dr Marteens avec une page de r\u00e9sultats vide et d'une app de taches\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/etats-vide-page.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/etats-vide-page-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/etats-vide-page-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<h3>Contenu vide g\u00e9n\u00e9r\u00e9 par les utilisatrices<\/h3>\n<p>Si le contenu est un \u00ab\u00a0contenu <strong>g\u00e9n\u00e9r\u00e9 par les utilisatrices et utilisateurs<\/strong>\u00ab\u00a0, vous pouvez utiliser cet \u00e9tat vide comme une opportunit\u00e9 d\u2019<span lang=\"en\">onboarding<\/span>. Vous pouvez utiliser cet \u00e9cran pour expliquer comment faire en sorte d\u2019avoir du contenu sur cette partie.<\/p>\n<p>Nous utilisons cette technique sur la partie \u00ab <span lang=\"en\">saved search<\/span> \u00bb de notre interface. Il est possible de faire des recherches multicrit\u00e8res tr\u00e8s complexes dans notre interface. Pour ne pas avoir \u00e0 remettre tous les crit\u00e8res nous offrons la possibilit\u00e9 de sauvegarder une recherche sur le <span lang=\"en\">Dashboard<\/span>. Mais, quand on arrive pour la 1e fois sur l\u2019\u00e9cran des recherches sauv\u00e9es, il est vide. Nous utilisons cet \u00e9cran comme opportunit\u00e9 d\u2019<span lang=\"en\">onboarding<\/span> pour expliquer comment sauver une recherche et informer de l\u2019existence de cette fonctionnalit\u00e9.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7858\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/page-vide.jpg\" alt=\"example de la page vide d\u00e9crite ci-dessous\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/page-vide.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/page-vide-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/page-vide-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<h3>Du contenu manquant dans un composant<\/h3>\n<p>Parfois, le <strong>contenu manquant se situe au niveau des composants.<\/strong><\/p>\n<p>Par exemple, sur un site de recettes de cuisine, que se passe-t-il s\u2019il manque l\u2019image de l\u2019aper\u00e7u de recettes?<\/p>\n<ul>\n<li aria-level=\"1\">Est-ce qu&rsquo;on affiche un <span lang=\"en\">placeholder<\/span> ?<\/li>\n<li aria-level=\"1\">Supprime-t-on l&rsquo;image ?<\/li>\n<\/ul>\n<p>Quelle que soit la d\u00e9cision prise en mati\u00e8re de design, l&rsquo;\u00e9quipe de d\u00e9veloppement doit g\u00e9n\u00e9ralement en \u00eatre inform\u00e9e afin d&rsquo;anticiper et de construire un HTML\/CSS flexible. Et m\u00eame parfois anticiper la construction de l&rsquo;API dans certains cas.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7860\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/contenu-manquant-placeholder.jpg\" alt=\"Deux miniatures de recettes, une avec un placeholder \u00e0 la place de l'image et une o\u00f9 l'image a \u00e9t\u00e9 retir\u00e9e\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/contenu-manquant-placeholder.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/contenu-manquant-placeholder-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/contenu-manquant-placeholder-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p>Que se passe-t-il si <strong>certains contenus n&rsquo;ont pas (encore) de valeur<\/strong> ?<\/p>\n<p>Dans notre exemple d&rsquo;aper\u00e7u de recette de cuisine o\u00f9 on affiche un nombre d\u2019\u00e9toiles en fonction de la note, qu\u2019est-ce qu\u2019on fait s\u2019il n\u2019y a pas encore de note ?<\/p>\n<ul>\n<li aria-level=\"1\">On pourrait afficher \u00ab 0 votes \u00bb et aucune \u00e9toile, mais \u00e7a peut porter \u00e0 confusion si les personnes ne font pas le lien entre le 0 votes et le manque d\u2019\u00e9toiles<\/li>\n<li aria-level=\"1\">On pourrait d\u00e9cider de ne pas afficher d\u2019\u00e9toiles tant qu\u2019on n\u2019a pas de note. Mais du coup, il se passe quoi s\u2019il n\u2019y a qu\u2019une note et elle est mauvaise ? Ne faudrait-il pas un nombre minimum de votes pour afficher une note ?<\/li>\n<li aria-level=\"1\">On pourrait \u00ab juste \u00bb supprimer cette partie du contenu, mais l\u00e0 encore, est-ce que \u00e7a va porter \u00e0 confusion ?<\/li>\n<\/ul>\n<p>Je n\u2019ai pas forc\u00e9ment la meilleure solution en t\u00eate, c\u2019est un de ces cas o\u00f9 il va falloir it\u00e9rer et tester. Mais \u00e7a reste un cas \u00e0 pr\u00e9voir en termes de design.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7861\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/contenut-manquant-composant.jpg\" alt=\"Un example visuel des 3 cas d\u00e9crits ci-dessus\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/contenut-manquant-composant.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/contenut-manquant-composant-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/contenut-manquant-composant-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<h3>Communiquer les \u00e9tats avec les \u00e9quipes de d\u00e9veloppement<\/h3>\n<p>En g\u00e9n\u00e9ral quand je design les \u00e9crans vides de pages, je mets donc \u00e0 jours mon sch\u00e9mas avec \u00e9galement ces \u00e9tats \u201cvides\u201d<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7863\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/loading-flow-final.jpg\" alt=\"Le sch\u00e9mas de chargement final avec toutes les options de chargement, erreurs et contenus vides\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-final.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-final-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/loading-flow-final-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p>Mais au final, je n&rsquo;ai pas forc\u00e9ment besoin de <strong>designer<\/strong> chaque cas. Le but est surtout de <strong>d\u00e9cider<\/strong> de ce qui va se passer et <strong>le communiquer cela \u00e0 \/ avec l&rsquo;\u00e9quipe de d\u00e9veloppement. <\/strong>Ensuite, c&rsquo;est \u00e0 elleux de coder ces composants. Niveau documentation, j&rsquo;essaie g\u00e9n\u00e9ralement de <strong>documenter la fa\u00e7on<\/strong> dont les composants sont cens\u00e9s fonctionner<strong> \u00e0 un niveau g\u00e9n\u00e9rique<\/strong>.<\/p>\n<p>Comme beaucoup de ces composants de tuiles de contenus, je n&rsquo;ai g\u00e9n\u00e9ralement<strong> pas forc\u00e9ment le temps<\/strong> de <strong>designer chacun<\/strong> d&rsquo;entre eux pour tous les \u00e9tats, d&rsquo;autant plus que les \u00e9tats de chargement et d&rsquo;erreur sont les m\u00eames<strong>. <\/strong>La seule diff\u00e9rence est le message.<\/p>\n<p>C&rsquo;est ce que j&rsquo;ai fait :<\/p>\n<ul>\n<li aria-level=\"1\">Un<strong> design \u00ab g\u00e9n\u00e9rique<\/strong> \u00bb des diff\u00e9rents <strong>\u00e9tats<\/strong> de du composants dans le design system avec la structure de base du message de contenu manquant<\/li>\n<li aria-level=\"1\"><strong>Le message \u00ab vide \u00bb sp\u00e9cifi\u00e9 dans la documentation du ticket Jira<\/strong> pour chaque tuile qu\u2019on cr\u00e9e.<\/li>\n<\/ul>\n<p>Enfin, nous avons mis en place une<strong> checklist <\/strong>pour s\u2019assurer de ne pas oublier ces diff\u00e9rents \u00e9tats dans cette documentation.<\/p>\n<h2>Designer pour \u00ab plus \u00bb de contenu<\/h2>\n<p>Bon, maintenant nous avons notre contenu. Mais, et si nous avions plus de contenu que le cas id\u00e9al que nous avons con\u00e7u ? Est-ce que votre design est capable de s\u2019adapter. En anglais, c\u2019est la blague de \u00ab yes, but does it scale ? \u00bb<\/p>\n<p>Au niveau des pages, le cas beaucoup de contenu, en particulier les listes de pages, peut \u00eatre trait\u00e9 de 4 mani\u00e8res diff\u00e9rentes :<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7865\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/pagination-infinitescroll-loadmore.jpg\" alt=\"Une illustration des 4 strat\u00e9gies d\u00e9crites\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/pagination-infinitescroll-loadmore.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/pagination-infinitescroll-loadmore-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/pagination-infinitescroll-loadmore-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<ul>\n<li aria-level=\"1\"><strong>Tout<\/strong> <strong>charger<\/strong>. C\u2019est ok si la liste est courte ou si l&rsquo;ensemble de donn\u00e9es n&rsquo;est pas trop long. Mais en g\u00e9n\u00e9ral si on charge tout, on finit avec des soucis de performance<\/li>\n<li aria-level=\"1\"><strong>Une Pagination<\/strong>. C\u2019est une bonne solution pour les ensembles de <strong>donn\u00e9es complexes<\/strong>, des <strong>tableaux<\/strong><\/li>\n<li aria-level=\"1\">Un <strong>Infinite Scroll<\/strong> (ou d\u00e9filement infini). C\u2019est un peu le nouveau truc \u00e0 la mode parce que les gens n&rsquo;aiment pas cliquer sur mobile. C\u2019est g\u00e9n\u00e9ralement pratique pour les listes o\u00f9 les personnes sont en <strong>phase d\u2019exploration et d\u00e9couverte<\/strong> (e-commerce, Instagram) car on charge au fur et \u00e0 mesure les contenus quand la personne arrive en bas de page. Par contre, c\u2019est compliqu\u00e9 d\u2019avoir du coup un pied de page (ou alors il faut le mettre en position sticky par-dessus). C&rsquo;est <strong>bien sur les applications mobiles<\/strong> car vous pouvez charger une liste en d\u00e9filement et avoir toute la hauteur de l&rsquo;\u00e9cran pour cela<\/li>\n<li aria-level=\"1\"><strong>Bouton charger la suite<\/strong>: permet d\u2019avoir un pied de page et un meilleur contr\u00f4le sur le chargement puisqu\u2019une action au clic est plus pr\u00e9cise qu\u2019un scroll.<\/li>\n<\/ul>\n<p>Quelle que soit la solution choisie, assurez-vous \u00e9galement que si la personne a ouvert un \u00e9l\u00e9ment et retourne \u00e0 la liste, elle <strong>arrive au m\u00eame endroit dans la liste et non en haut.<\/strong> Il n\u2019y a rien de pire que d\u2019arriver au produit 340\/600, l\u2019ouvrir, et revenir au produit num\u00e9ro 1 quand on revient en arri\u00e8re dans le navigateur. \u00c7a fait d\u2019ailleurs partie des bonnes pratiques de Google en termes de pagination.<\/p>\n<p>On doit aussi parfois<strong> g\u00e9rer la densit\u00e9 du contenu au niveau des composants<\/strong>.<\/p>\n<p>Par exemple :<\/p>\n<ul>\n<li aria-level=\"1\">Que faire si le titre a besoin de <strong>2 lignes<\/strong>.<\/li>\n<li aria-level=\"1\">Que faire avec le <strong>recadrage de l&rsquo;image<\/strong> (sur mon exemple avec la pizza \u00e7a va mais imaginez que vous avez des humains)<\/li>\n<li aria-level=\"1\">Qu&rsquo;arrive-t-il aux<strong> m\u00e9tadonn\u00e9es<\/strong>, les gardons-nous au-dessus ? Est-ce que nous les <strong>centrons visuellement<\/strong> ?<\/li>\n<\/ul>\n<p>Techniquement, il n&rsquo;y a rien de complexe ici. Mais encore une fois, c\u2019est le type de <strong>d\u00e9cisions de design \u00e0 prendre et communiquer <\/strong>\u00e0 l&rsquo;\u00e9quipe de d\u00e9veloppement.<img decoding=\"async\" class=\"alignnone size-full wp-image-7866\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/longueur-titre.jpg\" alt=\"Example visuel d'une miniature de recette avec un titre sur 1 ligne, puis 2 lignes\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/longueur-titre.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/longueur-titre-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/longueur-titre-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/>Et qu&rsquo;adviendra-t-il de ma belle liste parfaite de jolies cartes qui ont toutes la m\u00eame hauteur dans Sketch, une fois que nous aurons du <strong>vrai contenu<\/strong> et qu\u2019elles n&rsquo;auront <strong>plus la m\u00eame hauteur <\/strong>?<\/p>\n<ul>\n<li aria-level=\"1\">On garde la <strong>hauteur du contenu<\/strong> ?<\/li>\n<li aria-level=\"1\">On d\u00e9finit une <strong>hauteur minimale<\/strong> pour chacun d&rsquo;entre eux et un <strong>espace blanc<\/strong> ?<\/li>\n<\/ul>\n<p>Encore une fois ce sont des d\u00e9cisions de design \u00e0 prendre. Tout \u00e7a peut aussi devenir tr\u00e8s vite p\u00e9nible si vous utilisez des squelettes de chargement, si tous les contenus n\u2019ont pas la m\u00eame hauteur, difficile de pr\u00e9voir un squelette g\u00e9n\u00e9rique.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7867\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/design-cartes-differentes-hauteurs.jpg\" alt=\"Exemple de cartes de diff\u00e9rentes hauteurs\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/design-cartes-differentes-hauteurs.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/design-cartes-differentes-hauteurs-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/design-cartes-differentes-hauteurs-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p>Et oui, j\u2019utilise toujours Sketch. Vous pouvez vous moquer de l\u2019outil autant que vous voulez sur LinkedIn (je l\u2019ai vu plusieurs fois), mais je travaille pour une banque qui n\u2019aime pas trop les outils cloud. D\u2019ailleurs si vous voulez en savoir plus sur mon processus avec des outils 100% locaux et self hosted, j\u2019ai fait un article sur le sujet :<a href=\"https:\/\/stephaniewalter.design\/blog\/the-pragmatic-designer-local-and-self-hosted-tools-for-banking-insurance-and-other-institutions\/\" hreflang=\"en\"> The Pragmatic Designer: Local and Self Hosted Design Tools<\/a><\/p>\n<h3>Quelques conseils pour la densit\u00e9 de contenus<\/h3>\n<p>Voici quelques conseils pour vous aider \u00e0 designer ces cas:<\/p>\n<ul>\n<li aria-level=\"1\">Si vous utilisez du faux contenu, assurez-vous que la <strong>structure soit proche de celle du vrai contenu<\/strong>.<\/li>\n<li aria-level=\"1\">Si vous \u00eates designeuse : demandez aux \u00e9quipes de d\u00e9veloppement les <strong>limites<\/strong> de ces champs dans la base de donn\u00e9es, demandez la <strong>longueur minimale<\/strong>, <strong>maximale<\/strong> et<strong> moyenne du contenu<\/strong>.<\/li>\n<li aria-level=\"1\">Par contre soyez <strong>pragmatique<\/strong> : si le max c\u2019est 1000 mais que 90% du contenu fait 300 caract\u00e8res, vous allez peut-\u00eatre designer le composant par d\u00e9faut \u00e0 300 et pr\u00e9voir un \u00ab lire la suite \u00bb ou autre pour les 10% de cas qui font 1000.<\/li>\n<li aria-level=\"1\">Si vous \u00eates d\u00e9veloppeuse : s&rsquo;il manque quelque chose, <strong>demandez \u00e0 la personne qui design comment le contenu doit se comporter.<\/strong><\/li>\n<\/ul>\n<h2>Designer une exp\u00e9rience ininterrompue per\u00e7ue comme performante<\/h2>\n<p>La page s&rsquo;est donc charg\u00e9e. Houraaa. Mais on peut aller un cran plus loin, et commencer \u00e0 parler <strong>d\u2019exp\u00e9rience continue et perception de la performance<\/strong><\/p>\n<h3>Google, le mythe de la mesure de l\u2019UX et des <span lang=\"en\">Core Web Vitals<\/span><\/h3>\n<p>Depuis l\u2019an dernier, tout le monde parle de ces <a href=\"https:\/\/www.youtube.com\/watch?t=66&amp;v=AQqFZ5t8uNc&amp;feature=youtu.be\"><span lang=\"en\">Core Web Vitals<\/span><\/a>. J&rsquo;ai entendu et vu \u00e9crit que \u00ab en 2021 l\u2019exp\u00e9rience utilisateur sera un crit\u00e8re de <span lang=\"en\">ranking<\/span> pour Google \u00bb. Et \u00e7a m\u2019a h\u00e9riss\u00e9 le poil \u00e0 chaque fois, parce que c\u2019est au mieux une TRES grosse approximation, au pire un bon gros titre clickbait d\u2019article sur des blogs de techos qui veulent de la visite. La v\u00e9rit\u00e9 de la vraie vie est un peu plus compliqu\u00e9e que \u00e7a.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7868\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/core-web-vitals.jpg\" alt=\"Core Web Vitals: LCP (largest contentful paint), FID (first input delay), CLS (cumulative layout shift)\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/core-web-vitals.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/core-web-vitals-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/core-web-vitals-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p>Tout d&rsquo;abord, <strong>Google appliquait d\u00e9j\u00e0 des p\u00e9nalit\u00e9s pour des choses qui peuvent nuire \u00e0 l&rsquo;exp\u00e9rience utilisateur bien avant 2021<\/strong>. Je pense par exemple comme <a href=\"https:\/\/developers.google.com\/search\/blog\/2015\/09\/mobile-friendly-web-pages-using-app\" hreflang=\"en\">la p\u00e9nalit\u00e9 sur les interstices qui a \u00e9t\u00e9 lanc\u00e9e en 2015<\/a>. Google n\u2019a pas attendu cette ann\u00e9e pour avoir de type de crit\u00e8res. Si vous voulez en savoir plus, <a href=\"https:\/\/www.pragm.co\/fr\/blog\/cls-core-web-vitals-seo\/\">Myriam Jessier, (mon experte SEO et SXO pr\u00e9f\u00e9r\u00e9e) a un article int\u00e9ressant sur le CLS<\/a>.<\/p>\n<p>Ensuite, <strong>mesurer l&rsquo;exp\u00e9rience de l&rsquo;utilisateur est plus complexe que \u00e7a et va bien au-del\u00e0 de ces 3 mesures<\/strong> qui sont, encore une fois. Je pourrais faire un article qui fait la taille de celui-l\u00e0 juste sur diff\u00e9rents crit\u00e8res de la mesure de l\u2019exp\u00e9rience utilisateur, mais ce n\u2019est pas le propos. Je vous laisse donc vous renseigner par vous-m\u00eame. Si vous ne savez pas o\u00f9 trouver de l\u2019info fiable sur le domaine de la recherche utilisateur je vous renvoie \u00e0 <a href=\"https:\/\/stephaniewalter.design\/blog\/80-ux-blogs-with-rss-feed-to-follow\/\">80+ UX blogs (with RSS feed) to follow<\/a> et <a href=\"https:\/\/stephaniewalter.design\/fr\/blog\/15-blogs-francophone-sur-lux-design-avec-flux-rss\/\">15 + blogs francophone sur l\u2019UX Design (avec flux RSS)<\/a><\/p>\n<p>Ce qu\u2019il faut comprendre:<\/p>\n<ul>\n<li aria-level=\"1\">une mauvaise performance entra\u00eene g\u00e9n\u00e9ralement une mauvaise exp\u00e9rience utilisateur.<\/li>\n<li aria-level=\"1\">mais <strong>une bonne performance ne se traduit pas n\u00e9cessairement automatiquement par une bonne exp\u00e9rience utilisateur<\/strong><\/li>\n<\/ul>\n<p>Vos utilisatrices et utilisateurs ne surveillent pas la vitesse de votre page ou votre score LPC. <strong>La performance est quelque chose que l\u2019on per\u00e7oit<\/strong>. Il est donc tout aussi important de cr\u00e9er une exp\u00e9rience continue et per\u00e7ue comme rapide. Voici quelques m\u00e9thodes et id\u00e9es pour vous aider dans ce sens.<\/p>\n<h3>Designer les \u00e9tats d\u2019interactivit\u00e9<\/h3>\n<p>L&rsquo;un des param\u00e8tres des vitals est le <span lang=\"en\">FID (First Input Delay<\/span>) et <strong>mesure l&rsquo;interactivit\u00e9<\/strong>.<\/p>\n<p>La plupart du temps, nous nous arr\u00eatons \u00e0 \u00ab l&rsquo;\u00e9tat par d\u00e9faut final sur l&rsquo;\u00e9cran \u00bb et oublions l&rsquo;interactivit\u00e9 comme le survol, la navigation au clavier, au <span lang=\"en\">touch<\/span>, etc, etc. Pourtant, \u00e7a fait partie du travail de designer de les imaginer et documenter.<\/p>\n<p>Je communique g\u00e9n\u00e9ralement les \u00e9tats interactifs dans le <span lang=\"en\">design system<\/span> (afin que les d\u00e9veloppeurs n&rsquo;aient pas \u00e0 passer par 40 maquettes pour trouver o\u00f9 je cache l&rsquo;interaction)<\/p>\n<p>J\u2019essaie \u00e9galement de proposer les <strong>diff\u00e9rentes interactions des composants<\/strong> \u00e0 l\u2019aide de sch\u00e9mas d\u2019interactions qui lisent comment le composant va se comporter \u00e0 diff\u00e9rents \u00e9tats, ce qu\u2019il se passe au clique mais \u00e9galement la navigation au clavier.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7869\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/interactions.png\" alt=\"Examples d'interactions au clique et de documentation d'interactions au clique et au clavier\" width=\"3841\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/interactions.png 3841w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/interactions-768x216.png 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/interactions-1536x432.png 1536w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/interactions-2048x576.png 2048w\" sizes=\"(max-width: 3841px) 100vw, 3841px\" \/><\/p>\n<h3>Designer pour le support hors ligne<\/h3>\n<p>Et nous pourrions aller plus loin.<\/p>\n<p>Que diriez-vous d&rsquo;<strong>imaginer des exp\u00e9riences avec un support hors ligne <\/strong>m\u00eame pour le web ?<\/p>\n<p>Par exemple<\/p>\n<ul>\n<li aria-level=\"1\">Le site de <a href=\"https:\/\/www.sarasoueidan.com\/\">Sara Soueidan<\/a> vous permet de <strong>sauvegarder des pages<\/strong> pour une consommation ult\u00e9rieure hors ligne<\/li>\n<li aria-level=\"1\">Le <a href=\"https:\/\/www.ft.com\/magazine\">FTweekend<\/a> <strong>cache l&rsquo;\u00e9dition d&rsquo;aujourd&rsquo;hui<\/strong>. Vous pouvez donc commencer \u00e0 lire et \u00e0 \u00e9crire un article, et y revenir plus tard. M\u00eame si vous n&rsquo;avez plus de connexion (ou une connexion pas top dans le m\u00e9tro).<\/li>\n<\/ul>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7870\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/designer-pour-le-offline.jpg\" alt=\"Screenshot des 2 sites mention\u00e9s\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/designer-pour-le-offline.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/designer-pour-le-offline-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/designer-pour-le-offline-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p>Nous pourrions \u00e9galement <strong>stocker les donn\u00e9es des formulaires dans le cache<\/strong>. Comme \u00e7a, si la personne soumet le formulaire mais qu\u2019il y a une erreur de connexion, elle n\u2019a <strong>pas perdu les donn\u00e9es<\/strong> et n\u2019as pas besoin de les re-remplir. D\u2019ailleurs Geoffrey Crofte a un petit script pour vous aider qui s\u2019appelle \u00ab <a href=\"https:\/\/geoffreycrofte.github.io\/form-saver\/\">form-saver <\/a>\u00bb<\/p>\n<h3>Designer pour la synchronisation en t\u00e2che de fond<\/h3>\n<p>Un autre moyen courant de g\u00e9rer la perte de connexion sur les applications natives est d&rsquo;avoir de la <strong>synchronisation en t\u00e2che de fond. <\/strong>Et on peut maintenant (bient\u00f4t) le faire pour des sites web aussi (gr\u00e2ce \u00e0 <a href=\"https:\/\/developers.google.com\/web\/updates\/2015\/12\/background-sync\" hreflang=\"en\">Background Sync API<\/a>).<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7871\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/designer-synchronisation-donnees.jpg\" alt=\"Example de fausse app avec les diff\u00e9rents \u00e9tats du composant\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/designer-synchronisation-donnees.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/designer-synchronisation-donnees-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/designer-synchronisation-donnees-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p>Cela apport de nouveaux <strong>challenges<\/strong> et <strong>nouveaux \u00e9tats \u00e0 designer<\/strong>:<\/p>\n<ul>\n<li aria-level=\"1\">\u00c0 quoi ressemble un \u00ab <strong>\u00e9chec de la synchronisation<\/strong> \u00bb, \u00ab <strong>en cours de synchronisation<\/strong> \u00bb, un \u00ab <strong>succ\u00e8s de la synchronisation<\/strong> \u00bb au de la du composant dans son \u00e9tat \u201cid\u00e9al\u201d<\/li>\n<li aria-level=\"1\">\u00c0 quoi ressemble le <strong>message<\/strong> (g\u00e9n\u00e9ralement un toast ou autre) qui indique aux personnes que le contenu ne peut pas \u00eatre synchronis\u00e9 et qu&rsquo;il le sera plus tard ?<\/li>\n<\/ul>\n<p>En outre, vous allez sans doute pr\u00e9voir une <strong>notification<\/strong> <strong>une fois que l&rsquo;\u00e9l\u00e9ment a \u00e9t\u00e9 synchronis\u00e9 en arri\u00e8re-plan<\/strong> si la personne a quitt\u00e9 l\u2019App ou le site. Il va aussi falloir en designer et r\u00e9diger le contenu ;)<\/p>\n<h3>Designer pour diff\u00e9rentes conditions de bande passante<\/h3>\n<p>Une autre id\u00e9e int\u00e9ressante serait d&rsquo;<strong>adapter l&rsquo;interface aux conditions du r\u00e9seau et de bande passante. <\/strong>Nous ne sommes pas tous dans le monde sur un r\u00e9seau 4G (ou 5G) super rapide. Dans les applications natives (mais aussi sur le web), YouTube (et Netflix) changent la qualit\u00e9 de la vid\u00e9o en fonction de la bande passante. \u00c7a explique pourquoi parfois d\u2019un coup votre vid\u00e9o est toute pixelis\u00e9e et 3 secondes apr\u00e8s c\u2019est revenu \u00e0 la normale. La qualit\u00e9 a \u00e9t\u00e9 r\u00e9duite \u00e0 cause sans doute d\u2019une mini baisse de d\u00e9bit.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7872\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/designer-connexion-bandepassante.jpg\" alt=\"example du blog avec un placeholder \u00e0 la place de l'image et d'une alerte sur un site de vision conference\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/designer-connexion-bandepassante.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/designer-connexion-bandepassante-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/designer-connexion-bandepassante-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p>On peut imaginer des cas d&rsquo;utilisation int\u00e9ressants pour cela :<\/p>\n<ul>\n<li aria-level=\"1\">Peut-\u00eatre ne pas charger les images d\u00e9coratives pour un blog<\/li>\n<li aria-level=\"1\">Avoir <strong>un message qui informe la personne que la connexion n&rsquo;est pas bonne<\/strong> et qu\u2019elle devrait peut-\u00eatre ne <strong>\u00e9teindre la webcam<\/strong><\/li>\n<\/ul>\n<p>Les possibilit\u00e9s sont assez <strong>int\u00e9ressantes<\/strong>. Mais l\u00e0 encore, toutes ces choses doivent \u00eatre pr\u00e9par\u00e9es et <strong>faire partie de nos parcours utilisateurs.<\/strong><\/p>\n<h3>Ne pas gaspiller les ressources techniques et cognitives.<\/h3>\n<p>Non je ne vais pas vous parler d\u2019\u00e9cologie ici. Mais qu&rsquo;est-ce qui est pire que de cliquer sur la mauvaise ic\u00f4ne parce qu\u2019il n\u2019y a pas de label, puis la page se charge, ce n&rsquo;est pas la bonne page. On doit retourner la page pr\u00e9c\u00e9dente, retrouver le bon chemin ?<\/p>\n<p><strong>Ne faites pas perdre leur temps et leurs ressources (cognitives et navigateur) \u00e0 vos utilisatrices et utilisateurs !<\/strong><\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-7873\" src=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/userflow.jpg\" alt=\"Exemple de userflow\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/userflow.jpg 1920w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/userflow-768x432.jpg 768w, https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/userflow-1536x864.jpg 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p>Voici comment \u00e9viter cela:<\/p>\n<ul>\n<li aria-level=\"1\">Je me r\u00e9p\u00e8te : <strong>faites vos devoirs, faites vos recherches<\/strong> : comprenez vraiment ce que les gens attendent. Pour cela un outil int\u00e9ressant est la<a href=\"https:\/\/stephaniewalter.design\/fr\/blog\/introduction-aux-user-journey-maps-modeles-pdf-a-telecharger\/\"> cartographie du user journey<\/a>.<\/li>\n<li aria-level=\"1\">Comprendre leurs <strong>mod\u00e8les mentaux<\/strong> : comment les gens s&rsquo;attendent-ils \u00e0 faire quelque chose ? Essayez de faire en sorte que votre interface, vos parcours s\u2019adaptent et suivent ces mod\u00e8les.<\/li>\n<li aria-level=\"1\">Cr\u00e9er des sch\u00e9mas de <strong>parcours utilisateurs<\/strong> pour optimiser la navigation et les parcours et \u00e9viter la perte de ressources.<\/li>\n<li aria-level=\"1\">Testez-le, testez les flux d&rsquo;utilisateurs, les chemins, etc.<\/li>\n<\/ul>\n<p>Enfin, si on parle gaspille des ressources : <strong>plus il y a de fonctionnalit\u00e9s, plus il faut de temps et de ressources pour les charger<\/strong>. Mais aussi : <strong>plus l&rsquo;interface est complexe et plus elle g\u00e9n\u00e8re une charge cognitive<\/strong>. Et une charge cognitive importante fait que les utilisateurs per\u00e7oivent le site comme plus lent, simplement parce qu&rsquo;il leur faut plus de temps et d&rsquo;efforts pour faire quelque chose. L\u2019inverse est vrai d\u2019ailleurs, un site lent \u00e0 charger mais o\u00f9 les personnes arrivent \u00e0 accomplir leurs t\u00e2ches sans trop d\u2019efforts sera per\u00e7u comme plus performant.<\/p>\n<p>Je ne dis pas que vous ne pouvez pas avoir une interface complexe. D\u2019ailleurs, Morgane Peng a un super article sur le sujet de la \u00ab sur simplification des interfaces m\u00e9tier \u00bb :<a href=\"https:\/\/uxdesign.cc\/over-complicated-over-simplified-the-ux-efficient-frontier-561d7773bc6b\"> Over-complicated? Over-simplified? The UX Efficient Frontier<\/a>.<\/p>\n<p>Mais\u2026 <strong>Si personne n&rsquo;utilise un bouton ou une fonction, pourquoi le garder ?<\/strong><\/p>\n<p>Du coup pensez \u00e0 <strong>monitorer l&rsquo;utilisation de vos fonctionnalit\u00e9s<\/strong>. Faites un suivi et assurez-vous que vous n&rsquo;avez pas de \u00ab fonctionnalit\u00e9s mortes \u00bb dans vos sites et web App. Parce que \u00e7a aussi \u00e7a peut jouer sur la perception de la performance.<\/p>\n<h2>En conclusion\u2026<\/h2>\n<p>J\u2019ai partag\u00e9 avec vous certaines de mes <strong>m\u00e9thodes<\/strong> et un peu de mon <strong>processus<\/strong> lorsqu&rsquo;il s&rsquo;agit de designer en ayant la performance \u00e0 l&rsquo;esprit.<\/p>\n<p>\u00c7a veut souvent dire, essayer de <strong>penser certains \u00e9tats qu\u2019on consid\u00e8re souvent comme des cas marginaux<\/strong> et qu\u2019on a justement tendance \u00e0 oublier un peu trop souvent.<\/p>\n<p>Si vous n\u2019avez pas le temps de les designer, essayez au moins d\u2019en <strong>discuter<\/strong> et de les <strong>documenter<\/strong> quelque part. Concevoir la performance, c&rsquo;est concevoir l&rsquo;ensemble de l&rsquo;exp\u00e9rience pour ses utilisatrices et utilisateurs. C\u2019est aller au-del\u00e0 du \u00ab cas parfait de l\u2019\u00e9cran id\u00e9al \u00bb. C\u2019est le fruit d\u2019un effort de collaboration entre les \u00e9quipes de design, de dev et les autres.<\/p>\n<h2 id=\"slides\">Les slides<\/h2>\n<p>Les slides sont disponibles sur speakerdeck. J&rsquo;en profite pour ajouter que les slides tout comme toutes les images de cet article ne sont PAS libres de droits. Surtout qu&rsquo;il y a des images de projet. Donc, non, vous n&rsquo;avez pas le droit de les r\u00e9utiliser.<\/p>\n<p><script async class=\"speakerdeck-embed\" data-id=\"b6f977c6f57145ba832768f2f560fe0b\" data-ratio=\"1.77777777777778\" src=\"\/\/speakerdeck.com\/assets\/embed.js\"><\/script><\/p>\n<h2 id=\"video\">La video<\/h2>\n<p>Vous pouvez voir la conf\u00e9fence de 25 minutes en francais avec les soustitres youtube.<\/p>\n<div class=\"videoWrapper\"><iframe loading=\"lazy\" src=\"https:\/\/www.youtube-nocookie.com\/embed\/t9XZ8X6HVkw\" width=\"560\" height=\"315\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/div>\n<div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>En g\u00e9n\u00e9ral, les \u00e9quipes de design livrent l\u2019\u00e9cran dans un \u00ab\u202f\u00e9tat parfait\u202f\u00bb. Mais que se passe-t-il si le site met du temps \u00e0 charger, une donn\u00e9e manque, en cas d\u2019erreur, de contenus vides, etc. ? Designer ces cas oubli\u00e9s\u202f permet grandement d\u2019am\u00e9liorer la collaboration designer \/ d\u00e9veloppeurs et d\u2019am\u00e9liorer l\u2019exp\u00e9rience utilisateur! Petit guide de \u00ab\u00a0ce qu&rsquo;il ne faut pas oublier\u00a0\u00bb quand on design pour la performance.<\/p>\n","protected":false},"author":3,"featured_media":7874,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[55],"tags":[],"class_list":["post-7841","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ux-ui-web-design"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Design et performance : ces cas oubli\u00e9s - par St\u00e9phanie Walter - UX Researcher &amp; Designer<\/title>\n<meta name=\"description\" content=\"Guide de &quot;ce qu&#039;il ne faut pas oublier&quot; quand on design pour la performance : \u00e9crans de chargement, vide, erreurs, synchronisation, perte de connexion, etc.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Design et performance : ces cas oubli\u00e9s - par St\u00e9phanie Walter - UX Researcher &amp; Designer\" \/>\n<meta property=\"og:description\" content=\"Guide de &quot;ce qu&#039;il ne faut pas oublier&quot; quand on design pour la performance : \u00e9crans de chargement, vide, erreurs, synchronisation, perte de connexion, etc.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/\" \/>\n<meta property=\"og:site_name\" content=\"St\u00e9phanie Walter - Senior UX designer, experte mobile, conf\u00e9rences et articles.\" \/>\n<meta property=\"article:published_time\" content=\"2021-03-02T19:41:45+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-03-03T08:25:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/design-performance-cas-oublies@2x.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1700\" \/>\n\t<meta property=\"og:image:height\" content=\"700\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"St\u00e9phanie Walter\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/bsky.app\/profile\/stephaniewalter.bsky.social\" \/>\n<meta name=\"twitter:site\" content=\"@walterstephanie\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"St\u00e9phanie Walter\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"24 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/\",\"url\":\"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/\",\"name\":\"Design et performance : ces cas oubli\u00e9s - par St\u00e9phanie Walter - UX Researcher & Designer\",\"isPartOf\":{\"@id\":\"https:\/\/stephaniewalter.design\/fr\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/design-performance-cas-oublies@2x.jpg\",\"datePublished\":\"2021-03-02T19:41:45+00:00\",\"dateModified\":\"2021-03-03T08:25:47+00:00\",\"author\":{\"@id\":\"https:\/\/stephaniewalter.design\/fr\/#\/schema\/person\/643a9e5afcb1e550b6f4dca290fbf4cf\"},\"description\":\"Guide de \\\"ce qu'il ne faut pas oublier\\\" quand on design pour la performance : \u00e9crans de chargement, vide, erreurs, synchronisation, perte de connexion, etc.\",\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/#primaryimage\",\"url\":\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/design-performance-cas-oublies@2x.jpg\",\"contentUrl\":\"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/design-performance-cas-oublies@2x.jpg\",\"width\":1700,\"height\":700},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/stephaniewalter.design\/fr\/#website\",\"url\":\"https:\/\/stephaniewalter.design\/fr\/\",\"name\":\"St\u00e9phanie Walter - Senior UX designer, experte mobile, conf\u00e9rences et articles.\",\"description\":\"Je partage ici mes conseils, mes ressources et outils sur la conception centr\u00e9e utilisateur, la recherche et tests utilisateur, le design de produits, la strat\u00e9gie mobile, l&#039;utilisabilit\u00e9 et l&#039;accessibilit\u00e9.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/stephaniewalter.design\/fr\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/stephaniewalter.design\/fr\/#\/schema\/person\/643a9e5afcb1e550b6f4dca290fbf4cf\",\"name\":\"St\u00e9phanie Walter\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/stephaniewalter.design\/fr\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/3311148a94caa2e5ae146ff1cdf9aaf3a0127a7db0337d8c8cbbfc4a425cab0e?s=96&d=retro&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/3311148a94caa2e5ae146ff1cdf9aaf3a0127a7db0337d8c8cbbfc4a425cab0e?s=96&d=retro&r=g\",\"caption\":\"St\u00e9phanie Walter\"},\"description\":\"UX Researcher &amp; Product Designer. Mobile Expert. Public speaker. Blog writer. Google Dev Expert Web Platform and Product Design (GDE)\",\"sameAs\":[\"https:\/\/stephaniewalter.design\/\",\"https:\/\/www.linkedin.com\/in\/stephaniewalterpro\/\",\"https:\/\/x.com\/https:\/\/bsky.app\/profile\/stephaniewalter.bsky.social\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Design et performance : ces cas oubli\u00e9s - par St\u00e9phanie Walter - UX Researcher & Designer","description":"Guide de \"ce qu'il ne faut pas oublier\" quand on design pour la performance : \u00e9crans de chargement, vide, erreurs, synchronisation, perte de connexion, etc.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/","og_locale":"fr_FR","og_type":"article","og_title":"Design et performance : ces cas oubli\u00e9s - par St\u00e9phanie Walter - UX Researcher & Designer","og_description":"Guide de \"ce qu'il ne faut pas oublier\" quand on design pour la performance : \u00e9crans de chargement, vide, erreurs, synchronisation, perte de connexion, etc.","og_url":"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/","og_site_name":"St\u00e9phanie Walter - Senior UX designer, experte mobile, conf\u00e9rences et articles.","article_published_time":"2021-03-02T19:41:45+00:00","article_modified_time":"2021-03-03T08:25:47+00:00","og_image":[{"width":1700,"height":700,"url":"https:\/\/stephaniewalter.design\/wp-content\/blogs.dir\/2\/files\/2021\/03\/design-performance-cas-oublies@2x.jpg","type":"image\/jpeg"}],"author":"St\u00e9phanie Walter","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/bsky.app\/profile\/stephaniewalter.bsky.social","twitter_site":"@walterstephanie","twitter_misc":{"\u00c9crit par":"St\u00e9phanie Walter","Dur\u00e9e de lecture estim\u00e9e":"24 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/","url":"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/","name":"Design et performance : ces cas oubli\u00e9s - par St\u00e9phanie Walter - UX Researcher & Designer","isPartOf":{"@id":"https:\/\/stephaniewalter.design\/fr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/#primaryimage"},"image":{"@id":"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/#primaryimage"},"thumbnailUrl":"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/design-performance-cas-oublies@2x.jpg","datePublished":"2021-03-02T19:41:45+00:00","dateModified":"2021-03-03T08:25:47+00:00","author":{"@id":"https:\/\/stephaniewalter.design\/fr\/#\/schema\/person\/643a9e5afcb1e550b6f4dca290fbf4cf"},"description":"Guide de \"ce qu'il ne faut pas oublier\" quand on design pour la performance : \u00e9crans de chargement, vide, erreurs, synchronisation, perte de connexion, etc.","inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/stephaniewalter.design\/fr\/blog\/design-et-performance-ces-cas-oublies\/#primaryimage","url":"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/design-performance-cas-oublies@2x.jpg","contentUrl":"https:\/\/stephaniewalter.design\/fr\/files\/2021\/03\/design-performance-cas-oublies@2x.jpg","width":1700,"height":700},{"@type":"WebSite","@id":"https:\/\/stephaniewalter.design\/fr\/#website","url":"https:\/\/stephaniewalter.design\/fr\/","name":"St\u00e9phanie Walter - Senior UX designer, experte mobile, conf\u00e9rences et articles.","description":"Je partage ici mes conseils, mes ressources et outils sur la conception centr\u00e9e utilisateur, la recherche et tests utilisateur, le design de produits, la strat\u00e9gie mobile, l&#039;utilisabilit\u00e9 et l&#039;accessibilit\u00e9.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/stephaniewalter.design\/fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"https:\/\/stephaniewalter.design\/fr\/#\/schema\/person\/643a9e5afcb1e550b6f4dca290fbf4cf","name":"St\u00e9phanie Walter","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/stephaniewalter.design\/fr\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/3311148a94caa2e5ae146ff1cdf9aaf3a0127a7db0337d8c8cbbfc4a425cab0e?s=96&d=retro&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3311148a94caa2e5ae146ff1cdf9aaf3a0127a7db0337d8c8cbbfc4a425cab0e?s=96&d=retro&r=g","caption":"St\u00e9phanie Walter"},"description":"UX Researcher &amp; Product Designer. Mobile Expert. Public speaker. Blog writer. Google Dev Expert Web Platform and Product Design (GDE)","sameAs":["https:\/\/stephaniewalter.design\/","https:\/\/www.linkedin.com\/in\/stephaniewalterpro\/","https:\/\/x.com\/https:\/\/bsky.app\/profile\/stephaniewalter.bsky.social"]}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/stephaniewalter.design\/fr\/wp-json\/wp\/v2\/posts\/7841","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/stephaniewalter.design\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/stephaniewalter.design\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/stephaniewalter.design\/fr\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/stephaniewalter.design\/fr\/wp-json\/wp\/v2\/comments?post=7841"}],"version-history":[{"count":0,"href":"https:\/\/stephaniewalter.design\/fr\/wp-json\/wp\/v2\/posts\/7841\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/stephaniewalter.design\/fr\/wp-json\/wp\/v2\/media\/7874"}],"wp:attachment":[{"href":"https:\/\/stephaniewalter.design\/fr\/wp-json\/wp\/v2\/media?parent=7841"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/stephaniewalter.design\/fr\/wp-json\/wp\/v2\/categories?post=7841"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/stephaniewalter.design\/fr\/wp-json\/wp\/v2\/tags?post=7841"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}