La qualité du code open source meilleure que celle du code propriétaire
Selon Coverity, le code Linux à nouveau « référence de qualité »
Le 2014-04-17 11:36:32, par Hinault Romaric, Responsable .NET
La faille Heartbleed dans la solution de chiffrement open source OpenSSL, largement utilisée sur le Web, fait couler beaucoup d’encre et a remis en cause la qualité du code des produits open source. Pour certains, c’est l’une des pires failles qu’aurait connues le monde de l’IT.
Coverity, une entreprise spécialisée dans la qualité du code source des applications et des tests de sécurité, a jugé que cette période était propice pour rappeler, chiffres à l’appui, que le code source des applications open source est de bonne qualité.
Alors que l’année dernière, la qualité du code open source se situait quasiment au même niveau que celle du code propriétaire, le rapport de cette année conclut que le code open source serait bien meilleur que le code propriétaire. Coverity a constaté que le code open source avait moins d’erreurs par millier de lignes de code que le code propriétaire.
Le rapport de Coverity a été effectué en analysant le code de 750 projets open source populaires écrits en C/C++ et en Java avec un échantillon anonyme d’applications propriétaires de ses clients. Parmi les projets open source qui ont été analysés, on retrouve Linux, NetBSD, FreeBSD, LibreOffice, Apache Hadoop ou encore Cassandra.
La qualité du code a été mesurée en utilisant la densité des défauts, qui représente les défauts pour mille lignes de code. La norme standard acceptée par l’industrie pour un code de bonne qualité est une densité de défauts de 1,0 ce qui représente un défaut toutes les 1 000 lignes de code.
L’analyse de Coverity a permis de trouver une densité moyenne de 0,59 pour les projets open source écrits en C et C++, tandis que pour les projets propriétaires écrits avec les mêmes langages, une densité de 0,72 a été observée. Ce résultat démontre, selon Coverity, un engagement fort de la communauté open source dans la vérification et les tests du code pendant le développement.
Une nouvelle fois, le code Linux est étiqueté comme code de référence pour l’open source. Sur plus de 8,5 millions de lignes de code Linux analysées par Coverity en 2013, une densité de défauts de 0,61 a été trouvée dans le noyau. Depuis 2008, la densité du code Linux a toujours été en dessous de 1.
Source : Coverity
Et vous ?
Que pensez-vous des conclusions de cette étude ?
La faille Heartbleed a-t-elle remis en question votre confiance dans le code open source ?
Coverity, une entreprise spécialisée dans la qualité du code source des applications et des tests de sécurité, a jugé que cette période était propice pour rappeler, chiffres à l’appui, que le code source des applications open source est de bonne qualité.
Alors que l’année dernière, la qualité du code open source se situait quasiment au même niveau que celle du code propriétaire, le rapport de cette année conclut que le code open source serait bien meilleur que le code propriétaire. Coverity a constaté que le code open source avait moins d’erreurs par millier de lignes de code que le code propriétaire.
Le rapport de Coverity a été effectué en analysant le code de 750 projets open source populaires écrits en C/C++ et en Java avec un échantillon anonyme d’applications propriétaires de ses clients. Parmi les projets open source qui ont été analysés, on retrouve Linux, NetBSD, FreeBSD, LibreOffice, Apache Hadoop ou encore Cassandra.
La qualité du code a été mesurée en utilisant la densité des défauts, qui représente les défauts pour mille lignes de code. La norme standard acceptée par l’industrie pour un code de bonne qualité est une densité de défauts de 1,0 ce qui représente un défaut toutes les 1 000 lignes de code.
L’analyse de Coverity a permis de trouver une densité moyenne de 0,59 pour les projets open source écrits en C et C++, tandis que pour les projets propriétaires écrits avec les mêmes langages, une densité de 0,72 a été observée. Ce résultat démontre, selon Coverity, un engagement fort de la communauté open source dans la vérification et les tests du code pendant le développement.
Une nouvelle fois, le code Linux est étiqueté comme code de référence pour l’open source. Sur plus de 8,5 millions de lignes de code Linux analysées par Coverity en 2013, une densité de défauts de 0,61 a été trouvée dans le noyau. Depuis 2008, la densité du code Linux a toujours été en dessous de 1.
Source : Coverity
Et vous ?
-
el_slapperExpert éminent séniorL'open-Source est une excellente chose(ça fait des années que je me dis qu'il faudrait que je m'y mette), mais il faut savoir raison garder : on s'aperçoit, en comparant les listes, que les codes propriétaires testés font en moyenne 1 388 070 lignes, là ou les codes open-source font en moyenne 340 094 lignes de code. Soit 4 fois moins. La taille brute d'un code le rend plus difficille à maintenir, et peut à elle seule expliquer certains écarts.le 17/04/2014 à 11:46
-
PixelJuiceMembre chevronnéQu'en pensez-vous des conclusions de cette étude ?La faille Heartbleed a-t-elle remise en question votre confiance au code open source ?le 17/04/2014 à 11:48
-
guillaukMembre à l'essaiEncore une fois, il avoir d'avantage d'informations pour pouvoir conclure de telles résultats :
- Quel est le code propriétaire qui a été pris en compte? Des applications grands public ou non? Peut-on comparer le code développé pour être utilisé par une centaine de personne avec celui fait pour être utilisé par le plus grand nombre? Le code open-source possède certes l'avantage de pouvoir être maintenue par une forte population mais il est impossible d'impliquer le même nombre de personnes (que ce soit en open-source ou non) pour l'ensemble des projets.
- S'agissant d'une entreprise spécialisée dans la qualité du code source, les entreprise qui y font appel ne sont-elles pas celles qui justement ont potentiellement une mauvaise qualité?
En ce qui concerne la faille Heartbleed, cela n'a nullement modifié mon avis sur l'open-source. L'opensource possède des failles, le code propriétaire possède des failles. Il est plus délicat de découvrir les failles du code propriétaire mais l'open-source a l'avantage de pouvoir être beaucoup plus réactif lorsque de tels problèmes se produisent.
J'aimerais juste préciser que ce n'est surtout pas une critique envers l'open-source, bien au contraire. Celui-ci possède des avantages et des inconvénients et, comme pour un peu tout ce que l'on croise dans la vie, tout dépend des conditions globales du projet.le 17/04/2014 à 12:01 -
ustensileMembre régulierC'est marrant de voir comment la faille heartbleed est exploitée médiatiquement pour tenter de discréditer l'open source, tant qu'on est à parler de sécurité, je pense que tout le monde sera d'accord pour dire que les grands éditeurs(adobe, crosoft etc...) ont tendance à nous pondre des perles en termes de sécurité.le 17/04/2014 à 14:23
-
BasterMembre à l'essaiAu contraire, je pense qu'une boite qui fait l'effort d'utiliser un outil comme ça a un plus haut niveau de conscience professionnelle qu'une boite qui ne le fait pas, et donc potentiellement un code de plus haute qualité à la base.le 17/04/2014 à 14:33
-
TryphMembre émérite
Envoyé par l'arcticle
t'as probablement déjà vu un logiciel te demander si tu étais d'accord pour envoyer des données anonymes sur l'utilisation que tu faisais d'un logiciel. bah dis toi que là ça doit être un truc dans le genre.le 17/04/2014 à 16:04 -
landry161Membre éprouvéParfaitement d'accord avec toi. De plus coté propriétaire comme quel qu'un l'a dit y a cette pression à laquelle les développeurs sont soumis. Peu importe la manière l'essentiel c'est qu'il faut y arriver un point c'est tout. Il est donc normal de parvenir à ce constat et c'est regrettable.le 22/04/2014 à 13:28
-
Pierre GIRARDExpert éminentÇa confirme ce que je pensais déjà et comme la faille Heartbleed a été rapidement corrigée après sa découverte ça a plutôt tendance à augmenter ma confiance dans l'OpenSource.le 24/04/2014 à 11:41
-
imikadoRédacteurDe quoi parlez-vous ? des projets propriétaire ?avec un échantillon anonyme d’applications propriétaires de ses clients.
Mais un même developpeur peut travailler à la fois sur du code propriétaire dans son entreprise + du code opensource sur son temps librele 17/04/2014 à 12:57 -
lalouneMembre éclairébien plus meilleurle 17/04/2014 à 13:04