BT

Diffuser les Connaissances et l'Innovation dans le Développement Logiciel d'Entreprise

Contribuez

Sujets

Sélectionner votre région

Accueil InfoQ Actualités Equilibrer les Tests Indépendants et la Collaboration Agile

Equilibrer les Tests Indépendants et la Collaboration Agile

Les équipes agiles multidisciplinaires incluent des développeurs et des testeurs et la collaboration est considérée importante pour que les équipes agiles réussissent. Dans le même temps il y a un avantage à avoir des testeurs indépendants, c'est qu'ils peuvent rendre compte de la qualité du logiciel sans crainte. Comment pouvez-vous trouver l'équilibre entre l'indépendance des testeurs et la collaboration au sein des équipes agiles ?

L'article The dotted line in role delineation between a developer and a tester par Rajini Padmanaban sur StickyMinds décrit comment un effort de collaboration dans les équipes peut introduire une ambiguïté dans les rôles et les responsabilités des membres de l'équipe. Elle explique qu'il est important pour les testeurs de rester indépendants :

(…) pour comprendre les limites du rôle de testeur dans une équipe de produit, il est important de conserver le facteur de l'indépendance. Ce que cela traduit est que quand les testeurs collaborent et partagent certaines responsabilités avec le reste de l'équipe, ils doivent faire très attention à ne pas assumer un travail qui est en conflit avec leurs objectifs de base ou leur indépendance.

Rajini affirme que l'équipe de développement est responsable des tests unitaires, et met en garde contre les testeurs étant trop impliqué et risquant leur indépendance :

Il est parfaitement normal que les testeurs apportent leur contribution aux développeurs sur la conception de cas de test unitaire, de les aider avec tous les problèmes d'outillage qu'ils rencontrent et de définir des paramètres autour des critères de réussite d'une build afin d'entrer en phase de test. Ce sont des scénarios où le testeur encourage le développeur à se concentrer sur la qualité sans perdre son propre facteur d'indépendance au sein de l'effort de test. Si un testeur voulait étendre son aide au point de créer lui-même des tests unitaires, il pourrait peut-être être tenté de toucher au code source afin de régler les défauts ou les bugs que les tests unitaires signalent. C'est un cas évident d'intrusion au sein des limites d'opérations du développeur.

Elle conclut son article en expliquant que les testeurs doivent être indépendants et se concentrer sur leurs tâches propres, et que la collaboration avec les développeurs ne devrait pas entrer en conflit avec ça :

Comprendre les deux faces de la médaille aidera à maintenir un équilibre sain entre les rôles de développeur et de testeur avec les deux collaborant sur le bon ensemble de domaines afin de livrer un produit d'une exceptionnelle qualité.

Elisabeth Hendrickson a écrit l'article Why I won’t go back, qui comprend un diagramme montrant comment les managers de test peuvent devenir inefficaces :

Image manquante

Elle résume les problèmes qu'elle a rencontrés dans la gestion des QA/groupes de test indépendants et pourquoi elle préfère que les tests soient enracinés :

Je préfère travailler avec des organisations afin d'intégrer les activités de tests tout au long du cycle et au sein de tous les rôles. Le rôle traditionnel d'un test manager au sein des organisations qui font les tests en fin de développement est un métier misérable. Ajoutez un soupçon de blâme de la part d'un QA dysfonctionnel pendant le sabotage simultané des efforts que fait le manager QA pour augmenter la qualité et le travail devient une recette pour la dépression et la toxicomanie.

Dans l'article agile vs fragile: The role of “independent” testing in the agile framework, Brian Copeland partage son point de vue sur comment les testeurs peuvent collaborer et rester indépendants :

Les testeurs doivent comprendre que leur travail est de faire une évaluation indépendante afin que la solution développée soit conforme aux exigences. Ça ne veut pas dire qu'ils ne peuvent pas parler aux développeurs ou participer aux activités du projet. Bien au contraire, ils doivent être impliqués et identifier les problèmes avant même qu'ils soient codés dans la solution. Ils doivent participer aux sessions de conception et regarder avec un œil indépendant ce qui a été oublié par l'équipe.

Son avis est que "le test devrait être intégré de manière continue dans chaque sprint" :

La phase de test doit être planifiée pendant la session de sprint planning. Tester coûte des story points, et l'équipe de test doit veiller à ce qu'ils comptent comme une partie du coût total du sprint. Tester ne peut être gardé pour la fin lorsque la dernière pièce du puzzle est en place.

Plus tôt cette année InfoQ a écrit à propos de l'amélioration de la collaboration entre les testeurs et les développeurs dans les équipes agiles, et a donné quelques exemples de ce que les scrum masters peuvent faire pour aider les testeurs et les développeurs à travailler ensemble au sein des équipes agiles et comment améliorer leur collaboration.

La consultante en test Fiona Charles a écrit un article sur TechWell à propos du testeur indépendant. Elle décrit les conséquences négatives qui peuvent résulter d'avoir des tests indépendants de l'organisation :

Trop souvent, les testeurs en viennent à se voir comme les uniques champions de la qualité dans leurs organisations. Au lieu de travailler avec les programmeurs et de parler avec eux au sujet de ce qu'ils construisaient, les testeurs restaient à leurs bureaux et attendaient que des besoins congelés leur arrivent et ensuite ne commençaient pas à tester avant d'avoir des systèmes congelés. De nombreux testeurs sont devenus des gardiens - des arbitres de qualité - au lieu de partenaires de développement. Dans certaines organisations, les testeurs en sont venus à être vus comme des obstacles, se mettant en travers du chemin du processus de développement sans ajouter de vraie valeur. Plutôt que d'augmenter la crédibilité des testeurs, la combinaison de cette opinion et de ces comportements l'a saboté.

Les organisations devraient reconnaître la valeur qu'apportent les testeurs, les encourager à s'exprimer et aider les testeurs à développer leurs compétences techniques et de communication. L'indépendance des testeurs est, selon Fiona, un état d'esprit rendu possible par la culture d'entreprise :

Si nous ne croyons pas que les organisations de test indépendantes sont la solution, est-ce que cela signifie que le concept de l'indépendance du testeur n'est plus important ? Je pense que c'est important. Un testeur a besoin d'être un partenaire de développement à part entière et un observateur indépendant, capable d'intervenir et de collaborer, tout en maintenant son identité en tant que testeur. Cela peut être un acte d'équilibrage extrêmement difficile pour tout le monde. Si l'ensemble de la culture ne le soutient pas, le testeur va abandonner.

Evaluer cet article

Pertinence
Style

Contenu Éducatif

BT