Le dernier rapport DevSecOps de GitLab montre les multiples défis et opportunités liés à l’intégration de l’intelligence artificielle dans les pratiques de développement logiciel.

Le rapport, qui en est à sa huitième édition, recueille les points de vue de plus de 5 300 professionnels issus de l’ensemble du spectre du développement logiciel.
Il fournit des informations précieuses sur l’état actuel de l’adoption de l’IA, la vitesse de livraison des logiciels et les points de vue contrastés entre les dirigeants et les développeurs sur divers aspects de DevSecOps.

8e rapport annuel mondial DevSecOps de GitLab

Le 8e rapport annuel mondial DevSecOps de GitLab offre un aperçu de l’état du développement logiciel, en se concentrant sur l’intersection du développement, de la sécurité et des opérations.

L’enquête de 2024, réalisée en avril, a impliqué plus de 5 300 professionnels, dont des développeurs, des experts en sécurité et des cadres, ce qui a permis d’obtenir une vue d’ensemble des tendances et des défis du secteur.

La dernière édition du rapport de GitLab détaille plusieurs domaines d’intérêt clés, notamment l’adoption de l’IA, l’accélération de la livraison de logiciels, la perception des risques, les lacunes en matière de compétences, l’adéquation de la formation et la sécurité de la chaîne d’approvisionnement.
En recueillant les réponses d’un groupe diversifié de professionnels, le rapport présente une image équilibrée et détaillée de l’environnement DevSecOps actuel.

L’enquête menée en avril 2024 a impliqué plus de 5 300 professionnels dans le domaine du développement de logiciels.

En raison de la grande diversité des participants, les points de vue reflètent les expériences et les opinions d’un large éventail de l’industrie, des cadres supérieurs aux contributeurs individuels travaillant en première ligne du développement de logiciels.

Perceptions des dirigeants et réalités des développeurs

L’une des conclusions les plus remarquables est que 69 % des directeurs généraux déclarent que leur entreprise livre des logiciels au moins deux fois plus vite que l’année précédente.

Malgré cette accélération impressionnante, seuls 26 % des répondants ont intégré l’IA dans leurs flux de travail.
Ces divergences soulèvent d’importantes questions sur les facteurs à l’origine de l’accélération du rythme de livraison des logiciels.
Elles suggèrent que si l’IA a le potentiel de stimuler considérablement la productivité et la rapidité, d’autres facteurs – tels que l’amélioration des processus, de meilleurs outils ou une collaboration accrue – peuvent jouer un rôle plus important dans l’accélération observée.

Adoption de l’IA et perception des risques

Parmi les directeurs généraux, 56 % considèrent l’IA comme risquée, principalement en raison des inquiétudes concernant son impact sur la vie privée et la sécurité des données.
En revanche, seuls 40 % des contributeurs individuels partagent ces préoccupations.

Il existe un fossé évident entre les dirigeants et les développeurs en ce qui concerne les risques perçus de l’intégration de l’IA dans le cycle de développement des logiciels.

Les dirigeants peuvent être plus prudents en raison de leur responsabilité plus large en matière de risques organisationnels, tandis que les développeurs, qui sont plus proches de la technologie, peuvent être plus confiants dans la sécurité et l’efficacité de sa mise en œuvre.

Disparité des compétences et de la formation

Le rapport de Gitlab identifie une disparité notable dans les perceptions des compétences en IA au sein des organisations.
Alors que 35 % des directeurs généraux indiquent que le manque de compétences appropriées en matière d’IA constitue un obstacle important, seuls 26 % des contributeurs individuels sont du même avis.

De telles différences suggèrent que les dirigeants peuvent percevoir un déficit de compétences plus important, reflétant peut-être des préoccupations quant à l’état de préparation général de leurs équipes pour adopter et exploiter efficacement les technologies de l’IA.

En termes de formation et de ressources, 25 % des contributeurs individuels estiment que leur organisation ne fournit pas un soutien adéquat à l’IA, contre seulement 15 % des CxO, ce qui indique que les contributeurs individuels sont plus susceptibles de faire l’expérience directe d’un manque de formation et de ressources en matière d’IA, alors que les dirigeants peuvent penser qu’ils offrent déjà un soutien suffisant.

Un déficit de perception peut conduire à un sous-investissement dans les programmes de formation et les ressources nécessaires, ce qui freine encore l’adoption de l’IA.

Sécurité de la chaîne d’approvisionnement en logiciels

