Quelques principes en vrac

Épisode 6/8
Comme déjà abordé plus haut, les programmeurs ont quelques notions qu'il est intéressant de reprendre à son compte. Beaucoup de méthode de gestion sont issues du monde informatique alors autant revenir aux sources.
La gestion de projet, notamment les méthodes agiles viennent surtout du monde informatique. Aussi, il semble logique de regarder dans ce monde pour trouver quelques bonnes pratiques de programmation que l'on peut appliquer dans la vie de tous les jours. Ces principes ne viennent pas de moi (les autres non plus d'ailleurs) mais là c'est flagrant ! Je balance donc en vrac les plus connus en se raccrochant à autre chose que de la programmation. C'est parti pour les acronymes bizarres.
KISS
Mon préféré, Keep it simple, Stupid ou tout autre locution pour dire : fais simple, idiot. En fait, entre deux solutions, il faut toujours choisir la plus simple. Je pourrais vous être rasoir [note] jeux de mots, à vous de chercher[/note] sur le sujet mais puisque faut faire simple : ne chercher pas de solutions compliquées.
DRY
Appris avec ruby on rails : Don't repeat yourself . En clair et en français : ne pas réinventer la poudre. Nous passons beaucoup de temps à faire des choses qui existent par ailleurs, et même refaire des choses que l'on a déjà faite. Avant de se lancer dans une création ex nihilo, voyons ce qui a déjà été fait par notre voisin. On peut par exemple, très bien utiliser s'appuyer sur des bonnes pratiques de programmation pour éditer quelques principes. Le but du DRY est d'éviter les redondances. Bémol : cela ne veut pas dire qu'il faut utiliser un truc inadéquat par pure fainéantise.
YAGNI
You ain't gonna need it : vous n'en aurez pas besoin. En gros, ne vous encombrez pas de choses dont vous aurez éventuellement besoin et surtout n'anticipez pas les besoins des autres.
Exemple de la vie de tous les jours : vous allez chez le garagiste pour une vidange, soit 1 heure de boulot, mais il vous garde la journée et vous annonce fièrement qu'il vous installé un attache-remorque parce-qu'un jour, vous achèterez peut-être une caravane !! Cela vous a coûté un bras, vous avez perdu une journée, y'a des chances que vous ne soyez pas content...Par contre, YAGNI n’empêche pas l'anticipation, si vous prévoyez effectivement d'acheter une caravane dans 6 mois, faîtes poser l'attache lors de la vidange, cela vous évitera 2 déplacements.
MoSCoW
Rien à voir avec Moscou, en fait c'est MSCW, les o sont là pour arriver à le prononcer. Il s'agit plus d'une méthode. Elle est d'ailleurs utiliser en méthode agile [framework DSDM : DSDM est conçu pour être facilement adapté et utilisé en conjonction avec des méthodes traditionnelles telles que PRINCE2 ou en complément d'autres approches Agiles telles que Scrum.] pour la priorisation et ranger le "backlog" et même chez PRINCE2. On est donc en plein dedans et je reprends wikipédia :
- M : Must have this, c'est-à-dire 'doit être fait' (vital).
- S : Should have this if at all possible, c'est-à-dire devrait être fait dans la mesure du possible (essentiel).
- C : Could have this if it does not affect anything else, pourrait être fait dans la mesure où cela n'a pas d'impact sur les autres tâches (confort).
- W : Won't have this time but would like in the future, ne sera pas fait cette fois mais sera fait plus tard' (luxe, c'est votre zone d'optimisation budgétaire). On peut même ajouter nécessaire, sinon, poubelle direct.
Tout l'art consistant dans la négociation avec le client, payeur ou autre à ne pas mettre tout en must. Pour cela, il faut limiter le nombre de must possible (soit en nombre, soit en pourcentage...)
Conclusions
Il y en a sûrement pleins d'autres (dans l'idée Worse is better, Less is more…) mais je vais faire kiss, pour une fois et donc m'arrêter là.
Série "Principes"