Coverity Report Finds OSS Bug Density Down Since 2006
eldavojohn writes "In 2008, static analysis company Coverity analyzed security issues in open source applications. Their recent study of 11.5 billion lines of open source code reveal that between 2006 and 2009 static analysis defect density is down in open source. The numbers say that open source defects have dropped from one in 3,333 lines of code to one in 4,000 lines of code. If you enter some basic information, you can get the complimentary report that has more analysis and puts three projects at the top tier in quality of the 280 open source projects: Samba, tor, OpenPAM, and Ruby. While Coverity has developed automated error checking for Linux, their static analysis seems to be indifferent toward open source."
Rob Malda's penis is tinier than a toddler's.
"...puts three projects at the top tier in quality of the 280 open source projects: Samba, tor, OpenPAM, and Ruby."
Counting, apparently, was low in quality.
Why would Samba and Linux have got so unstable over the years, then?
Hmmm...
In all seriousness, this seems to point to an increasing level of sophistication and maturity in OSS products and procedures, which can only be a good thing.
"... and puts three projects at the top tier in quality of the 280 open source projects: Samba, tor, OpenPAM, and Ruby."
Our chief weapon is surprise...surprise and fear...fear and surprise....
Our two weapons are fear and surprise... and ruthless efficiency....
Our three weapons are fear, surprise, and ruthless efficiency...
and an almost fanatical devotion to the Pope....
Our four... no...
Amongst our weapons... Amongst our weaponry...
are such elements as fear, surprise...
I'll come in again.
The question of course is "Is 4000 good, average or bad?" can't be answered because closed source companies just aren't going to publish this sort of information.
So what we can say is that the quality of OSS is trending upwards, but we can't say whether this makes it better, equivalent or worse than close source competitors.
What are the odds on any of them taking up the challenge?
An Eye for an Eye will make the whole world blind - Gandhi
... or less effective bug checking?
That's some good coding.. Makes me feel like a n00b. I'm not sure what my bug to code ratio is, but I'm sure its a lot higher than that.
The stupid little arrow does nothing no matter which "index" view I'm looking at. Guess I first noticed about a week ago. On both Firefox/Linux and Firefox/Windows XP. Posted Anonymous Coward for obvious reasons.
There are three kinds of Slashdot story submitters...
If they check 1 line of code every second it would take 133,101.85 years to check 11.5 billion lines of code. At 1000 lines of code every second you are looking at 133.10 years to check that much code. At 4000 lines of code every second (e.g. 4GHz) you are looking at 33.2 years to check that much code.
A: We know they didn't check the code by hand.
B: The methodology didn't classify defects (cosmetic, seucrity, minor, major. etc.)
C: The numbers aren't normalized nor broken by application size.
D: The use of a bug reporting database needs to be measured in regards to a baseline filing\fix % not a total volume (as we need to correlate new lines of code being added)
I'll only say this. Their methodology is not very good and thus any outcome they draw from is only as vaid as their methodology...
A 1% defect rate in an application, say the size of the Linux Kernel is a very different animal then say a 1% defect rate in say, VIM. In addition, 44 minor defects is very different then 6 majors. A minor defect could be as trival as a field not being aligned properly on a form.
You need to see a comparison such that:
App A
23 Minor
14 Major
3 Critical
and the accompaning resolution rates for the MMCs.
Usually it's
Minor : 95%
Major : 99%
Critical : 100%
Volume of defects is proportional to complexity, not lines of code.
That's like crying there is an epidemic of 5000 people dead every year... With a population of billions that is not even in the area of insignificant. 5000 people dead in a since town... that is a serious problem when the population is only 65000... SCOPE counts in data analysis.
This is garbage reporting... I don't care about the outcome, I don't agree or disagree but the methdology I see so far... I would fail this as an assignment in high school... If you are going to publish news about a report, part of the reporting is to indicate the methodology...
It reads like something from the Onion. "Gartner reported today that Gumby is more popular then Spongbob by using a computer!"
At the very least you need to throw in "Gartner reported today that Gumby is more popular then Spongebob by using a computer model that took people between the ages of 50 and 89 and had them fillout a survey. After normalizing the data and eliminating outliers Gartner consultants were able to determine that Gumby was more recognizable then Spongbob by a margin of over 90%."
Dear Lord journalism is dead...
-=[ Who Is John Galt? ]=-
It seems logical that older security issues are more well-known and documented than newer ones. Is it possible that the results do not point to an improvement in coding quality so much as an inability to detect newer flaws as accurately older flaws?
Survivorship bias
http://en.wikipedia.org/wiki/Survivorship_bias
The projects that were alive back then, and now, are obviously more mature, thus would have fewer bugs. Unless you believe in spontaneous generation of bugs at a constant rate in unchanged code (in my experience, actually not too unbelievable for old C++ compiled by the newest G++ due to specification drift)
"Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
It's too bad you can't trust Coverity to actually analyse code correctly
I wonder if these code improvements lead to overall usability. That seems to be the biggest stumbling block for open source, not stability.
if you don't that has grown up do and doing what BSD's filesystem the hHard drive to words, don't get pRopaganda and guests. Some people Troubled OS. Now
a child knows Perform kkeping you down. It was you join today! are a pathetic WASTE OF BITS AND the above is far
... maybe complimentary is in order, too.
From the press release:
While this is good for open source and demonstrates the value of static analysis, it is not surprising that if you fix the issues found, the number of issues remaining will go down.
The bug-per-line count doesn't really give you a reasonable measure of product stability. A bug in the hotspot code is far likely to be triggered by the end user than one in the rest of the software is.
So why not correlate the bug distribution with profiling data? I don't think this should be too difficult. You don't even need to do the profiling yourselves; when you obtain the source code just ask for the data from developers.
Colorless green Cthulhu waits dreaming furiously.
I love Coverity. I love other static analysis tools too -- I'm one of the lead developers for Perl::Critic, which performs static analysis on Perl code. They are enormously valuable tools.
However, I've seen many cases where people read the issue report from the tool and fix the symptom rather than the problem. The improvement from 1 in 3333 to 1 in 4000 is fantastic, but that means 1 *Coverity issue* in 4000, not 1 *bug* in 4000 lines.
My current closed source project has a Coverity count of 2 issues in 150,000 lines of code as of today. Does that means it's less buggy than Samba? No, it's just different. We've simply removed the majority of the easiest-to-automatically-detect bugs.