Qu’est-ce que la méthode eXtreme Programming (XP) ?

Kent Beck - eXtreme Programming
Kent Beck – eXtreme Programming

Kent Beck (1961-) a développé la méthodologie Extreme Programming (XP) pour le développement de logiciels entre 1996 et 1999, alors qu’il gérait le développement d’un système de gestion des salaires pour Chrysler, le projet C3 (qui a été annulé en 2000 lorsque la société a acquis Daimler-Benz).

La méthodologie Extreme Programming (XP) est née officiellement en octobre 1999 avec le livre Extreme Programming Explained de Kent Beck. La méthode agile est définie comme :

  • une tentative de réconcilier l’humain avec la productivité ;
  • un mécanisme pour faciliter le changement social ;
  • une voie d’amélioration ;
  • un style de développement ;
  • une discipline de développement d’applications informatiques.

Son but principal est de réduire les coûts du changement.

Méthode extrême

L’Extreme Programming s’appuie sur une communication disciplinée et des tests unitaires afin de surmonter la résistance au remaniement substantiel (modification ou réécriture) du code que l’on trouve dans les projets de développement de logiciels traditionnels.

Les projets XP ont généralement peu ou pas de travail de conception en amont, et se concentrent plutôt sur le développement de la fonctionnalité la plus importante du système en une itération rapide, suivie par la deuxième plus importante, puis la troisième et ainsi de suite.

Au fur et à mesure que le système progresse et que de nouveaux problèmes apparaissent, le code est impitoyablement remanié pour en tenir compte, même si cela implique de le réécrire complètement à chaque itération. Un vaste ensemble de tests unitaires est étendu et conservé à chaque itération ultérieure afin de soutenir ce processus et de mettre rapidement en évidence les problèmes du code remanié.

Bien qu’elle ne fasse pas spécifiquement partie du processus, la programmation en binôme est souvent utilisée en conjonction avec XP afin d’améliorer encore les capacités de test, de fournir une caisse de résonance et de prévenir les erreurs évidentes des programmeurs lorsqu’elles se produisent (un développeur repère l’erreur de l’autre au moment où elle est commise).

Le processus d’Extreme Programming, de par sa nature même, exige une interaction profonde et constante avec le client pour le logiciel développé à chaque itération, et a des frais généraux relativement élevés. Le retour sur investissement est que les projets ont quelque chose à montrer beaucoup plus rapidement que ce n’est le cas avec la plupart des méthodologies de développement traditionnelles.

 

 

 

Photo de Jan Kopřiva

 


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *