October 27, 2003 (Computerworld) -- The blame for software bugs belongs nearly everywhere. It belongs to vendors that rush products to market without adequately testing them, a sin also shared by corporate in-house development teams. It belongs to a legal system that has given software developers a free pass on bug-related damages. And it belongs to university computer science programs that stress development over testing.
Blame, however, doesn't belong with Sarfraz Khurshid, an MIT researcher who's at the forefront of developing automated testing processes for software. Testing software involves generating "inputs" -- instructions for software to follow. But there are as many ways to test software as there are different snowflake patterns. For every possible way software can break, there must be a test that can detect that.
"There are an infinite number of inputs," says Khurshid, but once you know how to automatically generate them, "which ones do you generate?"
Khurshid has developed algorithms for generating inputs, and he expects the automated testing algorithms to improve over the next few years. But experts say improvements in automated testing technology alone won't necessarily lead to better software quality.
"Most software products have not been designed for quality," says Herb Krasner, who heads the Software Quality Institute at the University of Texas at Austin. "In the commercial world, quality software is not the primary motivation -- the primary motivation is to get to market as fast as possible. It's the race to market that compromises quality in many cases."
Inadequate software testing is blamed for $60 billion in annual costs incurred by users and vendors, according to a study conducted last year by the Commerce Department's National Institute of Standards and Technology in Gaithersburg, Md. Viruses that exploit defects can cause billions of dollars in additional damages.
Standards Push
Today, there are no standards for measuring software quality, broadly defined as functionality, reliability, usability, efficiency, maintainability and portability. But there's a long-term effort under way to develop standards for comparing the quality of products, something that's impossible today.
This effort was prompted, in part, by one of the most famous software bugs of all: The one that caused the 1999 crash of the Mars Polar Lander on Mars. It was a watershed event for NASA and led to a decision by the space agency to expand its work with universities on quality issues. It even signed a lease allowing Carnegie Mellon University to establish a West Coast campus at Moffett Field, Calif.
NASA also helped to spearhead the creation of the Carnegie Mellon-based Sustainable Computing Consortium (SCC), an effort that includes companies such as FedEx Corp., Pfizer Inc., Microsoft Corp.
"I've loved Firefox since version 0.93. It was so much better than Internet Explorer and the other alternatives that I..."
Read more...
"Oh, glorious FCC! Bringer of upcoming products. Thank you for the gift we've just received......."
Read more... Read more Software posts or See all Blogs
Specialists have retrieved about 99% of the data on a disk drive on board the crashed space shuttle Columbia. Don't miss the photographs of the recovered drive.
Nearly 20 years after the first Internet worm, Steven J. Vaughan-Nichols takes stock of the malware/anti-malware landscape and spotlights how the two sides are approaching the battle.
Computerworld Technology Briefing: An open-source path to optimal virtualization
Download this Technology Briefing now! (Source: Novell/IBM/Intel) Looking for a virtualization strategy that offers both the flexibility and reliability to meet the demands of mixed-source environments? Look no further than the fast-emerging open virtualization approach backed by some of the biggest names in enterprise computing. Together they are pointing the way toward higher data center performance without higher costs.
Download this executive briefing
E-Mail As a Service: Time for Another Look?
E-Mail As a Service: Time for Another Look?
Download this webcast, compliments of Google.
Go to the webcast
Top 10 Reasons to Go Green in IT
Get this white paper now! (Source: Verdiem) With fast facts and figures, this free e-booklet details the significant savings you can expect from a greener IT department. Plus: how sustainability can improve employee and customer retention, boost IT performance, even protect against energy price fluctuations. Download your copy of this e-booklet now.
Download this white paper
White Papers
Read up on the latest ideas and technologies from companies that sell hardware, software and services.
Are time constraints pressuring your development, QA, and support resources to cut corners on software quality? If so, your company's not alone. According to a commissioned study conducted by Forrester Consulting on behalf of BMC Software, "...problem resolution is a major time-sink for developers and a drain on the efficiency of application development and support."