Supposons que vous soyez un mécanicien spécialisé dans la personnalisation de voitures, même à partir de zéro, si le client le souhaite. Il y a ce client qui revient dans votre magasin de temps en temps pour mettre toujours quelque chose de brillant dans sa limousine géante.
Une fois, il vient pour faire installer un bon système de son. Vous effectuez avec diligence la tâche en passant les câbles et en les connectant correctement. Il sort un jour plus tard, il est heureux et paie généreusement, comme d'habitude.
Le mois suivant, il revient, mais cette fois, il souhaite installer un cinéma maison complet. Encore une fois, vous prenez la limousine. En tant que professionnel, vous revisitez le système audio et vous en simplifiez la maintenance en installant un système de tubes pour passer les câbles autour de la voiture. De cette façon, les fils sont protégés et plus faciles à retirer. Si vous devez en ajouter d'autres, ils seront également faciles à faire. Donc, vous déchirez les vieux fils, installez le tube et transmettez le système audio et les fils supplémentaires pour le cinéma, fermez le tout et vous avez terminé.
En réalisant que le client ne vous a pas demandé de remplacer l’ancien système audio, vous effacez une partie du coût des remplacements et des tubes. Cependant, vous gagnez encore de l'argent grâce à cet accord, mais pas autant que si vous aviez simplement jeté le système ensemble, comme vous l'avez fait la première fois.
Un mois plus tard, il revient, cette fois, il veut un système d'éclairage et il veut que les nouveaux haut-parleurs aient endommagé les anciens plus tôt dans la semaine.
Parce que tout est bien rangé, vous pouvez rapidement passer les nouveaux câbles d'éclairage dans votre tube, installer le système et remplacer le haut-parleur. Cependant, cette fois, vous avez terminé beaucoup plus rapidement, la reconfiguration a porté ses fruits en vous permettant de rester au top de votre forme.
Votre concurrent qui se moquait de vous pour avoir déchiré parfaitement les fils et pour installer tous ces tubes supplémentaires a toujours du mal à satisfaire son client. Il a certes été fait plus vite que vous la plupart du temps, mais avec le temps, ses clients se plaignent de la multiplication des retards et de la dégradation de la qualité globale du travail.
En regardant cela, vous réalisez que votre objectif, non seulement de rester dans l'entreprise, mais d'être le meilleur des armes à feu, est de trouver un équilibre entre ce que vous faites pour satisfaire les demandes de vos clients et ce que vous faites pour vous simplifier la vie. Très rarement, un client paiera les deux, vous devez donc gérer de près. Vous faites le pari que si vous agissez de manière proactive même si vous doublez les coûts, vous maintenez les coûts de maintenance à un pourcentage stable et contrôlé de votre productivité.
Le logiciel est identique, sauf que les programmeurs peuvent jouer avec le ruban adhésif numérique pendant TRES longtemps avant que les effets ne soient réellement ressentis par les clients et les gestionnaires. Malheureusement, à ce moment-là, le coût d'une nouvelle manipulation augmente de manière exponentielle en fonction de la quantité de ruban adhésif en place et de l'âge moyen dudit ruban.
C'est pourquoi il est important de continuer à restructurer le système. Très souvent, l'expérience nous montrera un nouveau moyen plus efficace de faire la même chose ou nous pouvons combiner des fonctionnalités similaires et exploiter les redondances au lieu de simplement les copier. C'est ainsi que nous maintenons le système mince et méchant. Le temps montrera qu'une refacturation constante du système pour répondre aux demandes maintiendra la productivité constante en contrôlant la quantité mise en maintenance.
La pose de ruban adhésif augmente momentanément la productivité au détriment du transport d’un système sous-optimal. Une dette technique est contractée chaque fois que la productivité immédiate est favorisée au détriment des autres aspects d’un système. L'analogie de la dette est bonne parce que, tout comme les intérêts sur le capital emprunté réduisent les profits, le temps emprunté pour faire des choses nécessite rapidement une maintenance plus importante et augmente la fragilité du système, forçant une équipe à dépenser des ressources supplémentaires pour la maintenance plutôt que pour la création. Tout comme son parent financier, si l'emprunt continue sans relâche, la plupart des ressources sont dépensées pour le remboursement des intérêts, ce qui laisse très peu de choses à améliorer. La dette technique grugera les ressources techniques à un point tel que la plupart des ressources sont dépensées pour que le système continue de fonctionner à toute vitesse, mettant un terme à toutes les autres améliorations possibles.
En fin de compte, la question est de ne pas savoir si nous devrions ou ne devrions pas le faire, mais s'il est éthique de laisser les gestionnaires et les clients croire qu'ils peuvent compter sur des chiffres de productivité artificiellement gonflés par l'utilisation de ruban adhésif. Certains penseraient que c'est une décision commerciale, mais franchement, c'est parce que les gestionnaires ne la comprennent pas. En fin de compte, quelqu'un devra payer la dette, que ce soit par le biais d'une restructuration lourde ou par la migration vers un nouveau système. C’est finalement à nous, programmeurs, de garder les systèmes maintenables, vous ne devriez pas avoir à demander de re-factoriser car c’est une partie inhérente du travail; ne pas comprendre cela, c’est ne pas comprendre ce qu'est le génie logiciel. Cela dit, je me rends compte que certains systèmes ont déjà contracté une dette importante et que le remboursement de cette dette nécessitera des décisions des payeurs. Votre travail consiste à au moins faire votre part pour arrêter d’emprunter. Cette dette a été contractéePAR NOUS, peut - être parce que nous ne savions pas mieux, parce que nous avions subi des pressions pour le faire, nous avons néanmoins contracté cette dette et très souvent, les personnes à qui nous avons confié la dette ne la comprennent pas et ne peuvent donc pas la gérer correctement.
Voici votre logiciel, tout est fait, j'espère que vous l'aimez ... Ho, au fait, j'ai utilisé votre carte de crédit au maximum, j'espère que cela ne vous dérange pas ... cya