Le développement par composants, une chance et une menace

Une étude de Sonatype met en exergue la face obscure du développement par composants logiciels open source.

Le logiciel libre a pris une place considérable dans le développement logiciel. Mais pas forcément pour le meilleur, la faute à un recours peu rigoureux des composants disponibles gratuitement. C’est une substance la conclusion que l’on est tenté de retirer de l’étude de Sonatype sur les pratiques des entreprises, à partir de l’observation du comportement de quelques 106 000 organisations développant des logiciels à partir du Central Repository, le plus gros entrepôt de codes source libre au monde

De fait, selon Sonatype, la présence massive des composants open source dans la chaîne logistique du logiciel « apporte des bénéfices considérables en termes de vitesse », mais « les pratiques de consommation » de ces composants, et leur gratuité, « ont conduit à un gâchis significatif, à qualité en recul », notamment. Des effets négatifs « qui ne sont souvent pas reconnus par les DSI, par les architectes en entreprise, par les leaders des DevOps, et les équipes de développement logiciel ». Des effets qui doivent donc être reconnus « pour commencer à améliorer les chaînes logistiques du logiciel ».

Mais où cette situation trouve-t-elle son origine ? Du côté des fournisseurs de composants open source, tout d’abord : « en moyenne, les composants sont mis à jour 3,5 fois par an », mais « il n’y a pas de moyen d’informer les équipes de développement ». Pire, le temps moyen de correction d’une vulnérabilité de sécurité dans un composant libre ou dans une dépendance est de 390 jours. Et plus de 51 000 composants de l’entrepôt de Sonatype « ont une vulnérabilité connue ».

Ce qui n’empêche pas leur téléchargement par « de larges groupes des services financiers ou des technologies ». En 2014, Sonatype a recensé plus de 240 000 téléchargements émanant de telles entreprises. Donc plus de 15 000 avec vulnérabilités connues, et plus de 10 000 avec des défauts vieux de plus d’un an.

En tout, un service comme OpenHub.net recense près de 700 000 projets libres, pour près de 4 millions de contributeurs… Et près d’un millier de nouveaux composants sont ajoutée chaque jour dans l’entrepôt de Sonatype. Une richesse, certes, mais qui présente aussi ses points faibles. Techniques, mais également légaux, avec des licences ouvrant des possibilités variées et assorties de contraintes tout aussi diverses.

Reste que l’utilisation est énorme : plus de 17 milliards de téléchargements sur l’entrepôt de Sonatype en 2014, contre 8 milliards en 2012.

Une forme de laxisme expliquerait une situation marquée par ses paradoxes. 39 % des sondés par Sonatype indiquent avoir des standards internes de développement, mais non appliqués. Pour 36 %, de tels standards n’existent pas. Bonne nouvelle : dans 25 % des cas, il n’est possible d’utiliser que des composants approuvés. Au final, 31 % des développeurs ont eu ou suspecté un incident de sécurité lié à un composant open source en 2014.

Concrètement, Sonatype recommande de rationaliser son portefeuille de fournisseurs de composants logiciels, « d’utiliser uniquement les éléments de plus haute qualité, et de suivre ce qui est utilisé et où ». Et d’assurer avoir observé, sur la base de ces principes, des gains de productivité des développeurs de 15 à 40 %.

 

Pour approfondir sur Réglementations et Souveraineté

Close