Performance Testing

Sub Text of Performance Testing Resources

Comparaison des méthodologies clés dans l’approche AGILE

by Swaraj Gupta

Un grand nombre de méthodes sont suivies dans l’approche AGILE. Elles présentent toutes des ressemblances, mais aussi quelques différences. Je me propose dans cet article, de mettre en évidence ces différences. Les méthodes comparées ici sont XP, Scrum, ASD, Crystal, DSDM et FDD.

Documentation

AGILE recommande de minimiser la documentation et de consacrer plus de temps à l’activité de développement pur, bien que le volume de documentation préconisé varie selon les différentes approches.

  • XP (Xtreme Programming), Scrum, ASD (Agile Software Development) & Crystal ne mettent pas l’accent sur la documentation qui est limitée au minimum
  • Dans FDD, les équipes de test consacrent un temps important à la création de documents
  • DSDM, avec un volume minimum de document requis, se situe entre FDD et XP : moindre que celui de FDD et supérieur à celui de la méthode XP.

Une autre différence importante d’Agile avec les méthodes traditionnelles est que Agile préconise l’implication de l’utilisateur final dans le processus de développement. Toutefois, la participation des utilisateurs finaux varie selon les différentes approches. Par exemple :

  • L’utilisateur est activement impliqué dans XP
  • Les propriétaires produit représentent les utilisateurs finaux dans Scrum
  • Dans ASD, DSDM  et Crystal les utilisateurs finaux participent à toutes les versions incrémentielles
  • Dans FDD, les utilisateurs finaux participent via des rapports

Réunions d’équipes

Une communication élargie est l’un des principes de base d’Agile. Là encore, le niveau de communication diffère selon les approches :

  • Des réunions informelles, quotidiennes se tiennent dans Scrum et XP
  • Le partage de l’information se fait via des documents pour FDD et DSDM
  • Des réunions en face à face ont lieu dans Crystal et ASD

Taille des projets

La taille des projets et des équipes diffère également d’une méthode à l’autre.

  • Alors que Scrum, DSDM, FDD et Crystal peuvent être suivies pour des projets de toute taille, les méthodes comme ASD et XP sont suivies uniquement pour des projets plus petits.

Le Cycle Sprint

La période de temps d’itération diffère aussi selon les méthodes. Voici comment :

  • DSDM préconise de produire 80% de la solution en 20% du temps
  • XP a un cycle de Sprint variant de 1 à 6 semaines
  • Scrum : ->2 à 4 semaines
  • ASD : ->4-5 semaines
  • FDD peut avoir un sprint de cycle beaucoup plus court (2 jours) et peut varier jusqu’à 2 semaines (en fonction des exigences du projet)

XP (Xtreme Programming)

Avantages :

  1. Les utilisateurs finaux (clients) sont activement impliqués dans le processus de développement logiciel. Ainsi le produit développé a plus de chance de se rapprocher de la demande du client.
  2. Les retours de l’équipe de test sont pris très au sérieux et l’accent est mis sur l’auto-amélioration
  3. Les pratiques réputées les meilleures sont clairement définies et religieusement suivies par les équipes

Inconvénients :

  1. La documentation ayant moins d’importance, faire référence à une question soulevée par le passé (tout en travaillant sur des projets) relève du défi
  2. Parfois il est difficile d’introduire le client dans le cycle, tant il éloigné de l’équipe de développement. C’est alors un membre de l’équipe (comme un sponsor/PM) qui joue le rôle du client, d’où un manque de rigueur parfois observé.

DSDM

Avantages :

  1. Permet une gestion de projet efficace et un contrôle solide sur le cycle de vie du projet.
  2. Exigences en matière d’approche prioritaire, utiles à assurer en premier la livraison des fonctionnalités les plus importantes.

Inconvénients :

La documentation est complexe et consomme beaucoup de temps

SCRUM

Avantages :

  1. Un haut niveau de communication est observé au sein des équipes SCRUM, qui augmente l’accent mis sur la résolution des problèmes, l’amélioration des produits et de l’équipe par le biais des feedback
  2. La maîtrise de cette méthodologie est attestée par une certification. Par conséquent il devient facile pour les organisations de repérer et recruter les véritables experts dans cette pratique.
  3. La revue Harvard Business a fait beaucoup de bruit autour de Scrum. Cette approche doit dont être prise au sérieux par les entreprises.

Inconvénients :

  1. Faible documentation et donc facile à détourner
  2. Les propriétaires du produit perdent le contrôle sur le projet
  3. L’évolution des besoins amène les clients à exiger de plus en plus de fonctionnalités

FDD (Feature Driven Development)

Avantages :

  1. Multi-tâches possible
  2. Cette méthodologie peut être utilisée en cas d’applications complexes grâce à la création de documents et de rapports

Inconvénients :

  1. La complexité est telle qu’il n’y a aucun intérêt à utiliser cette méthode pour les petits projets
  2. Moins de communication au sein et à l’extérieur de l’équipe. Les équipes et les personnes apprennent donc moins les unes des autres.

CRYSTAL

Avantages :

  1. Composants majeurs et à haut risque livrés en priorité
  2. Communication efficace de l’équipe, ce qui facilite l’apprentissage parmi ses membres
  3. Cette méthodologie peut être ajustée selon le type de projet et la taille de l’équipe

Inconvénients :

  1. La planification et le développement ne dépendent des exigences, ce qui entraîne un problème de traçabilité dans Crystal

This post is also available in: Anglais


About Swaraj Gupta

Swaraj is a performance, automation and functional test expert who has worked on variety of desktop and mobile applications. The major areas that he focuses on are - functionality, usability, performance and consistency of application behavior. He manages the entire performance testing cycle of the projects that he is responsible for and works on multiple such engagements simultaneously. He has worked in variety of different business domains that include - Hi tech consulting, Financial services, management consulting, auditing services, e commerce, e learning, etcT

Learn more about QTest
AgileLoad.com
Agile Software Security


More Blog