Future Watch: Software bugs on the march
Technical, management and legal issues suggest they'll be around a while.
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.
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
- 15 Non-Certified IT Skills Growing in Demand
- How 19 Tech Titans Target Healthcare
- Twitter Suffering From Growing Pains (and Facebook Comparisons)
- Agile Comes to Data Integration
- Slideshow: 7 security mistakes people make with their mobile device
- iOS vs. Android: Which is more secure?
- 11 sure signs you've been hacked
- What Datapipe customers need to know about the new PCI DSS 3.0 compliance standard This handy quick reference outlines what PCI DSS 3.0 is, who needs to be compliant and how Alert Logic solutions address the new...
- The 12 PCI DSS 3.0 requirements addressed by Peer 1 Hosting This handy quick reference outlines the 12 PCI DSS 3.0 requirements, who needs to be compliant and how Alert Logic solutions address the...
- Defense Throughout the Vulnerability Life Cycle This whitepaper provides insight into how to leverage threat and log management technologies to protect your IT assets throughout their vulnerability life cycle.
- The Critical Role of Support in Your Enterprise Mobility Management Strategy Most business leaders underestimate the importance of tech support when they choose an EMM solution. Here's what to put on your checklist.
- Live Webcast Best Practices for the Hyperconverged Enterprise Network To the Age of Constant Connectivity and Information overload
- Live Webcast Unmasking the Differences between Consumer and Enterprise File Sync & Share The consumerization of IT combined with the rapid pace of the modern mobile workplace is forcing enterprise IT teams to evaluate file sync...
- Live Webcast Government Agency Webifies Outdated COBOL Applications Let this CTO tell you how his agency converted 1980s-era green screens into an e-filing portal for the 100,000 cases handled each year...
- The New Way to Work Knowledge Vault This Knowledge Vault focuses on how, in today's increasingly virtual world, it's more important than ever to engage deeply with employees, suppliers, partners,...
- Getting Ready for BlackBerry Enterprise Service 10.2 Find out how BlackBerry® Enterprise Service 10 helps organizations address the full spectrum of EMM challenges, while balancing the needs of both the... All Applications White Papers | Webcasts