« Les développeurs veulent avoir une idée, l'écrire dans le code et faire en sorte que l'utilisateur vive cette idée », explique le cofondateur et directeur technique de Rollbar Cory Virok. « Mais la réalité est que le code qui est censé offrir ces expériences est souvent truffé d'erreurs et de bogues. Afin d'offrir une expérience client exceptionnelle, les développeurs consacrent jusqu'à 40 % de leur temps aux tests et à l'assurance qualité. Pourtant, les logiciels ne sont jamais parfaits, et la recherche de la perfection constitue un obstacle à l'itération et à l'innovation », a-t-il continué.
En effet, les résultats de l'étude ont révélé que 84 % des équipes étaient empêchées de déployer plus fréquemment un nouveau code en production. La principale raison invoquée par les développeurs pour expliquer ces retards est le test et l'assurance qualité. Plus d'un tiers (36 %) des personnes interrogées ont déclaré que la difficulté de trouver et de corriger les erreurs en production les ralentissait. Un quart (25 %) des développeurs ont déclaré qu'ils ne déployaient du code que tous les mois ou tous les deux mois, tandis qu'environ 22 % ont dit qu'ils lançaient du nouveau code toutes les deux semaines.
Environ 6 % ne déploient du nouveau code que deux fois par an. Comme souligné par Virok, Rollbar a constaté qu'au total, les développeurs consacrent jusqu'à 40 % de leur temps aux seuls tests et à l'assurance qualité, un temps qui aurait pu être utilisé pour itérer sur leur code et pour lancer de nouvelles fonctionnalités. En outre, des recherches antérieures de Rollbar ont mis en évidence la difficulté pour les développeurs d'essayer de détecter les bogues avant que leur logiciel n'atteigne la phase de production. Cette nouvelle étude réalisée en février montre que cette difficulté retarde toujours les équipes de développement.
Selon le rapport de l'étude, 88 % des développeurs estiment que les outils traditionnels de surveillance des erreurs ne sont pas à la hauteur, et que la détection des bogues et des erreurs leur prend trop de temps. Cela dit, les processus techniques ne sont pas les seuls à blâmer. Près d'un tiers (30 %) des personnes interrogées ont déclaré que leur équipe était trop petite pour permettre des déploiements plus fréquents. Les restrictions budgétaires ont été mises en cause par 16 % des répondants, tandis que 15 % ont déclaré que leur organisation s'appuyait sur des "méthodologies traditionnelles".
Selon ces derniers, ces méthodologies « ne correspondent pas à leurs plans de développement ». D'après environ 13 % des répondants, leur organisation s'appuie sur une gestion de projet imprécise. Par ailleurs, un dixième des personnes interrogées par Rollbar ont déclaré que le manque de leadership les empêchait d'innover plus rapidement, et 9 % ont déclaré que leurs ambitions étaient freinées par l'absence de vision à long terme au sein de leur organisation. Holger Mueller, vice-président et analyste principal chez Constellation Research, a déclaré que le fait d'essayer de perfectionner le code se fait souvent au détriment de l'innovation.
Selon ce dernier, cela constitue un inconvénient majeur dans le monde hautement concurrentiel du développement de logiciels. « Les organisations qui s'appuient sur des logiciels, c'est-à-dire toutes les organisations, doivent introduire et itérer sur le code rapidement pour être compétitives », a déclaré Mueller. « Ce n'est pas facile. Les développeurs se retrouvent souvent coincés dans les méandres du code à perfectionner. Mais les nouveaux outils permettent désormais aux développeurs de faire plus de releases plus souvent », a-t-il ajouté.
En somme, l'enquête de Rollbar a révélé que la majorité des programmeurs se languissaient d'un moyen plus rapide d'éliminer les bogues dans le code. Deux cinquièmes (40 %) des personnes interrogées ont déclaré vouloir de meilleurs outils pour détecter et corriger les erreurs de code. Près d'un tiers ont déclaré qu'une meilleure gestion de projet (38 %), une équipe plus importante (36 %) ou un budget plus élevé (30 %) leur donneraient confiance et leur permettraient de lancer de nouvelles fonctionnalités plus rapidement.
Parmi les 86 % de développeurs qui ont déclaré que de nouvelles capacités les aideraient à itérer plus rapidement, nous avons :
- 47 % ont déclaré que le fait de voir l'origine de chaque erreur accélèrerait ces efforts ;
- 34 % ont déclaré que les capacités de détection de bogues en temps réel permettraient d'améliorer plus rapidement le code ;
- 33 % ont déclaré que l'accès à des informations contextuelles riches sur chaque erreur serait bénéfique ;
- 33 % ont déclaré que les nouvelles capacités d'aide à l'assurance qualité permettraient une itération plus rapide ;
- 22 % ont déclaré qu'un accès ouvert aux API leur permettrait d'accélérer l'itération.
« Il n'est pas surprenant que les entreprises souhaitent des logiciels de haute qualité qui offrent aux utilisateurs la meilleure expérience possible. Mais les logiciels sont constitués de code, et un code sans erreur est un leurre », a déclaré Brian Rue, PDG et cofondateur de Rollbar. « Les entreprises de premier plan adaptent leurs outils, leurs mentalités et leurs comportements pour faire face à cette réalité. Au lieu d'essayer de perfectionner les logiciels, elles adoptent de meilleurs outils et processus pour découvrir de manière proactive les erreurs lorsqu'elles se produisent et les résoudre immédiatement ».
Rollbar est une entreprise qui met à la disposition des développeurs une plateforme d'amélioration continue du code qui découvre, prédit et corrige les erreurs de manière proactive grâce à des flux de travail assistés par l'IA en temps réel. Rollbar s'est donné pour mission d'aider les développeurs à améliorer continuellement leur code et à innover constamment plutôt que de passer du temps à surveiller, enquêter et déboguer.
Source : Rapport de l'étude de Rollbar
Et vous ?
Que pensez-vous des conclusions de l'étude de Rollbar ?
Votre organisation a-t-elle des difficultés pour déployer plus fréquemment de nouvelles fonctionnalités ?
Comment pensez-vous que les équipes pourraient améliorer leur fréquence de déploiement de nouveau code ou d'innovation ?
Voir aussi
Agile pourrait-il conduire les organisations vers une dette technique plus importante ? Oui, selon Don Clos, développeur logiciel, qui propose une analyse détaillée de la situation
Code Defect AI, un outil IA pour aider les développeurs à repérer les bogues pendant le codage et non à la fin, disponible en open source sous licence Apache v2.0
Google rend disponible en open source ClusterFuzz, une infrastructure de test à données aléatoires, fonctionnant sur plus de 25 000 cœurs
Projet Springfield : Microsoft veut aider les développeurs à détecter les bogues de sécurité, en recourant au cloud et à l'intelligence artificielle
Suivi des linters JavaScript, outils d'analyse statique de code source, ESLint en 4.19.0 et standardJS en 11.0.0