Faire évoluer un logiciel c’est comme jouer à Tetris.
Au début c’est facile. Les nouvelles pièces qui tombent représentent les fonctionnalités demandés par le client. Il n’y a pas encore trop de code, c’est propre, on peut facilement intégrer les nouveaux blocks.
Mais au fil du temps la quantité de code à maintenir augmente, sa qualité se dégrade, il y a des trous dans vos lignes de Tetris.
Vous y arrivez encore, il vous reste un peu de marge de manoeuvre, vous faites tourner les pièces pour adapter la demande du client à votre existant.
En anticipant un peu vous auriez pu prévoir un emplacement pour accueillir la prochaine pièce à venir sans la faire tourner.
Malheureseument vous n’avez pas refactoré votre code à temps. Votre client à un nouveau besoin. Bien qu’il soit simple, c’est la modification de trop, votre code explose: GAME OVER
La métaphore est de Régis Medina lors des rencontres agiles de mardi dernier.
J’ai aussi beaucoup apprécié le parrallèle 🙂
“L’objectif c’est de jouer le plus longtemps possible”
Pingback: Christian Fauré » Blog Archive » HardCore Tetris