Certains livres sur les métriques que votre bibliothèque universitaire a probablement incluent des métriques logicielles et des métriques et des modèles en ingénierie de la qualité logicielle . Ces 2 devraient vous donner un point de départ. Dans le monde industriel, très peu d'entreprises ont un programme de mesure métrique.
La plupart des entreprises ont-elles un moyen, pas nécessairement un programme élégant, pour mesurer des paramètres significatifs?
Visual Studio comprend des outils d'analyse de code qui peuvent vous aider à démarrer. La plupart des entreprises n'ont même pas quelque chose pour mesurer la pire mesure possible: des lignes de code. «Il suffit de faire les choses» semble être la force motrice écrasante de l'industrie, et les préoccupations de maintenabilité sont très peu prises en compte par les gestionnaires: «vais-je recevoir ma prime cette année? et "cela se fera-t-il dans le temps que j'ai promis?" Même avec des produits qui se prolongent d'année en année avec des changements incrémentiels, ces 2 préoccupations ont éclipsé les préoccupations des développeurs concernant la maintenabilité et la détection / prévention des bogues.
Quelles mesures, uniques ou combinées, vous aident à réduire la portée et les estimations de vos projets?
Je trouve que la complexité cyclomatique et le couplage sont de bons indicateurs de la façon dont le buggy ou la difficulté de maintenir le code seront. Si la complexité cyclomatique est d'environ 20, je trouve qu'il sera presque impossible de tester (car il aura jusqu'à 2 ^ 20 chemins à travers le code) et devrait être décomposé en morceaux plus petits. Vous ne pouvez pas éliminer la complexité, mais vous pouvez la découper en morceaux plus faciles à gérer.
Si vous recherchez une estimation , vous voudrez probablement étudier les points de fonction .
Le% de couverture de code réduit considérablement chaque itération, alertez-vous vos développeurs du problème
Je trouve que la plupart des gestionnaires se soucient du nombre de check-ins et du nombre de bugs corrigés. Mon manager actuel est opposé aux tests unitaires (il pense que c'est une perte de temps) et mon manager précédent a estimé que le temps passé sur les tests unitaires était du temps qui aurait dû être consacré à l'écrire en premier lieu.
L'argument canonique utilisé par les développeurs est que si vous mesurez quelque chose, c'est seulement ce que vous obtiendrez. Cet argument vient de l'idée que la seule métrique est les lignes de code.