Pourquoi et comment maîtriser sa dette technique ?
Nous avons tous déjà entendu parler d’histoires où en choisissant de faire appel au professionnel qui propose les tarifs les moins chers, on se retrouve sur le long terme, avec une prestation qui a coûté plus chère que si nous étions passé par le prestataire proposant des prix plus élevés. Dans le secteur de la construction par exemple, mais cela est également vrai dans le secteur des logiciels offshore.
Qu’est-ce que la dette technique ?
Aujourd’hui, de plus en plus d’entreprises fondent leur business model sur la conception et le développement d’une plateforme web. Selon Ward Cunningham, l’inventeur du concept du Wiki, la dette technique signifie que, tous les compromis que ce soit en termes de contraintes de temps, de budget, de négligence ou bien d’ignorance accumulent une « dette technique » qui devra être remboursée à un moment donné. Tout cela en prenant en compte que la valeur du code tend à évoluer avec le temps. Dans tout projet informatique, certaines dettes techniques sont inévitables, elles peuvent cependant être contrôlées afin de minimiser leur impact financier sur la durée de vie d’une solution informatique.
La dette technique est inévitable
La dette technique ne peut pas être évitée. Qu’on le veuille ou non, la dette technique augmente avec le temps.
La perte de l’expertise technique en est un exemple, dans le cas où l’on souhaite faire évoluer l’application on peut se retrouver face à un manque de compétence technique, de règles métiers et aussi un manque de connaissance du besoin originel (les membres de l’équipe changent sur toute la durée de vie d’un projet). Les composants applicatifs évoluent, leur évolution est certes plus lente que celle d’un framework mais si le logiciel ou le système d’information ne maintient pas ses composants en conformité avec l’évolution des standards du marché et des bonnes pratiques alors la dette technique augmentera encore plus rapidement.
Le remboursement de cette dette constitue un budget et un réel effort qui doit être prévu le plus tôt possible. Si l’écart entre les attentes du marché et la « santé logiciel » se creuse trop alors le logiciel sera de plus en plus endetté.
Exemple de dette technique
Versions des technologies
Une plateforme informatique a été développée avec le framework PHP Laravel. La première version a été développée en 2011 avec la première version de Laravel. 7 ans après en 2018, ce framework PHP en est à sa 7ème version. Plus on avance dans le temps, plus des nouvelles versions voient le jour, par conséquent plus le temps passe, plus la dette technique augmente et plus elle sera difficile à rembourser.
Qualité du code, sécurité, documentation, évolutivité etc.
Ne pas mettre à niveau la technologie de ses applications rend également les applicatifs vulnérables aux menaces de sécurité. En outre si le logiciel n’a pas été développé conformément aux bonnes pratiques de développements, ou souffre d’un code mal documenté, cela va également alourdir la dette technique.
En effet, rembourser la dette technique demandera dans ces cas précis :
• De recruter l’équipe technique disposant des compétences sur la dernière version de la technologie,
• D’investir dans des coûts de recrutement,
• Et selon la qualité de de la solution développée cela peut passer par du nettoyage de code, du refactoring etc. si les bonnes pratiques du web n’ont pas été mises en place dès le départ.
La qualité du code est donc une condition sinéquanone pour maîtriser au maximum la pérennité de son logiciel et la croissance de son entreprise.
Bien évidemment, en intégrant dans le management du projet la gestion des risques, en pilotant un projet informatique par ce type de risque, et en mettant en place, dès l’origine, des actions préventives, il est possible de réduire cette dette technique.
Anticiper sa dette technique
Mieux vaut investir un peu plus au départ et ne pas chercher absolument à réduire les coûts coûte que coûte et sélectionner son prestataire informatique aussi sur sur son expertise et la qualité de sa production. Cela permet d’assurer un développement durable.
Se poser les bonnes questions avant de sélectionner son partenaire en développement (type de contrat, type de services, offres de maintenance etc.)
Sélectionnez une entreprise professionnelle et qui dispose d’une expertise éprouvée : le partenaire informatique doit s’efforcer dès l’origine de bien comprendre votre vision du projet à court et long terme et les enjeux business qui en découlent. Il doit également vous conseiller dans les choix technologiques à effectuer.
Assurez-vous que le code livré est bien documenté, cela réduira considérablement les coûts de maintenance et de support et assurera la transférabilité de votre application (à une nouvelle équipe de développement, à un nouveau prestataire)
La mise en place de tests automatisés pour lutter contre la perte d’intégrité et d’exactitude des fonctions de votre logiciel.
La mise en place de l’intégration continue pour limiter le nombre de bugs.
Enfin, une approche DevOps fournie par le prestataire informatique serait un idéal pour prendre soin de la santé de votre système d’information.
Conclusion
La gestion de la dette technique fait partie d’un investissement responsable. Il existe de nombreuses solutions pour la réduire et mettre en place un écosystème technologique durable. Le plus important serait donc de choisir votre équipe ou votre partenaire de développement en fonction de leur capacité à gérer ce défi.
Bocasay, SSII offshore propose ses services de qualité en développement informatique. Dotée d’une expertise éprouvée sur plus de 150 projets, nous accompagnons les PME, éditeurs de logiciels et toutes entreprises qui ont un projet informatique et qui recherche un prestataire professionnel et qualitatif travaillant sous une méthodologie agile.
Les autres actualités relatives à l’ingénierie informatique offshore sont disponibles.
Source: spiria.com et blog-octo.com