Tâche: Evaluation et amélioration de l'effort de test
Cette tâche aide à apporter des changements opportuns à l'effort de test afin d'augmenter son efficacité.
Disciplines: Test
Objet

L'objectif de cette tâche est de :

  • Evaluer la productivité, l'efficacité et l'étendue de l'effort de test
  • Apporter des ajustements à l'effort de test (tant tactique que stratégique) pour en améliorer l'efficacité
Relations
Etapes
Enregistrer l'état du travail
Objectif :  Acquérir une compréhension objective et actualisée de l'état général du travail de test par rapport au plan. 

Cette étape peut être effectuée de différentes façons, qui dépendent en grande partie de votre culture de projet. Lorsque vous le pouvez, rassemblez des rapports d'avancement préparés par des membres de l'équipe ou par des sous-groupes de celle-ci. Les plannings sont une autre source à prendre en compte. Lorsque des systèmes de planification tels que Microsoft Project sont activement utilisés et mis à jour, ils constituent une autre source utile d'informations. S'ils sont disponibles et activement utilisés, les systèmes de gestion des modifications et de la configuration peuvent également fournir des mesures ou des états d'objectifs.

Pour cette étape et les étapes suivantes qui traitent de la collecte d'informations et de l'évaluation de l'effort de test, tentez d'obtenir une vue équilibrée incluant les mesures objectives et subjectives. N'oubliez pas que les chiffres des objectifs ne donnent qu'une partie de la situation et qu'ils doivent être expliqués par le "climat" actuel du projet. Inversement, ne vous contentez pas d'informations subjectives et de spéculations sur l'effort de test, mais recherchez les preuves objectives qui les sous-tendent. Nous vous recommandons de compléter vos données objectives par des discussions avec les responsables d'équipes ou éventuellement avec les membres de l'équipe, afin de collecter des évaluations subjectives et jauger le niveau de confiance à avoir par rapport aux données objectives.

Recueillir les mesures de productivité et d'efficacité de l'effort de test
Objectif :  Rassembler et examiner les données objectives qui permettent d'effectuer l'évaluation de l'effort de test réalisé par l'équipe de test. 

Recherchez l'effort réalisé en matière d'identification, de définition, de conception, d'implémentation et d'exécution de tests. Recherchez les signes d'effort excessif consacré à un aspect de l'effort de test au détriment d'autres aspects. Recherchez également les domaines dans lesquels l'effort risque d'être improductif ou d'apporter un niveau trop faible d'avantages pour le niveau d'effort entrepris.

Examinez l'efficacité des tests. Recherchez les données qui confirment vos observations initiales relatives à l'efficacité. Tenez compte d'aspects tels que le taux d'incidents détectés, le nombre d'incident graves, les statistiques en double sur les incidents et les défauts non détectés identifiés.

Recueillir les mesures relatives à la distribution, aux tendances et aux données chronologiques des demandes de changement
Objectif :  Rassembler et examiner les données objectives qui permettent d'effectuer l'évaluation des incidents consignés par l'équipe de test. 

Identifiez les tendances importantes des données de demandes de modification. En règle générale, il est moins important dans cette tâche de passer du temps à analyser les volumes de données que d'identifier ce que les tendances de données indiquent. Recherchez les signes positifs tels qu'un taux stable de détection d'incidents, ou encore une augmentation ou une diminution régulière du taux de détection sur une période donnée. Recherchez les points extrêmes du taux de détection, qui indiquent que l'équipe de développement rencontre à ce moment-là des problèmes liés aux processus, à l'environnement, à la politique ou à d'autres sujets qui ont pour effet de réduire leur productivité.

Recherchez les tendances de clôture d'incidents. Recherchez les augmentations significatives de clôtures par le personnel de développement sous forme de cas "non reproductibles" ; identifiez les cas où il s'agit du résultat d'une analyse insuffisante de l'échec réalisée par l'équipe de test et quantifiez l'étendue de ce problème. Examinez les tendances des défauts fermés par le personnel de développement sous forme de cas "fonctionnant selon la conception" ; identifiez les cas où il s'agit du résultat d'une analyse insuffisante de la spécification réalisée par l'équipe de test et quantifiez l'étendue de ce problème. Confirmez que ces indications ne sont pas fausses mais sont dues à une surcharge de travail des développeurs. Certaines analyses doivent également être effectuées pour des tendances de vérification d'incidents au moment de la résolution : recherchez les tendances qui indiquent que les défauts en attente de vérification par l'équipe de test sont en surnombre et deviennent ingérables.

