mardi 16 décembre 2008

ARMURE OU MOBILITE?

En 2000, Tom DeMarco (co-auteur du brillant PeopleWare) a rédigé une préface vraiment intéressante pour le livre Planning Extreme Programming de Kent Beck et Martin Fowler.

LE BALANCIER

Il évoque que dans le livre On War, Carl von Clausewitz constate que l'histoire de la guerre est assimilable au mouvement d'un balancier. Au fil du temps, ce balancier oscille entre avantages relatifs de l'armure et de la mobilité.

Les chevaliers en lourdes armures ont écrasé les fantassins peu protégés. La cavalerie légère a décimé les chevaliers trop lents. Les chars ont piétiné la cavalerie trop fragile. Les guérilléros armés de lance-roquettes transpercent les chars trop aveugles .. (et Paix sur Terre aux hommes de bonne volonté).

ET LE DÉVELOPPEMENT LOGICIEL DANS TOUT CELA?

Tom DeMarco constate que le développement logiciel suit le même mouvement de balancier entre l'armure (les processus lourds) et la mobilité (les démarches légères).

Au commencement, les développeurs adoptaient des démarches empiriques et rapides. Puis, avec le volume croissant des logiciels et les pertes de visibilité sur les projets, des processus lourds et formels ont été mis en place pour se protéger des échecs. Désormais, fatigués par l'inertie de ces démarches lentes et lourdes, les équipes passent à l'offensive et cherchent à réussir par des développement éclairs.

On dit d'ailleurs d'un process qu'il est lourd (comme une armure?). Aussi, l'"agilité" est un mot proche de "mobilité". De plus, l'agilité prône la réactivité et celle-ci n'est autre que la mobilité transposée au développement!

Il fut un temps où on cherchait ce qu'on pouvait ajouter à son process pour mieux se protéger contre le fiasco. Maintenant, les équipes pistent ce qu'elles peuvent retirer de leur process pour gagner en rapidité et gagner tout court.

PLUS GÉNÉRALEMENT

Il semble que lorsqu'on renforce son armure, on cherche à ne pas perdre. Par contre, lorsqu'on allège son armure, on cherche à gagner.

LE MOT DE LA FIN

Ces réflexions me ramènent bien sur au CMMi et à l'agilité. De quel côté se trouve le CMMi? De quel côté se range l'agilité? Cela a t-il un sens de les associer? Doit-on parler de CMMi et d'Agile ou de CMMi puis d'Agile? Le CMMi ouvre-t-il la porte à l'agilité car il voit le balancier le quitter pour pencher vers la mobilité? Vers où penchera le balancier après l'agilité?

1 commentaire:

  1. J'ai eu la chance (pour le côté expérience)de travailler dans des sociétés utilisant le cadre CMM Software et d'autres un cadre Agile.
    J'ai aussi réalisé pour le Gartner Group en 1998, la première synthèse de CMM en français à partir des travaux du Québécois Richard Basque. Puis un comparatif entre CMM et RAD. Plus récemment, l'année passée des organisations professionnelles de l'Ouest français m'ont commandé une étude sur le sujet Agile / CMMi.
    http://www.granit.org/data/upload/files/cri_granit_p1_0945h_jpvickoff_1J1isM.pdf
    Ma conclusion : Même si certaines pratiques sont communes, dans l’état actuel des choses, l’approche Agile représente à l’évidence la philosophie contraire de celle qui sous tend la normalisation et CMM (même CMMi light).

    RépondreSupprimer