In its "Scan Report on Open Source Software 2008," Coverity analyzed more than 55 million lines of code on a recurring basis from more than 250 open source projects. Detailed Tuesday, the project utilized the Coverity Prevent static source code analyzer and was done during a two-year period. Some of the projects analyzed included the Apache Web server, Linux, Firefox, and the Samba file and printer sharing system. Scripting languages such as PHP and Ruby were examined as well.
"We run the source code through our static analysis tool, which identifies certain types of software defects for them and developers can look at the result," said David Maxwell, open source strategist for Coverity.
Coverity in its analysis found that open source developers are interested in code quality and making efforts to make it better and more secure, Maxwell said.
"We can see from the statistics many developers are quite passionate about writing good code," Maxwell said.
The analysis found that:
- The quality and security of open source software continues to improve.
- There has been a 16 per cent reduction in overall static analysis defect density, reflecting the elimination of more than 8,500 individual defects. This reduction figure represents the average reduction from the first analysis of each project to the most recent analysis.
- There is a prevalence of specific defects. "Null pointer reference" was the common defect while "User before test" was the least common.
- Static analysis defect density and function length are statistically uncorrelated. This contradicts conventional wisdom.
- Cyclomatic complexity and the Halstead effort, which are measures of code complexity, are significantly correlated to code base.
- The average rate of false positives identified by open source developers on the Scan site was less than 14 per cent.
Also, Coverity found that code base size correlated to the number of defects. The company found it could tell with 72 per cent accuracy how many defects would be in the code based on the size of the code.
Coverity's code-scanning service was offered on its Scan site, which was developed with support from the US Department of Homeland Security as part of the federal "Open Source Hardening Project."
The project mostly examined C code but there was some C++ code as well.