samedi, 20 avril 2024

Doit-on mesurer la productivité des développeurs ?

Crédit : Dreamstime

Il y a environ 10 ans, j’ai écrit un article de blog intitulé « < a rel="nofollow noopener" target="_blank" href="https://medium.com/nickonsoftware/can-we-measure-software-development-productivity-a2138d2f7011">Pouvons-nous mesurer la productivité des développeurs ? ” J’y ai discuté des nombreuses tentatives objectives qui avaient été faites pour le faire – lignes de code, points de fonction, etc. J’ai également proposé quelques mesures subjectives.

Pourtant, la conclusion était que malgré les désirs de Aimant les KPI, il n’existait aucun moyen viable de mesurer la productivité d’un développeur de logiciel individuel.

Je mentionne cet article publié il y a 10 ans car les choses ont considérablement changé depuis. Quand je l’ai écrit, Git et Mercurial étaient à la fois des systèmes de contrôle de source logicielle importants et populaires.

J’étais responsable logiciel à l’époque, migrant mon équipe hors de Visual Source Safe de Microsoft, et nous avons décidé d’opter pour Mercurial car il était beaucoup plus convivial pour Windows.

Nous avons choisi le mauvais cheval car, dans les années à venir, Git deviendrait la norme de facto pour le contrôle de version. En conséquence, une industrie artisanale s’est développée autour des référentiels Git. GitHub est une énorme entreprise pour laquelle Microsoft a payé 7,5 milliards de dollars.

De nombreuses entreprises fournissent désormais des métriques autour de votre code dans Git. Et bon nombre de ces entreprises prétendent mesurer la productivité des développeurs de logiciels.

Donnez-moi des métriques

Si nous admettons qu’il est possible de mesurer la productivité des développeurs (une proposition sur laquelle je ne suis pas entièrement d’accord), nous devons alors nous demander si nous devrons le faire.

Le désir de le faire est certainement fort. Les managers veulent savoir qui sont leurs meilleurs développeurs et ils veulent des métriques qui les aideront au moment de l’évaluation des performances. Les RH veulent être en mesure de documenter les problèmes de performance. Les PDG veulent savoir que l’argent qu’ils dépensent est utilisé efficacement.

Même si vous utilisez de nouveaux outils pour mesurer la productivité des développeurs individuels, ces statistiques seront probablement manipulées. Les lignes de code sont considérées comme une blague de nos jours.

« Vous voulez des lignes de code ? Je vais vous donner des lignes de code ! Le nombre de commits par jour ou le temps moyen avant le premier commentaire de relations publiques est-il différent ? Si vous mesurez les développeurs individuels sur ces mesures, ils les amélioreront très certainement. Mais à quel prix ? Probablement au détriment de la productivité de l’équipe.

Un ancien PDG à moi avait l’habitude de dire que le développement de logiciels est un sport d’équipe. Si les développeurs individuels sont mesurés les uns par rapport aux autres sur n’importe quelle métrique, ils commenceront à se faire concurrence, surtout si de l’argent et des promotions sont en jeu. Et un groupe de personnes qui s’affrontent n’est pas une équipe.

Ce sont les équipes, et non les développeurs individuels, qui font avancer les choses dans le secteur des logiciels. Le développement logiciel est intéressant à cet égard. Le codage proprement dit est souvent mieux réalisé par des individus en pleine réflexion, mais le travail qui se produit avant et après l’écriture du code contribue grandement à la réussite des choses.

Mesurer l’équipe

Une équipe de développement discute de la conception et de la mise en œuvre d’un projet donné avant l’écriture de tout code. Lorsque les développeurs individuels écrivent le code, c’est souvent avec l’aide de collègues qui répondent aux questions et fournissent des informations.

Tous les membres de l’équipe examinent et approuvent ce qui est fait lors des révisions de code. Tout le monde travaille ensemble pour faire bouger les choses.

La force de l’équipe est chaque membre individuel. La force de chaque membre est l’équipe. —Phil Jackson, entraîneur de la NBA

C’est pourquoi, au lieu de mesurer la productivité individuelle des développeurs, c’est la productivité de l’équipe qui doit être mesurée. Les développeurs travaillent en équipe, poursuivant un objectif commun, c’est ce que veulent vraiment les managers.

Les équipes savent que si elles améliorent leurs métriques d’équipe, elles améliorent leur réussite. Les équipes qui peuvent voir les avantages de se concentrer sur les bonnes choses et de garder un œil sur les bons indicateurs s’amélioreront. Les équipes veulent améliorer leur productivité. Ils veulent s’améliorer. Ils veulent livrer. La mesure des métriques basées sur l’équipe les aide à faire ces choses.

Il y a 10 ans, j’ai demandé si nous devions ou pouvions mesurer la productivité des développeurs. Mais je posais la mauvaise question. Les développeurs individuels ne sont aussi forts que leurs équipes.

Mesurer correctement les métriques de l’équipe conduit une équipe vers de meilleurs résultats et de meilleurs logiciels. Au lieu de mesurer les individus, nous devrions encourager nos équipes à créer des logiciels mieux et plus rapidement en mesurant ce qu’ils font ensemble.

.

Toute l’actualité en temps réel, est sur L’Entrepreneur

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici