Cas d’étude : le dogfooding Testeum

Dogfooding testeum

Dans l’article précédent, nous présentions les avantages du dogfooding et de quelle façon il permet de dépasser ses biais cognitifs. Dans cet article, nous partageons avec vous un exemple concret de dogfooding qui a été mis en œuvre sur l’un de nos projets : Testeum.

Ce site web est une plateforme qui a vocation à révolutionner le domaine du test participatif (ou crowdtesting). Testeum aide les créateurs de sites web et d’applications mobiles à améliorer la qualité de leurs produits en détectant les anomalies facilement et rapidement. Ce projet a été construit aux côté d’Hightest, et est en production depuis octobre 2020.

Les biais dans le monde de la qualité logicielle

Hightest est une société dont la raison d’être est de consolider la qualité des logiciels, ou pour simplifier, d’éviter que des catastrophes arrivent à cause de bugs oubliés dans un recoin du code. Ariane V, ça vous parle ?
En bons testeurs, les membres de l’équipe Hightest ont donc tout fait pour que la plateforme Testeum soit irréprochable. Toutefois, ont-ils échappé à tous les biais cognitifs qui jalonnaient ce parcours ? Non, c’aurait été impossible, et d’ailleurs pas toujours souhaitable. Les biais cognitifs du testeur ont fait l’objet il y a quelques années d’une belle série d’articles ; prenez le temps de la découvrir !

Nous allons toutefois en retenir quelques-uns pour notre cas d’étude :

  • Les testeurs sont influencés par les bugs qu’ils ont déjà trouvés. Ils vont spontanément regarder avec plus d’attention les zones qui ont déjà été buggées par le passé. Ce ne sont pas forcément les zones qui importent le plus à l’utilisateur final, même si ça reste une stratégie très efficace, voir le principe de regroupement des défauts.
  • Un peu dans le même esprit, les testeurs ont tendance à se focaliser sur ce qui ne fonctionne pas. L’utilisateur voit une page d’accueil avec une multitude de fonctionnalités ; le testeur va voir en premier la petite entrée de menu un peu trop décalée sur la droite, se rappeler qu’il a déjà déclaré un bug, avoir les yeux qui sautent sur un autre petit détail… Bref, spontanément une vision très différente de l’utilisateur final.
  • Les testeurs se focalisent aussi sur ce qui pourrait mal fonctionner. Ils imaginent des cas de test parfois extrêmement sophistiqués pour chercher la petite bête, tout en sachant que la plupart des utilisateurs vont juste faire deux-trois clics standards et rester dans les sentiers battus. Sous la bannière de la loi de Murphy, ils avancent d’un pas déterminé vers d’hypothétiques bugs. Dans cette mesure, il peut parfois leur arriver d’oublier certaines réalités fonctionnelles.
  • Les testeurs se font une certaine idée du produit et de ce qu’il doit être. Cette idée n’est pas forcément cohérente avec ce qu’attendent vraiment les utilisateurs (cela dit, ils ne sont pas les seuls à avoir ce biais !)
  • De manière plus générale, à force d’avoir la tête dans le produit, les testeurs comme les autres membres de l’équipe projet acquièrent des automatismes et certains fonctionnements leur paraissent évidents alors qu’ils ne le sont pas pour un utilisateur néophyte.
  • Aussi, à force de valider un périmètre, un biais de testeur consiste à finir par valider seulement les fonctionnalités, en ne pensant plus au besoin initial. C’est un peu la même différence qu’entre se dire « je vais marcher mille pas aux abords de chez moi en tournant toujours à droite » et « je vais sortir pour découvrir les services les plus proches de mon quartier » !

Les testeurs sont donc… un peu buggés. Comme nous tous ! Le dogfooding leur a cependant permis de trouver de nouvelles idées pour améliorer leur produit.
Voici comment.

Dogfooding niveau 1 : découvrir le vrai parcours utilisateur

Ressentir les besoins de l’utilisateur final