Le rapport fait état de préoccupations importantes concernant la sécurité de la chaîne d’approvisionnement en logiciels.

Un pourcentage alarmant de 67 % des contributeurs individuels déclarent qu’un quart ou plus de leur code provient de bibliothèques à code source ouvert.
Malgré cette forte dépendance à l’égard des composants open source, seules 21 % des organisations utilisent une nomenclature logicielle (SBOM) pour documenter la composition du logiciel.

Le manque de visibilité dans la chaîne d’approvisionnement des logiciels pose des risques de sécurité importants, car les composants open source non documentés peuvent abriter des vulnérabilités susceptibles d’être exploitées par des acteurs malveillants.

Lorsqu’elles n’utilisent pas de SBOM, les organisations sont potentiellement exposées à des menaces de sécurité sans avoir une compréhension claire de la composition complète de leur logiciel et des risques associés.

Mesure de la productivité des développeurs

Mesurer la productivité des développeurs reste un défi persistant pour de nombreuses organisations.
Alors que 99 % des directeurs généraux reconnaissent que le suivi de la productivité pourrait être bénéfique à leur entreprise, il existe un large fossé dans l’efficacité des méthodes de mesure actuelles.

Un nombre significatif de CxOs (51%) admettent que leurs mesures existantes sont soit défectueuses, soit inexistantes.
Cette lacune suggère un manque de méthodes normalisées pour évaluer avec précision la production et l’efficacité des équipes de développement.

Sans mesures précises, il devient difficile d’allouer efficacement les ressources, de gérer les équipes et d’identifier les domaines à améliorer.

Dans de nombreux cas, les mesures de productivité traditionnelles, telles que les lignes de code écrites ou le nombre de validations, ne reflètent pas la valeur réelle du travail d’un développeur.

Ces mesures négligent souvent la complexité des tâches, la qualité du code et les efforts de collaboration requis dans les environnements de développement modernes.
Par conséquent, les organisations risquent de ne pas reconnaître les développeurs les plus performants et de manquer des occasions de soutenir ceux qui ont besoin d’une formation ou de ressources supplémentaires.

Importance de la mesure de la productivité

On ne saurait trop insister sur l’importance de mesurer avec précision la productivité des développeurs.

Avec 57 % des chefs d’entreprise qui considèrent la productivité des développeurs comme un facteur clé de croissance, il est clair qu’une mesure efficace peut conduire à de meilleurs résultats pour l’entreprise.

Des mesures précises de la productivité permettent d’éclairer les décisions stratégiques, d’optimiser l’affectation des ressources et d’améliorer les performances des équipes.
Les mesures de productivité permettent également d’identifier les goulets d’étranglement dans le processus de développement, ce qui permet aux organisations de traiter rapidement les problèmes et d’améliorer l’efficacité globale.

Une mesure efficace de la productivité contribue également à créer un environnement de travail plus transparent et plus motivant.
Les développeurs qui comprennent comment leurs contributions sont évaluées sont plus susceptibles de s’engager et de s’aligner sur les objectifs de l’organisation.

Des indicateurs clairs peuvent faciliter un retour d’information significatif et l’évolution de la carrière, favorisant ainsi une culture de l’amélioration continue.

Problèmes liés aux méthodes de mesure actuelles

Les méthodes actuelles de mesure de la productivité des développeurs sont souvent critiquées pour leur inadéquation.
Avec 51% des directeurs généraux qui reconnaissent des failles dans leurs techniques de mesure, il est évident que de nombreuses organisations luttent pour trouver des mesures fiables.

Le fait de se fier à des indicateurs superficiels tels que les lignes de code ou le nombre de tâches accomplies ne reflète pas l’impact réel du travail d’un développeur.

Cette insuffisance de mesure peut conduire à des décisions de gestion mal informées, à une mauvaise affectation des ressources et à des contributions non reconnues.
Les développeurs peuvent se sentir sous-estimés si leurs efforts ne sont pas reflétés avec précision dans les mesures de productivité, ce qui entraîne une baisse du moral et de la productivité.

En l’absence de mesures complètes, il est difficile d’identifier et de reproduire les meilleures pratiques au sein des équipes.

Bloom de la chaîne d’outils

Il existe un écart important entre le nombre d’outils utilisés par les développeurs et la perception de l’utilisation des outils par les dirigeants.

