Je travaille pour une entreprise qui étudie cette question avec précision. Nous vous recommandons de prendre en compte 3 indicateurs décisionnels lorsque vous traitez une dette technique. Pour plus d'informations sur "comment" et "quand" pour les suivre, nous avons rassemblé un article récapitulatif 3 "Métriques permettant de comprendre et de traiter la dette technique" .
Quelles sont vos pensées? Heureux de répondre à vos questions et désireux d'entendre vos réactions :).
Propriété pour prévenir les défauts et la dette technique non désirée
La propriété est un indicateur avancé de la santé des ingénieurs.
Les parties de la base de code recevant des contributions de nombreuses personnes accumulent des difficultés au fil du temps, tandis que celles recevant des contributions de moins de personnes ont tendance à être dans un meilleur état. Il est plus facile de maintenir des normes élevées dans un groupe restreint, bien informé sur leur partie de la base de code.
Cela donne un certain pouvoir de prévision: les parties faiblement possédées de la base de code risquent d’accumuler des dettes au fil du temps et de devenir de plus en plus difficiles à travailler. En particulier, il est probable que la dette soit contractée par inadvertance , simplement en tant qu'effet secondaire d'informations incomplètes et d'une propriété diluée de la qualité du code.
Ceci est un peu analogue à la tragédie des biens communs .
Cohésion pour améliorer l'architecture
La cohésion est un indicateur final de composants bien définis.
La cohésion et son pendant, le couplage, sont depuis longtemps reconnus comme des concepts importants sur lesquels il faut se concentrer lors de la conception de logiciels.
On dit que le code a une grande cohésion quand la plupart de ses éléments vont ensemble. Une cohésion élevée est généralement préférable car elle est associée à la facilité de maintenance, à la réutilisabilité et à la robustesse. Une cohésion élevée et un couplage lâche ont tendance à aller de pair.
En plus d’être associée à un code plus réutilisable et maintenable, une cohésion élevée minimise également le nombre de personnes devant être impliquées pour modifier une partie donnée de la base de code, ce qui augmente la productivité.
Tournez pour identifier les problèmes
Le roulement (activité répétée) aide à identifier et à classer les zones prêtes à être restructurées dans un système en croissance.
À mesure que les systèmes se développent, les développeurs ont de plus en plus de mal à comprendre leur architecture. Si les développeurs doivent modifier de nombreuses parties de la base de code pour offrir une nouvelle fonctionnalité, il leur sera difficile d'éviter d'introduire des effets secondaires conduisant à des bogues et ils seront moins productifs, car ils doivent se familiariser avec davantage d'éléments et de concepts.
C'est pourquoi il est important de rechercher une responsabilité unique afin de créer un système plus stable et d'éviter les conséquences imprévues. Certains fichiers sont des concentrateurs architecturaux qui restent actifs au fur et à mesure de l’ajout de nouvelles fonctionnalités. Il est donc judicieux d’écrire du code de manière à fermer les fichiers et à examiner de manière rigoureuse les zones de contrôle, de test et d’assurance qualité.
Désactivez ces fichiers actifs afin que vous puissiez décider s'ils doivent être décomposés pour réduire la surface de modification dans votre base de code.