Dans le cadre d'un plan d'amélioration de la qualité des logiciels, nous avons récemment codé une série de reniflements de code à intégrer dans notre processus de génération.
Nous construisons beaucoup, étant une application PHP, il n'y a pas de véritable compilation, donc la construction est vraiment un test unitaire / analyse statique / runner, et nous pouvons nous permettre de passer quelques cycles sur cela.
Nous avons eu des problèmes de qualité du code et du code hérité avec beaucoup de problèmes.
En partant du principe que s'il n'échoue pas, la validation sera ignorée, nous avons commencé à confirmer les validations par rapport à notre norme de codage `` souhaitée '', et les validations échouées avec des erreurs qui ne respectaient pas la norme.
La maintenance a été interrompue, même la réparation la plus simple d'un composant hérité a nécessité que le développeur reformate d'énormes quantités de source, et la construction a été interrompue le plus souvent. Inutile de dire que nous avons changé les erreurs en avertissements, et maintenant elles sont ignorées et «surtout» inutiles.
Je dirais donc ceci (appris d'une dure expérience).
Assurez-vous que la norme de votre base de code est suffisamment proche de la norme que vous appliquez pour que vous n'ayez pas besoin que les développeurs reformatent les volumes de code instantanément. Ou .. Vous êtes prêt et attendez l'augmentation de l'effort.
Étant une petite équipe avec une énorme exigence de livraison, nous ne pouvions pas nous permettre de faire passer l'équipe à une énorme opération de refacturation. Nos normes de codage sont désormais principalement gérées par révision manuelle, et l'héritage est en cours de réécriture dans le cadre d'un plan d'amélioration continue.
Quand j'ai dit que les avertissements étaient «principalement» inutiles, eh bien nous les utilisons maintenant pour enregistrer des statistiques qui nous permettent de mesurer les kpi qui devraient continuer à montrer une amélioration.
Lorsque nous appliquerons à nouveau le code renifle, nous allumerons la lumière et introduirons quelques reniflements à la fois jusqu'à ce que la norme soit appliquée.