Software quality on the rise: the long race to zero defect density
As we all know, software is becoming more and more ubiquitous in our day-to-day lives. At work, at home and even during our leisure time, we are becoming ever more reliant on products, services and conveniences enabled by software.
Millions of lines of new code are written each day. The good news for all of us is that the overall quality of software is trending upward as well.
Whether quality is higher in open source or proprietary code is a debate that continues to drive heated discussion, with strong supporters on both sides of the fence. According to the 5th annual Coverity Scan Report, which compares more than 450 million lines of open source and proprietary code, the overall quality observed continues to surpass the accepted industry standard defect density for good quality software of 1.0 (defects per thousand lines of code).
The 2012 report compared the defect densities of 118 active open source projects (with more than 68 million lines of code) against 256 commercial projects (with more than 381 million lines of code). The report highlighted that proprietary projects edge ahead of their open source counterparts with a slightly better defect density of 0.68 versus the open source projects’ 0.69 average. 2012 marks the second consecutive year that both open source and proprietary code achieved defect densities well below the benchmark 1.0 threshold for good quality software; a positive sign that overall code quality continues to improve.
As the overall quality of software improves year after year, the perception of what is considered good quality code has similarly scaled new heights in lockstep. What may have sufficed five years ago would no longer be acceptable by today’s exacting standards. Consider what we demand from our devices today as compared to then - from our mobile phones and entertainment systems to increasingly automated, everyday household items like thermostats and vacuum cleaners. Even more importantly, software is – now more than ever – the driving force behind breakthrough innovations in industries like banking, transportation and even medicine.
Undeniably then, many of us now simply expect software and the devices or infrastructure they support to work – reliably and securely – every time. And both commercial organizations, as well as open source projects, are therefore that much more aware of their software code quality as it is tied directly to their adoption, their reputation and ultimately, their survival.
While we will likely never reach a point where all software is void of defects, we should continue to strive for this ideal.