Admettre que l’on n’est pas dans le secret des dieux
Ne pas concevoir maintenant en faisant des hypothèses sur le futur sans avoir les éléments.
Ne pas supposer que l’on va avoir besoin de quelque chose. Ne pas supposer que l’on ne va pas avoir besoin de quelque chose.
(cf Options Thinking dans Lean Software Development de Mary & Tom Poppendieck)
Avec agilité, mais avec clarté
Concevoir quand même à chaque itération, en équipe, pour bénéficier d’un maximum de créativité, pour partager la conception. Poser vraiment le problème, à fond.
Ne pas aller trop vite, aller assez vite
Prendre le temps d’étudier les différents scénarios, les critères selon lesquels on va les retenir, l’évaluation des scénarios afin de prendre la bonne décision.
Concevoir dans un intervalle de temps limité (ex: réunion de conception de 15h à 17h30, pas plus). Cela oblige à se concentrer sur l’essentiel.
Articuler besoin & solution
Concevoir et affiner sa conception en articulant les différents niveaux de besoin et solution.
J’ai besoin d’un historique règlementaire pour ça je logge tout dans un fichier pour ça j’utilise log4j et la programmation orientée aspect
Bien distinguer besoin (pourquoi) et solution (quoi). La solution d’un besoin devenant un besoin attendant lui même des solutions.
Ex:
Besoin = historique règlementaire, Solution = log dans un fichier
Besoin = log dans un fichier,Solution = log4j + POA
J’ai appliqué cette approche à mes initiatives open-source, cf http://softreves.wordpress.com)
Confronter sa conception au réel, au fur et à mesure.
Le réel ca peut être de tenter de l’implémenter et voir comment ça vient.
Le réel ca peut être d’élaborer des exemples et voir comment ils sont traités par l’algorithme.
Le réel ca peut être un collègue qui fait une revue de conception pour voir si elle est bien posée, si on n’a rien oublié d’évident.
Laisser faire le temps
Laisser reposer un peu, aussi, pour que les neurones et les synapses communiquent en vous et maturent l’idée.
Avec le courage de défaire et refaire
Et puis si, confronté au réel, quelque chose cloche, avoir le courage de remettre ses plans sur le métier, en particulier de prendre le temps de le faire.
Plus tard, si confrontée à de nouveaux besoins, la conception qui a été implémentée est maintenant inadéquate, re-concevoir, re-factorer (grâce à une couverture par les tests automatiques élevée).