Xtrem Programming

Xtrem Programming

Quelques notions..

  • Communication directe de vive voix.
  • feedback avec le client
  • simplicité. (pas focrément prévoir d’extention futur qui ne se feront jamais !!!)

en pratique

  • tout est basé sur l’implémentation des sécénarios utilisateurs du client
  • application fonctionnelle disponible le plus souvent possible pour faire des feed back
  • Tout programmer à 2 sur le même ordinateur !!
  • toute l’équipe doit connaitre l’entier du code
  • le minimum de documentation. L’accent est mis sur l’application fonctionnelle et simple. => commenter le code
  • réagir au changement plutôt que de suivre un plan
  • auto-organisation de l’équipe

Les problèmes à résoudre

En gros le problème de tout développement informatique c’est:

  • faire quelque chose qui correspond aux besoins du client.
  • mais le client ne sais pas exactement ce dont il a besoin
  • la communication entre le client et le programmeur n’est évidemment pas parfaite ce qui induit forcément des décalages de compréhension, entre ce que le client veux et ce que le programmeur comprend.

Donc les possibilités sont:

  • faire une application terriblement souple qui puisse gérer tout les cas possibles. Ce qui fait que même de manière parfois détournée le client arrivera toujours à faire ce qu’il veux.
  • faire une application qui fait juste ce que le client veux mais il faut que ses besoins soient très précis et connu du programmeur.

La première solution est assez idéale, mais terriblement longue à programmer et coûteuse.
La seconde solution est celle qui est la moins longue et coûteuse à développer, mais elle implique que le programmeur ai très bien compris les besoins du client, et que ceux-ci n’évoluent pas ! (ce qui souvent arrive… une idée en amenant une autre…)

La solution

L’ Xtrem programming propose une méthodologie qui prend en compte ces problèmes et qui tente de faire communiquer un maximum les gens de la manière la plus claire possible pour éviter les malentendus. De cette manière les développeurs vont comprendre au mieux les besoins du client et l’application réalisée sera la plus proche de l’application parfaite que l’on pourrait faire.

Les feedback fréquents permettent au client de savoir ce qu’il veut et de vérifier que ce qui se construit correspond à ses besoins.

L’Xtrem programming permet donc de réaliser des applications qui répondent de manière concrète et simple aux besoins actuels d’un client.

Cependant, ce ne sera peut être pas la meilleure des méthodes pour garantir qu’une application puisse correspondre à des besoins futurs !!!
… mais dans ce cas, le client reviendra vers le programmeur pour lui demander de nouvelles fonctionnalités !

Mon point de vue

Tout n’est pas manichéen, noir ou blanc. La solutions que je préconise est donc plutôt un mélange.
En effet, il est très important de communiquer un maximum, c’est ainsi que l’application va coller le plus possible aux besoins du client, mais il est églament possible de prévoir quelques évolutions possible pour ne pas être piégé plus tard en cas d’évolution futur.

Souvent le client ne voit pas tout de suite les évolutions futur qu’il pourrait intégrer, mais le développeur les voit!

26 Feb 2006 : 21:54