• On MovieTome: See the villain of IRON MAN 2!
September 9, 2009 7:38 PM PDT

Avoiding the software 'fail whale'

by Dave Rosenberg
  • Font size
  • Print
  • 2 comments
Avoid the "fail whale"

Avoid the "fail whale"

(Credit: Twitter)

The tech world is all too familiar with Twitter's "fail whale" and have become accustomed to Gmail failures (which are inevitably chronicled on Twitter.) And while sometimes it's infrastructure (such as routers and switches) rather than software that fails, it often seems as if we too readily accept that software will inevitably breakdown.

Mark Donsky, director of product management at Coverity, commented recently about a recent static analysis of open-source projects performed on the Scan site that showed a 71.9 percent correlation between the number of lines of code and number of defects found.

This is of course, not an open-source problem but a general issue that occurs as more code is integrated into products. I've been told that Windows is developed with two quality assurance people to every engineer as the product has grown over the years.

Coverity is focused on software integrity and advocates static analysis early in the development cycle. While testing of all kinds, including static analysis are obviously good ideas, the tools and methods vary dramatically by engineering organization. The Software Engineering Institute (SEI) at Carnegie Mellon University and the Object Management Group (OMG) recently paired up to form a consortium to establish standards for software quality.

Donsky pointed out four areas that support the case for static analysis:

Software is larger and more complex
Code bases today are orders of magnitude larger than they were just a few years ago. If you compare Windows NT 3.1 with Windows XP, the code base has grown 10-fold from 4 million lines of code to 40 million lines of code. If that weren't enough, there's added complexity with multithreaded applications thanks to readily available multicore processors.

Software defects carry a higher cost and risk
Perhaps as a result of the increased complexity of software, it automates and powers more mission-critical functions than it used to. So, when software defects are leaked into production, it costs the business more to recover from these errors. Recent estimates from NIST indicate that a field-discovered defect costs 30 times as much to fix as it would have if it were found during the development phase.

Software pervasiveness increases risk mindshare
Software underpins virtually everything today, be it air traffic control systems, vehicles, or medical devices. A single software defect can lead to billions of dollars in damages and have a negative impact on brand impact. In any given week, software failures are the direct cause of airport terminal delays, transportation system meltdowns, and high-profile security breaches.

Agile development needs automation and breakpoints
Agile software development requires automated testing methodologies to be baked into the development process. In agile development, both coding and testing occur continuously and responsibility for software integrity falls on the full project team. Static analysis throughout this process can give teams an advantage.

Ultimately, software defects offer no positives for the end-user. Effective testing and analysis solutions can protect software organizations from leaking software defects in production and making the kind of front page news that everyone wants to avoid.

Follow me on Twitter @daveofdoom.

Dave Rosenberg dishes up "Software, Interrupted" with nearly 15 years of technology and marketing experience that spans from Bell Labs to multiple start-up IPOs to open-source enterprise software companies. He is co-founder of MuleSource and currently serves as the general manager of Hardy Way. He is a member of the CNET Blog Network and is not an employee of CNET. Disclosure. You can contact Dave via e-mail at softwareinterrupted@gmail.com or follow him on Twitter @daveofdoom.
Recent posts from Software, Interrupted
Trend watch 2010: Mobile movies
Survey: IT spending to recover in 2010
Nintendo launches paid video content for Wii
Analyst: Money transfer soon to be No. 1 phone app
Apple's App Store review irking developers
Moving to the virtual layer (and taking advantage of the cloud)
Why Windows Mobile and Palm will continue to fail
Is Ohai the next big thing in social games?
Add a Comment (Log in or register)
by smithwahl2 September 10, 2009 10:36 AM PDT
I have been at my current company for a little over 1 year as the director of development. I was AMAZED at the lack of focus on fixing the bugs. I've managed to show the benefit of building quality into the code. I have to be honest that it has not been easy to show that more time up front saves more money in the back. However we are getting there.
Reply to this comment
by daverosenberg September 10, 2009 11:35 AM PDT
Yes--very hard to show, but definitely worth it
advertisement
Click Here

The browser battles go on and on

roundup From Firefox to IE and from Chrome to Opera and Safari, there's no sitting still for browser makers looking to keep their products fresh and competitive.

3G wireless still holds promise

The next generation of 4G wireless may get all the headlines, but advanced 3G technology will likely dominate services for the next few years.

advertisement

About Software, Interrupted

In "Software, Interrupted," Dave Rosenberg discusses disruption in the software market, as well as the products and services that keep business technology norms in perpetual flux.

With nearly 15 years of technology and marketing experience spanning from Bell Labs to multiple start-up IPOs, Dave co-founded open-source software company MuleSource and now serves as general manager of Hardy Way. He also happens to be a U.S. patent holder and a workaholic. Technology is his best friend and mortal enemy.

Add this feed to your online news reader

Software, Interrupted topics

advertisement
advertisement

Inside CNET News

Scroll Left Scroll Right