Classification des processus

Suite du billet sur les processus Agiles et pas Agiles.

Comme le font remarquer avec pertinence Camille et Matthieu dans leurs commentaires, il n'existe pas un processus traditionnel standard, traditionnel pris ici par opposition à Agile. Certains, de moins en moins nombreux, suivent des processus très séquentiels, en tout cas sans livraison intermédiaire. La plupart des processus réellement suivis sont plus ou moins itératifs, comme on le voit dans ce petit sondage que j'avais fait l'année dernière. J'y mélangeais itératif et agile, mais ce n'est pas la même chose, comme on va le voir.

Je me souviens d'une enquête de Forrester présentant cette classification des processus :

taxonomieProcessus.jpg

Ceux qui font des développements en passant par la production d'une maquette, ceux qui procèdent par lots, ceux qui produisent une ou plusieurs versions intermédiaires se rangent dans la boite itératif et incrémental. C'est la grande majorité. Ils ne sont pas Agiles pour autant.

Qu'est-ce qu'un processus Agile possède, en plus d'être itératif et incrémental ?

  • des itérations plus courtes -moins d'un mois- et régulières -toujours la même durée-
  • un client(ou un représentant des clients, comme le product owner dans Scrum) qui fait partie de l'équipe et une capacité au changement
  • des équipes qui s'organisent toutes seules, mais une gestion de projet bien plus précise-avec Scrum, une visibilité quotidienne-
  • des pratiques d'ingénierie, comme celles d'XP : intégration continue, propriété collective du code, remaniement, permettant de garantir en continu la qualité du code