Recherchez les autres tendances qui signalent la présence de problèmes. Recherchez la méthode d'enregistrement ou de gestion des incidents adoptée par l'équipe de test : les informations insuffisantes ou ambiguës figurant dans une demande de modification sont difficiles à gérer et frustrantes pour un développeur. L'équipe doit surveiller la qualité des informations enregistrées pour les incidents. Vous pouvez également améliorer la clarté des demandes de modification associées, ce qui élimine toute ambiguïté et tout problème de langage ou de raisonnement. Collaborez avec les personnes qui ont créé ces produits pour vous assurer que l'essence du problème est clairement définie et encouragez-les à trouver des méthodes factuelles et précises de discussion des questions correspondantes.

Recherchez également les déséquilibres de répartition des incidents sous plusieurs dimensions différentes. Recherchez les domaines fonctionnels de l'application ou de la spécification pour lesquels le nombre d'incidents a augmenté : cela peut indiquer qu'un nombre de tests insuffisant a été entrepris dans ce domaine. Recherchez la répartition par membres de l'équipe de test : certains membres sont peut-être surchargés et la productivité en souffre peut-être.

Recueillir les mesures de traçabilité, de couverture et de dépendance
Objectif :  Rassembler et examiner les données objectives qui permettent d'effectuer l'évaluation de la traçabilité des actifs. 

Analysez l'état des relations de traçabilité entre les actifs de test (idées de test, cas de test, scripts de test, séries de tests et demandes de modification) et les actifs auxquels elles se rapportent en aval et en amont. Recherchez les signes indiquant que l'effort de test est concentré sur les domaines appropriés et sur un ensemble utile de motivations. Recherchez également les indications négatives suggérant que certains aspects des tests sont manquants ou qu'ils n'ont plus d'importance : si les équipes de développement travaillent pour des domaines non représentés par l'effort de test actuel, cela doit amener à s'interroger.

Evaluer les mesures et formuler une évaluation initiale
Objectif :  Evaluer les mesures et formuler une évaluation initiale de l'efficacité de l'effort de test par rapport au plan. 

Assemblez toutes les informations recueillies et évaluez-les collectivement. Souvenez-vous que chacune des données rassemblées traite uniquement d'un aspect de l'évaluation globale et que vous devez formuler l'évaluation de l'effort de test sur la base d'une vue équilibrée de la totalité des données.

Enregistrez votre évaluation initiale au format qui conviendra le mieux à toutes les parties prenantes et qui leur permettra d'apporter des commentaires et des appréciations en retour.

Enregistrer les informations
Objectif :  Documenter les informations recueillies en vue de les inclure dans un rapport de gestion de projet et pour l'analyse de l'évaluation suivante par rapport aux évaluations antérieures. 

Cette tâche génère des informations d'état résumées importantes pour le chef de projet et pour d'autres membres de l'équipe de gestion. Les rôles concernés utilisent ces informations pour prendre des décisions à propos du projet.

Il est recommandé d'enregistrer certains aspects de l'évaluation de l'effort de test au format qui permettra ensuite d'effectuer des comparaisons avec des évaluations antérieures. Cela vous permettra d'analyser la tendance relative des améliorations de l'effort de test sur une période donnée.

Présenter l'évaluation et recueillir les appréciations en retour
Objectif :  Demander aux parties prenantes une appréciation en retour sur l'effort de test afin de savoir s'il répond à leurs besoins. 

Présentez votre évaluation aux parties prenantes et demandez-leur s'ils ont des commentaires ou des appréciations en retour à formuler. Le format ou la méthode utilisée varie en fonction des projets : dans certains cas, il s'agira de discussions informelles ; dans d'autres, d'une simple publication sur l'Intranet ou encore d'une présentation formelle. Choisissez la formule la plus adaptée à votre culture.

Même avec la meilleure planification et documentation possible, des écarts existeront toujours entre l'attente initiale et le produit final. Cela s'applique aux tests et aux évaluations de logiciels tout autant qu'au développement lui-même. La valeur de cette étape consiste à solliciter le retour d'informations des parties prenantes et à identifier les points pour lesquels les attentes en matière de planification et de documentation n'ont pas été satisfaites.

