Le modèle du bâtiment a été transposé à l'informatique parce qu'il était le seul disponible. Le transfert a échoué, et pour une raison structurelle qu'il vaut la peine de nommer précisément.
Quatre traits transposés tels quels
Une planification exhaustive : les spécifications sont figées avant de commencer. Une exécution séquentielle : le cycle en V, appliqué à la lettre. Un contrôle du plan : le succès, c'est respecter ce qui était prévu. Et des responsabilités en silos : ceux qui conçoivent ne sont pas ceux qui réalisent.
Aucun de ces quatre traits n'est absurde. Sur un chantier, ils sont même indispensables : on ne change pas les fondations d'un immeuble parce que le client a eu une idée au sixième étage.
Ce que cela a produit
Une explosion des coûts et des délais, d'abord, parce que chaque changement remet en cause l'ensemble de la chaîne de spécifications.
Des produits obsolètes à la livraison, ensuite : le marché a bougé plus vite que le plan, et ce qui sort correspond à un besoin d'il y a deux ans.
Une faible adoption, aussi : le plan ne correspondait pas au besoin réel, parce que le besoin réel n'était pas connu au moment où il a fallu l'écrire.
Et une dette technique accrue, enfin : quand la date approche, on se précipite pour livrer quelque chose de conforme, et l'on paye ce raccourci pendant des années.
La leçon, en une phrase
Le problème n'est jamais le modèle en soi. C'est l'écart entre les conditions qu'il suppose et celles où on l'emploie. Un cycle en V dans un environnement stable est un bon choix ; le même cycle sur un besoin qui se découvre en avançant produit mécaniquement les quatre conséquences ci-dessus.
Deux mondes
| Le bâtiment, cycle en V | Le logiciel, monde adaptatif | |
|---|---|---|
| Le besoin | Défini précisément dès le départ | Volatil, il évolue en avançant |
| L'environnement | Stable et connu | Complexe et incertain |
| Le changement | Coûteux : il remet en cause tout le V | Attendu : c'est le mode normal |
| Ce qu'on sait | On sait exactement quoi construire | Le client découvre son besoin en voyant le produit |
| La posture | On exécute le plan | On s'adapte pour construire la valeur |
La prédiction exhaustive n'est pas possible dans la colonne de droite. Le modèle doit devenir adaptatif.
