L’UX design est une approche structurée, qui vise à répondre aux besoins des utilisateurs. Basée sur une méthodologie précise, l’accent est mis sur la phase de recherche, pour produire les meilleures interfaces possible.
L’approche Agile repose quant à elle sur une délivrance des règles un peu complexes et vise à se débarrasser des structures et règles des méthodes traditionnelles. Elle prétend à des cycles de travail écourtés visant au respect des deadlines.
Basées sur un échange d’informations constant, les méthodes agiles permettent d’élaborer rapidement le produit idéal avec pour objectif de satisfaire à la fois les développeurs et le client.
L’UX design étant plus en phase avec la méthodologie Waterfall (en cascade) qu’avec les méthodologies Agile, l’intégration des démarches UX Design au sein d’une démarche agile n’est pas toujours simple dans les projets Web.
Comment alors peut-on combiner UX et Agile pour une conception innovante et qui répond réellement aux besoins des utilisateurs?
Pour rappel; lire ; Design Thinking VS Lean UX VS Agile – Les principales différences
C’est quoi la méthode Agile?
Aperçu de la méthode Agile
La méthode Agile est une approche du développement logiciel ayant pour objectif de délivrer en permanence des logiciels opérationnels créés fondés sur des itérations rapides et pertinentes. Cette approche itérative et collaborative prend en compte les besoins initiaux du client, sans exclure les changements possibles liés aux évolutions du projet.
Les méthodes agiles caractérisent un mode de gestion des projets informatiques qui pousse au dialogue entre toutes les parties prenantes: clients, utilisateurs, développeurs, etc. Agile se caractérise par la souplesse lors de la réalisation, la possibilité de modifier les plans et la capacité de respecter les délais de livraison.
Un cycle de développement Agile porte le client au centre du processus. Ceci offre au client demandeur une meilleure visibilité sur la réalité du projet avec tous ses aléas (en comparaison avec une méthode classique).
L’implication du client dans le processus de développement fournit à l’équipe un feedback régulier qui permet d’appliquer instantanément les changements nécessaires si besoin est.
Grâce à cette méthode itérative et habile, il sera possible notamment d’accélérer le développement logiciel.
L’approche Agile prend le contre-pied des approches traditionnelles prédictives et séquentielles de gestion de projets, de type cycle en V ou waterfall (en cascade). Ces méthodes classiques suivent une démarche monotone et rigide et organisent un projet logiciel comme une série de séquences linéaires. En Agile, il s’agit alors de rompre avec les pratiques traditionnelles bien trop exigeantes en matière de spécifications, notamment contractuelles.
Agile permet de perfectionner le cycle de conception, afin de raccourcir son temps d’exécution et pouvoir développer le projet dans le délai convenu.
Le développement Agile : le pourquoi du comment.
La gestion de projet classique en Waterfall est rigide et basée sur une planification minutieuse. La méthode se compose de phases linéaires et séquentielles, où une phase suit l’autre, et aucune nouvelle phase ne peut commencer tant que la précédente n’est pas terminée.
Par réaction aux contraintes de cette approche jugée trop réglementée, lourde, et micro-gérée, les méthodologies Agile ont vu le jour. Elles ont commencé à être développées dans les années 70 et 80, mais ce n’est qu’en 2001 que le Manifeste pour le développement logiciel Agile a été conçu, marquant ainsi le début de l’essor du développement Agile. Étant plus flexibles et adaptables au changement, ces méthodologies pallient aux limites de la méthode en cascade, permettant aux développeurs d’avancer de manière beaucoup plus rapide et plus efficace.
Tout a commencé lorsque l’industrie de développement logiciel n’a pu échapper à la réalité que les cycles de production et les méthodes de collaboration en cascade n’apportent pas les résultats escomptés. En effet, Une enquête de 1994 du « Standish Group » fait le constat suivant : « 31 % des projets informatiques sont arrêtés en cours de route, 52 % n’aboutissent qu’au prix d’un important dépassement des délais et du budget tout en offrant moins de fonctionnalités qu’il n’en était demandé ; seuls 16 % des projets peuvent être considérés comme des succès. ».
Cette même enquête reconduite en 2008 évalue le taux de réussite à 35%, marquant une amélioration plutôt positive pourtant dramatiquement faible. C’est pour pallier cette inefficacité et contrer que la méthode Agile a peu à peu commencé à être adoptée par les professionnels de l’informatique.
Le modèle traditionnel de gestion de projet mise sur le respect des engagements contractuels, laisse peu de contact entre les parties prenantes, ne laissant que peu ou pas de place aux ajustements. Par conséquent, un effet tunnel néfaste et conflictuel se crée, marqué par un décalage prépondérant entre le besoin initial et le produit final. D’ailleurs, cet effet tunnel empêche l’adoption d’idées à haute valeur ajoutée qui émergent en cours de développement, et ne permet pas de se débarrasser des fonctionnalités inadéquates découvertes en cours de route.
C’est là que la méthode Agile prend tout son sens. En partant du principe que les besoins sont toujours évolutifs et qu’ils ne sont jamais figés, elle permet de réduire voire de supprimer cet effet tunnel. Elle donne davantage de visibilité au client et l’implique du début à la fin du projet, à travers l’adoption d’un processus itératif et incrémental.
Les concepts clés et avantages des méthodologies Agile
On distingue plusieurs méthodes agiles à savoir:
- Scrum,
- Crystal,
- Dynamic Systems,
- Feature Driven Development (FDD), etc.
Peu importe la méthode appliquée, le paradigme Agile permet toujours d’optimiser le cycle de conception, dans le but de développer le projet dans le délai convenu.
La méthode Agile part du principe que planifier l’intégralité du projet dans tous ses détails, en déterminant ses spécifications avant même d’entamer le développement (approche prédictive) est contre productif.
De la sorte, et comme conclut dans le Manifeste pour le développement logiciel Agile, il existe quatre caractéristiques clés à privilégier absolument:
- Les individus et leurs interactions plus que les processus et les outils
- Des logiciels opérationnels plus qu’une documentation exhaustive
- La collaboration avec les clients plus que la négociation contractuelle
- L’adaptation au changement plus que le suivi d’un plan
Il est à noter que les auteurs du Manifeste ont souligné qu’ils ne préconisent pas l’abandon complet des éléments à la droite de cette liste (qui ne sont pas en gras), mais qu’ils ont simplement décidé de mettre l’accent et de valoriser les aspects qui offrent plus de souplesse et de rapidité d’exécution.
En bref, les méthodologies Agile (Scrum, Lean, Kanban ou DSDM…) partagent trois caractéristiques principales:
- Les workflows sont décomposés en itérations temporelles prédéfinies: des sprints de 1 à 4 semaines avec un travail incrémentiel
- Conversations de suivi: réunions quotidiennes, d’une durée de 5 à 15 minutes
- Focus sur la qualité et l’efficacité: prototypage, test et adaptation aux changements
Les bases des méthodologies Agile étant couvertes, nous pouvons passer au processus de conception UX.
Le process UX Design c’est quoi ?
Aperçu sur l’eXpérience Utilisateur UX en bref
L’UX design est une approche centrée utilisateur, qui prend en considération ses besoins afin de les traduire en une expérience optimale alignée avec ses attentes.
Afin de délivrer une interface digitale à la hauteur des aspirations de l’utilisateur, l’UX designer s’intéresse aux émotions ressenties lors de son interaction avec celle-ci. En UX, on tient compte de l’ergonomie, de la simplicité d’usage, de la faisabilité technique et des retours utilisateurs.
Les étapes clés en UX
Ces étapes de la démarche UX se réunissent pour créer une feuille de route pour les designers:
- La recherche UX: c’est le moment de collecter des données (qualitatives et quantitatives), identifier des variables et entreprendre la recherche sur les utilisateurs cible à travers les interviews, les questionnaires, ou encore un audit analytics.
- L’idéation: Le profil utilisateur enfin cerné, c’est le moment d’organiser des ateliers de co-création ou des séances d’idéation. Il s’agit de filtrer les informations, découvrir les opportunités, identifier les défis et sélectionner un framework pour le projet. Cette étape se veut itérative et collaborative
- La conception: Cette étape consiste à développer des solutions. Grâce au brainstorming, à la visualisation de wireframes, au prototypage, aux feedbacks, il est alors possible de s’attaquer à la conception d’une interface ergonomique, cohérente et simple.
L’UX design est une approche majoritairement linéaire et séquentielle (en cascade), puisque le processus de conception a un flux de travail clair et structuré – il se compose d’étapes bien organisées. Une fois qu’une étape est terminée, les concepteurs peuvent passer à la suivante ou ils peuvent également reculer d’une étape, par exemple, pour apporter des modifications au prototype.
Comment l’UX peut s’intégrer à la méthode Agile ?
D’après la définition et les éléments clés, l’UX design ressemble à une procédure pertinente et bien pensée. C’est bel et bien le cas. Tel est aussi le cas de la méthode Agile. De ce fait, il est tout à fait naturel de vouloir prendre quelque chose de bien et de vouloir l’améliorer. Dans notre cas on prendra les méthodologies Agile pour les appliquer à l’approche UX afin de ressortir avec une méthode autant efficace et que flexible. En effet, l’UX et Agile sont deux méthodes qui fonctionnent bien ensemble pour devenir l’Agile UX, il n’est cependant pas simple de les faire cohabiter, étant donné le caractère structuré en Waterfall de l’UX, et la flexibilité poussée de l’Agile.
La combinaison des deux méthodes garantit tout de même de rester en phase avec les réalités du développement de logiciels (découvrir nos services d’UX design pour les logiciels).
En effet, l’UX sert à structurer le travail et à optimiser les résultats grâce à l’approche centrée utilisateur, doté d’un côté flexible et itératif en phases d’idéation et de conception, il est parfaitement adaptable aux méthodes moins traditionnelles. Le côté flexible et rapide combiné à une communication transparente entre les différentes parties en Agile permet de garantir le bon déroulement du projet.
Il faut juste rester flexible et ouvert aux différentes méthodes communément employées.
En usant de la bonne temporalité (savoir quand intégrer quelle phase de l’UX dans un projet Agile), et des spécificités flexibles et itératives des phases d’idéation et de conception de la méthode UX, il est possible de combiner certains aspects de l’UX et d’Agile comme suit :
- Cascade pour la recherche: La recherche prend du temps et nécessite rigueur et organisation. Elle doit donc être réalisée au préalable du développement.
Cela comprend la recherche d’informations pertinentes sur terrain à travers le User Research, puis le partage de ces informations avec, notamment, l’équipe des développeurs. - Agile pour la conception: cela intègre la collaboration, le prototypage, les tests, les commentaires et l’amélioration continue dans le processus. Ce processus se veut de toute façon flexible et itératif, même en UX design.
Mot de la fin :
Le vrai différenciateur entre les entreprises aujourd’hui, n’est plus uniquement basé sur la fonction que doit réaliser notre produit/service pour satisfaire l’utilisateur mais aussi et surtout sur l’expérience utilisateur. L’UX design fait désormais partie de l’ADN de toute entreprise concurrentielle. Il est aussi primordial en entreprise d’adopter des méthodes de travail adaptées à notre réalité. Les équipes de développeurs bénéficient désormais d’une méthodologie Agile qui leur facilite le travail et la vie. Intelligemment intégrée à une approche UX, le succès de du produit fini n’en serait que plus assuré.
N’hésitez pas à nous contacter pour en savoir plus.