Par un hasard bien pratique pour l’exercice, un des membres construit sur son temps libre une petite application web : une cible possible pour lancer une session de dogfooding pour mettre Testeum à l’épreuve.

La personne a donc créé un compte « éditeur » sur Testeum. Ce n’était pas la première fois qu’elle arpentait ce formulaire, loin de là, mais la première qu’elle créait un « vrai compte » avec un besoin similaire à celui d’un utilisateur final. Créer un vrai compte : rien que ça, ça a commencé à changer sa vision du produit !

Ressentir les mêmes craintes

Elle a ensuite entamé le parcours utilisateur « classique » : la création d’une commande. Et là, la magie du dogfooding a vraiment commencé à opérer ; de vraies questions ont été suscitées par cette fréquentation du produit. « Qu’est-ce qui va se passer si je ne rédige pas bien mes scénarios de test ? Comment pourrai-je me corriger ? » Voilà des questions qu’on ne se pose pas quand on interagit avec des données de test qui n’ont aucune importance !

On n’a pas seulement besoin d’assurer que tout puisse se passer correctement ; il faut aussi anticiper le fait que l’utilisateur pourrait se tromper à tout moment. Et on le comprend d’autant mieux quand on ressent soi-même la peur de se tromper en utilisant son propre applicatif.

Ressentir les mêmes agacements

Certains irritants ont également pu être rencontrés.

« Remplir ce fichier Excel est quand même assez fastidieux… »

Ou encore : « J’aimerais bien pouvoir saisir mes objectifs de test directement sur la plateforme, et pouvoir les réutiliser plus tard ! »

Découvrir de nouveaux besoins

Une fois la commande Testeum créée, les tests ont commencé à être joués par les crowdtesteurs. A ce moment, de nouvelles attentes se font ressentir :

  • « Quand même, j’aimerais bien savoir qui a créé quel bug ! »
  • « J’aimerais bien pouvoir demander une précision à ce testeur pour mieux comprendre le bug. »
  • « Ce rapport de bug est vraiment bien écrit, j’aimerais bien pouvoir remercier le testeur ! »

Cerise sur le gâteau pour cette équipe de testeurs, cette expérience de dogfooding a permis de découvrir de nouveaux bugs, car l’utilisation qui était faite de l’outil n’était pas tout à fait la même que lors des tests.

Bilan des courses ? En une après-midi, 5 idées de nouvelles fonctionnalités et 2 bugs. Pas mal ! Et au-delà de ces chiffres, une « satisfaction client » ressentie par un membre de l’équipe projet : de quoi donner encore plus de motivation à transmettre cette satisfaction à de « vrais » clients.

Dogfooding en abyme : le niveau supérieur

Mais nos amis de Hightest ne se sont pas arrêtés là. Comme le produit le leur permettait, ils ont pris le parti d’effectuer en plus une session de dogfooding en abyme. C’est-à-dire de faire tester cette plateforme de test… via cette même plateforme de test. Cette démarche a été naturellement baptisée « Testeumception » !

Concrètement, ils ont demandé aux testeurs de Testeum d’exécuter des scénarios de test sur leur environnement d’intégration, tout en remontant les résultats des tests sur l’environnement de production. C’aurait pu tourner au quiproquo, mais tout s’est bien passé !

En prime, cela leur a permis de détecter 2 anomalies qu’ils n’avaient jusqu’alors pas trouvées : une bonne nouvelle pour l’équipe qualité, et en même temps le signe que Testeum est bien capable, même en sollicitant des personnes qui ne sont pas forcément du métier, de compléter avantageusement une équipe de testeurs chevronnés.

Et après ?

Les résultats du dogfooding, mis en regard avec les premiers retours utilisateurs, ont permis d’imaginer une V2 pour Testeum. Celle-ci est en train d’être peaufinée par nos équipes en ce moment même !

Alors, le dogfooding, c’est pour quand chez vous ?