Planifier et implémenter les initiatives d'amélioration
Objectif :  Identifier des domaines d'amélioration et formuler des stratégies permettant d'atteindre ces objectifs d'amélioration. 

Sur la base de votre analyse et des retours d'informations reçus des différentes parties prenantes, identifiez des possibilités d'amélioration. Recherchez des méthodes d'amélioration de l'efficacité et de la productivité des tests. Cela peut impliquer la réaffectation de personnel (création de binômes pour augmenter l'efficacité ou recours à des sous-traitants spécialisés), l'utilisation d'outils de productivité dans le but d'augmenter l'efficacité, la recherche d'approches et de techniques alternatives plus productives en termes de détection d'incidents.

Dans la plupart des cas, apportez les améliorations par étapes à l'effort de test et évitez de prendre le risque de déstabiliser le projet en appliquant de lourdes modifications. Dans certains cas seulement, des changements importants sont utiles. Utilisez votre jugement pour formuler une approche appropriée des améliorations à apporter et discuter de cela avec les autres membres de l'équipe de gestion afin d'obtenir leur avis avant d'engager l'équipe à mettre en application d'importantes modifications.

Surveiller et soutenir les initiatives d'amélioration
Objectif :  Garantir que les initiatives d'amélioration requises sont mises en place de façon satisfaisante et en temps voulu. 

Pour que les améliorations soient efficaces, vous devez gérer leur succès. Identifiez les méthodes de surveillance des initiatives d'amélioration (de préférence avant d'adopter ces initiatives) afin de vérifier leur efficacité. Surveillez activement leur déroulement en appliquant vous-même les modifications ou en demandant à une autre personne de l'équipe de le faire.

Les changements se heurtent presque toujours à des résistances ou à des problèmes qui doivent être résolus pour que les améliorations puissent voir le jour. Prévoyez du temps pour cet aspect et soyez préparé à répondre aux questions qui entravent le succès de l'initiative. Soyez sensible à la résistance naturelle aux changements et trouvez des méthodes appropriées de réponse aux préoccupations soulevées.

Evaluer et vérifier vos résultats
Objectif :  Vérifier que la tâche a été correctement réalisée et que les produits qui en résultent sont acceptables. 

Maintenant que vous avez achevé le travail, il serait utile de vérifier que ce travail a suffisamment de valeur et que vous n'avez pas simplement consommé de grandes quantités de papier. Vous devez évaluer si votre travail est d'une qualité correcte et qu'il est assez complet pour être utile aux membres de l'équipe qui en feront un usage ultérieur comme entrée pour leur propre travail. Si possible, utilisez les listes de contrôle fournies dans RUP pour vérifier que la qualité et l'exhaustivité sont "satisfaisantes".

Faites en sorte que les personnes qui effectuent les tâches en aval, et qui se basent sur votre travail comme entrée, prennent part à la revue de votre travail intermédiaire. Effectuez cette revue pendant que vous avez encore du temps disponible pour prendre les mesures qui répondent à leurs préoccupations. Vous devez également évaluer votre travail par rapport aux produits d'entrée clés pour vous assurer que vous les avez précisément et suffisamment représentés. Il peut être utile que l'auteur du produit d'entrée revoie votre travail sur cette base.

Essayez de vous rappeler que le RUP est un processus de livraison itératif et que dans de nombreux cas, les produits évoluent au fil du temps. A ce titre, il n'est généralement pas nécessaire - et c'est même souvent contre-productif - de former complètement un produit qui ne sera que partiellement utilisé ou ne sera pas du tout utilisé dans l'immédiat. Ceci parce qu'il y a une grande probabilité pour que la situation qui entoure le produit change - et que les hypothèses émises lors de la création du produit s'avèrent incorrectes - avant même l'utilisation du produit, occasionnant ainsi une perte d'efforts et une coûteuse reprise. Evitez également le piège consistant à utiliser trop de cycles pour la présentation au détriment de la valeur du contenu. Dans les environnements de projet où la présentation a une importance et une valeur économique en tant que résultat d'un projet, vous pouvez envisager d'utiliser une ressource administrative pour réaliser les tâches de présentation.