Extreme programming

La programmation extrême :
mode de développement de l'entreprise agile.


Hugues Sansen
hsansen@tibco.com


"Agilité" et "entreprise agile" sont en passe de devenir les locutions à la mode, non seulement chez les stratèges d'entreprise mais aussi chez les informaticiens. Elles traduisent en effet la nécessité pour les entreprises de s'organiser pour suivre les évolutions rapides et de moins en moins prévisibles sur le long terme de leur environnement. Dans ce contexte, il y a fort à parier que la programmation extrême telle qu'elle est exposée par Kent Beck  en soit une des principales manifestations en informatique.

 

Quand Napoléon 1er quitta brusquement le camp de Boulogne, le 28 Août 1805, pour retourner son armée de 200000 hommes contre l’Alliance, il lui fit parcourir les 600 kilomètres qui les séparaient d'Ulm en un temps record de 23 jours, pour y remporter le 20 septembre 1805 une victoire de préparation sur le général autrichien Mack, avant de remporter la décisive victoire d'Austerlitz, le 2 décembre 1805.
Il avait divisé son armée en 7 armées « miniatures » 

autonomes. Chacune, d'une taille adaptée aux capacités de son chef, était une armée complète en réduction et dotée de toutes les armes. Elles parcoururent la distance sur autant de chemins parallèles. Bien qu'indépendantes, on dirait aujourd'hui qu'elles présentaient entre elles des interfaces minimales, elles avançaient de conserve à moins d’une journée de marche des plus proches afin de se porter secours le cas échéant. Choisies pour permettre à chaque armée de garder son homogénéité,

 étapes étaient autant de points de contrôles synchronisant l'ensemble. Le télégraphe de Chappe permettait à l'Empereur de rester en contact permanent avec ses généraux. Napoléon 1er avait fait de son armée un organisme particulièrement agile.

Kent Beck est sans doute l'un des maîtres à penser actuels majeurs enmatière de développement par objets en général et Smalltalk en  particulier. Son expérience sur de grands projets lui a permis de mettre en oeuvre et de valider avec brio des principes simples de développement qui appliquent les règles universelles de la conduite de projet. Il ne doit sans doute rien à Napoléon 1er mais tous les deux ont en commun leur conception des projets complexes: 
-diviser le projet global en autant de micro-projets verticaux que possible,
-mettre en place des équipes à fort potentiel et très autonomes

Napoléon 1er à Boulogne
Copyright Hugues Sansen Juin 2000
p1/4
 page 2