Les contributeurs individuels déclarent utiliser entre 6 et 14 outils différents dans leur travail quotidien, tandis que les chefs d’entreprise estiment que seuls 2 à 5 outils sont utilisés, ce qui met en évidence une incompréhension potentielle de la complexité et des exigences des processus modernes de développement de logiciels.

L’utilisation intensive de plusieurs outils peut conduire à un gonflement de la chaîne d’outils, où l’abondance d’outils complique plutôt qu’elle ne simplifie le processus de développement, ce qui peut entraîner des inefficacités, car les développeurs passent plus de temps à gérer et à passer d’un outil à l’autre qu’à se concentrer sur le codage et la résolution de problèmes.

Le gonflement de la chaîne d’outils peut également poser des problèmes d’intégration, les différents outils ne fonctionnant pas toujours de manière transparente, ce qui entraîne des retards et des frustrations supplémentaires.

Désir de consolidation de la chaîne d’outils

Les développeurs, en particulier ceux qui utilisent l’IA pour le développement, souhaitent manifestement une consolidation de la chaîne d’outils.

Une proportion importante de 74 % des répondants utilisant l’IA expriment une préférence pour la consolidation de leurs chaînes d’outils, contre 57 % des non-utilisateurs d’IA, ce qui suggère que les développeurs reconnaissent les avantages d’un ensemble d’outils plus fluides et cohérents qui peuvent améliorer leur productivité et réduire la complexité de leurs flux de travail.

La consolidation des chaînes d’outils peut conduire à des processus de développement plus efficaces, à une meilleure intégration des outils et à une réduction de la charge cognitive des développeurs.
Elle peut également simplifier la formation et l’intégration des nouveaux membres de l’équipe, puisqu’ils doivent se familiariser avec moins d’outils.

Pour les entreprises, une chaîne d’outils consolidée peut se traduire par des économies, une maintenance plus facile et une sécurité accrue en réduisant le nombre de vulnérabilités potentielles.

Citations et informations clés

Ashley Kramer, responsable du marketing et de la stratégie de GitLab, souligne l’existence d’un fossé important entre les dirigeants et les développeurs, en particulier en ce qui concerne la gestion des risques et la formation.
Ce décalage se traduit souvent par un manque d’harmonisation des priorités et des stratégies, les dirigeants ne comprenant pas toujours parfaitement les défis auxquels sont confrontés les développeurs sur le terrain.

M. Kramer souligne que la bureaucratie peut considérablement entraver la capacité à résoudre rapidement les problèmes, ce qui est particulièrement problématique dans les environnements de développement rapide où l’agilité et la réactivité sont essentielles.

Les retards causés par des processus d’approbation excessifs et des protocoles rigides peuvent étouffer l’innovation et ralentir le cycle de développement.

Points de vue d’Ashley Kramer

M. Kramer insiste sur l’importance de combler le fossé entre la direction de l’organisation et les développeurs.
En utilisant la technologie pour simplifier les processus et favoriser une meilleure communication, les organisations peuvent stimuler l’innovation plus efficacement.

Pour y remédier, il faut un effort concerté pour comprendre les préoccupations des développeurs et y répondre, en veillant à ce qu’ils disposent des ressources et du soutien nécessaires pour réussir.

Les idées de M. Kramer suggèrent que les organisations devraient donner la priorité à l’alignement des stratégies de la direction sur les besoins pratiques de leurs équipes de développement.
L’alignement peut conduire à des flux de travail plus cohérents et plus productifs, ce qui profite en fin de compte à l’ensemble de l’organisation.

Principaux enseignements

L’alignement entre les stratégies de la direction et les besoins des développeurs est essentiel pour favoriser un environnement DevSecOps productif et innovant.
En s’attaquant aux disparités de perception, d’outillage et de pratiques de sécurité, les organisations peuvent créer un processus de développement plus harmonieux et plus efficace.

Pour parvenir à une croissance durable et à l’innovation en matière de DevSecOps, il est essentiel de s’attaquer aux disparités existantes en matière de perception, d’outillage et de pratiques de sécurité.
Les organisations doivent investir dans des programmes de formation, adopter des mesures de productivité plus précises et rationaliser leurs chaînes d’outils.

Ce faisant, les organisations peuvent améliorer l’efficacité et le moral de leurs équipes de développement, ce qui se traduit par de meilleurs résultats commerciaux et un avantage concurrentiel plus fort.

Alexander Procter

août 5, 2024

11 Min