Tetris et le développement logiciel
Posted by Aurélien Pelletier | Filed under Uncategorized
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.
Tags: methodologie

December 21st, 2007 at 12:33 am
J’ai aussi beaucoup apprécié le parrallèle
“L’objectif c’est de jouer le plus longtemps possible”
December 21st, 2007 at 9:21 am
[...] Je fais un lien entre la remarque d’Aurélien Pelletier sur la métaphore entre le refactoring et le jeu Tétris d’un côté, et de l’autre côté l’évolution des interfaces graphiques des logiciels précédemment évoquée dans la note GameWare. [...]