logo chat

William Dodé - Informaticien indépendant

eXtreme Programming

L'eXtreme programming est une méthode de développement qui apporte des avantages autant pour le développeur que pour l'utilisateur.

Voici une introduction sommaire de cette méthode que j'applique dans le cadre de mes projets en tant qu'informaticien indépendant.

Pour une information plus complète, consultez http://extremeprogramming.org/

Le but de l'eXtreme programming est de réaliser des applications qui s'adaptent à l'utilisateur, au moment où les besoins se font sentir.

Tous les développeurs et utilisateurs savent qu'il est illusoire de vouloir écrire un cahier des charges définitif avant la réalisation et que c'est souvent une fois l'application réalisée que l'on se rend compte des besoins réels. L'eXtreme programming ne fait que reprendre les techniques qui ont émergées de ces faits plutôt que de les ignorer.

En pratique cela consiste en :

images/binome.jpg
  • Une programmation rapide qui va à l'essentiel. Sans chercher à prévoir l'imprévisible.
  • Des mises à jours fréquentes afin de travailler avec l'utilisateur et non pour l'utilisateur.
  • Des tests unitaires et fonctionnels1 qui permettent de pouvoir faire évoluer l'application sans crainte de casser l'existant, tout en réduisant l'étape fastidieuse de beta-test.
  • Un travail à deux sur le même l'écran (même pour les independants ;-), voir photo).
  • Cette liste de pratiques est loin d'être exhaustive...
[1]Batterie de tests automatiques qui permettent de valider chaque étapes de la réalisation.

eXtreme programming et logiciels libres

Le mode de développement des logiciels libres utilise souvent les méthodes de l'eXtreme programming (parfois sans le savoir).

  • Le nombre d'utilisateurs est très grand et surtout très changeant, ce qui fait que les besoins évoluent sans cesse et sont rarement définis au début.
  • L'évolution incessante et le nombre important de développeurs nécessite des tests unitaires particulièrement rigoureux.