Le test « à distance » en Agile

Jeudi 17 octobre dernier s’est tenue une table ronde particulièrement enrichissante pendant la STLS. Une des questions abordées était « Peut-on faire du test Agile à distance ?« .

Pour être honnête j’ai été très surpris des réponses et des différents retours d’expériences positifs sur cette pratique. En effet, jusqu’à maintenant les seuls échos que j’avais eu étaient négatifs.

Mon point de vue d’avant la soirée n’était vraiment de savoir si c’était possible (car soyons honnête cela arrive forcément, notamment avec le télétravail) mais plutôt comment réduire les effets cette « distance » .

Revenons rapidement sur les bases

En Scrum (et plus généralement en Agile) on privilégie une colocalisation. La raison est simple, les personnes travaillant sur le produit développé sont peu nombreuses et forment une équipe pluri-disciplinaire. Afin d’assurer une bonne organisation il faut que l’ensemble des personnes forment une véritable équipe! Ces personnes doivent être solidaires, bien se connaitre mais surtout communiquer rapidement, fréquemment et efficacement.

Le moyen le plus simple de répondre à cette problématique est de resserrer les liens de l’équipe, de la faire travailler au même endroit afin de pouvoir communiquer oralement sans tampon de temps ou d’échanges écrits.

Les impacts de la distance sur une équipe Agile

Concrètement la distance sur les produits Agile est un gros handicap pour former une équipe Agile. Voici des effets que la distance génère si aucune adaptation n’est proposée:

  • Une perte de réactivité (et donc une baisse de la vélocité) dû à des incompréhensions ou des communications moins direct au sein de l’équipe
  • Une confiance défaillante au sein de l’équipe car ses membres ne se connaissent pas vraiment.
  • Un manque d’appropriation du produit par les membres de l’équipe. Ce manque d’appropriation est lié à la gestion des problèmes supplémentaires liés à la distance.
  • Globalement, un manque de cohésion dans l’équipe lié à la faiblesse ou l’absence de liens entre les différents membres de l’équipe.

Attention: l’ensemble des problématiques précédentes peuvent également exister dans des équipes étant dans une même salle! La colocalisation simplifie grandement la communication et les échanges mais ce n’est pas forcément suffisant pour que la mayonnaise prenne!

Les retours d’expérience ayant franchit l’obstacle de la distance

Au cours de la table ronde du 17 octobre il nous a été présenté au moins 3 produits où cette distance a fonctionné. Dans ces 3 cas les solutions mises en place diffèrent mais se sont révélées efficaces.

Voici un résumé de ces retours d’expérience:

  • Tests à l’étranger et équipe de développement dispersée
    Ce REX est particulièrement intéressant car les équipes de Scrum sont dispersées sur 3 sites mais aussi par la durée et l’évolution de son fonctionnement. En effet, les test on d’abord été externalisé en France. Puis en voyant que cela fonctionnait et l’accroissement de contraintes budgétaires, le test a été délocalisé au Portugal en partan de cette question simple: Si cela fonctionne à 100 km de distance, pourquoi cela ne fonctionnerait-il pas à 1500km de distance ?
    Cette barrière de la distance a été franchi grâce à la mise en place de processus, d’outils de communications (skype, visio conférences pour toutes les réunions) mais aussi de déplacements (minimum 2-3 jours pas mois) afin que les membres des équipes puissent régulièrement échanger directement. La mise en place de ces 3 éléments a permis de créer une proximité des membres de l’équipe et ce malgré l’éloignement géographique.
  • Testeurs à Sophia, développeurs à Montpellier et client à Avignon
    Sur ce projet, l’ensemble de l’équipe Agile était colocalisée. Néanmoins, les compétences de ses membres n’étaient pas assez importantes et il a été décidé d’intégrer dans cette équipe des personnes ayant cette compétence. Des testeurs ont alors intégré cette équipe Agile.
    Les testeurs ayant rejoint cette équipe se trouvaient éloigné des développeurs. Il y a donc eu une phase d’appropriation du produit mais aussi une phase pour permettre aux différents membres de se connaitre (je suppose avec des rencontres). Au final, le retour donné par les testeurs lors de la STLS est qu’ils se sentent aussi proches des développeurs que s’ils travaillaient juste à côté et ce notamment grâce aux outils de communications vidéo qui sont beaucoup utilisés.
  • Test externalisé
    Ce projet est le dernier REX ayant été présenté mais dispose, comme le premier d’un assez long vécu. Sur ce projet également l’externalisation des tests s’est bien passée et ce, grâce au travail effectué en amont.
    Un point intéressant à noter sur ce projet c’est qu’au départ les « sprints de test » et les « sprints de développement » étaient décalés (les testeurs testaient le développement du sprint précédent). Suite à l’utilisation du BDD (et d’autres mises en place) les sprints ont été fusionnés et maintenant les testeurs testent en même temps que les développement s’effectuent.
    Durant toutes ces années la qualité a été au rendez-vous car la société qui a externalisé ses tests continue de collaborer avec la société qui s’occupe de ces derniers.

Problématiques sans Retour d’expérience:

  • la distance qui engendre des décalages horaires important (ex: travail avec l’Inde ou le Brésil).
    Il existe des exemples de projet de recherche où contribuent des chercheurs venant des 4 coins du monde.
  • Travail avec de fortes divergences culturelles au sein d’une même équipe Agile dispersée

On peut néanmoins considérer que des solutions peuvent être trouvées pour palier à ces problématiques.

Anecdote personnelle

Pour être honnête j’ai été surpris parc les retours de la STLS alors que, avec mon expérience et un peu de réflexion, j’aurai dû m’apercevoir que j’avais déjà vécu ce type de succès avec ces mêmes contraintes (distance kilométrique, culture, décalage horaire) mais dans un autre domaine.

Je parle ici du jeu vidéo et des MMO RPG. Pour ceux qui ne le savent pas encore j’ai beaucoup joué à 2 MMO et suis monté assez haut dans les 2 cas car ai fini guild leader de la 3ème guilde du serveur dans le premier et un des responsables de la 3ème guilde dans le second. J’avais d’ailleurs arrêté de jouer au premier puis commencé à jouer au second juste car de nombreux joueurs du premier m’avaient inviter à les rejoindre!

Au cours de cette expérience qui a duré environ 8 ans (de 17 à 25 ans) une communauté s’est créée, des liens forts se sont tissés entre des personnes originaires de différents pays. A force de passer plusieurs heures par semaine avec les même personnes, l’amitié a pointé le bout de son nez, la confiance est tangible, une équipe soudée est là! Beaucoup de personnes se sont rencontré « IRL » car l’envie de se voir était très forte et que cela méritait un voyage. Des couples se sont même formés avec des résultats allant jusqu’au mariage et aux enfants!

Je me suis alors bien rendu compte que, peu importe le MMO et sa qualité, le plus important c’est les personnes avec qui je jouais. C’est d’ailleurs pour cela que j’ai commence à jouer à mon second MMO: retrouver certains de ces joueurs dont j’ai partagé une partie de la vie, les joies (en jeu mais pas seulement) mais aussi les tristesses: ce qui m’a le plus marqué, et qui restera sûrement gravé en moi pendant encore longtemps, est sans aucun doute le suicide d’un des membres de ma guilde, qui était en plus le mari d’une autre membre.

Au final, lorsque j’ai arrêté définitivement (en grande partie pour faute de temps) ce qui a été le plus dur n’était pas de ne plus jouer mais bien de ne plus discuter et vivre des moments avec les membres de ma guilde, mon équipe, mes amis « virtuels » mais pourtant bien « réels » derrière leur écran… et leur micro (vive Teamspeak, Ventrilo et tous les autres logiciels permettant d’échanger en temps réel et en jouant!).

Conclusion

L’Agile à distance est impossible! Il faut néanmoins se rappeler que la distance ne se mesure pas forcément en kilomètre mais plutôt, comme dirait Xavier Blanc, en distance au produit ou en distance et force des liens qui relient les différents membres d’une équipe!

La distance kilométrique engendre cependant des difficultés qui n’existent pas lorsque tout le monde est dans la même pièce. La distance géographique se doit d’être prise en compte comme une contrainte à laquelle l’équipe devra s’adapter. Il existe de nombreuses manières de limiter (d’annuler?) les effets de cette distance géographique, certains semblent néanmoins quasiment indispensables comme: se faire rencontrer les équipes (avec des déplacements), utiliser des outils de communication « chaude » (éviter l’écrit, maintenir une fluidité dans les échanges) comme des outils de visio-conférence, créer une cohésion dans l’équipe.

Enfin, il semble bon de rappeler que même colocalisée, une équipe Agile peut se retrouver à faire de l’Agile à distance dans le cas où les membres de l’équipe ne communiquent pas assez, ne se font pas confiance ou ne sont pas forcément investit dans le produit qu’ils développe.

N’hésitez pas à me suivre et lire mes autres articles si vous voulez en apprendre plus sur le test ou venir partager vos connaissances

Pensez à rejoindre le groupe « Le métier du test » si vous souhaitez échanger sur le test

Merci à tous ceux qui mettent « j’aime », partagent ou commentent mes articles

N’hésitez pas à faire vos propres retours d’expérience en commentaire.

Publié par

Répondre

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l'aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s