On CHOW: Easy no-cook RECIPES
Find Articles in:
all
Business
Reference
Technology
News
Sports
Health
Autos
Arts
Home & Garden
advertisement
Featured White Papers
advertisement

Content provided in partnership with
ProQuest

Putting software to the test

ASEE Prism,  Oct 2001  

BRIEFINGS

Think of how often your PC crashes. Now think how much we already rely on embedded software to control critical components within such things as medical devices, airplanes, cars, and high-tech weaponry. If your PC only crashes once or twice a year, you probably consider yourself lucky. But if some of these other software were to fail that regularly, well, the problem might be more than just an irritation. Now two researchers from Kansas State University's College of Engineering are leading a five-year, $3.2 million project to ensure that embedded software is properly tested, so that once it's in use, there is a high degree of confidence that it will work.

It does sound scary that rigorous tests of critical-use software are only now being developed. That's because, "in general, it's easier to build complex systems than to test them ... the bulk of software research and industry is focused on building systems that have new capabilities and are faster," explains Matthew Dwyer, who received the grant along with John Hatcliff, his colleague in the computing and information sciences department. As software becomes even more embedded in everyday products, the market's tolerance for failure will decrease, he adds. "But that might require several catastrophic accidents in which software is clearly to blame. We'd prefer not to wait for that." Dwyer hastens to add, however, that the risk of deaths occurring because of software failure is probably no greater than people dying from human error, which is marginally comforting.

There are good methods already in use to determine software reliability, but they are "incredibly expensive," he explains, and are mainly used for very critical operations. AT&T, for instance, has 2,000 people dedicated to developing and testing software to keep its telephone networks running smoothly. As embedded software becomes a regular part of our lives, Dwyer says, easier, less costly methods will be needed to keep failure rates low, Typically, engineers use mathematical models to determine the correctness of a system, but most models used for testing software are superficial, Dwyer says. His team's trying to devise a testing model that's closer to traditional engineering models.

Funding for the research comes from the Defense Department, and Dwyer and Hatcliff are working in tandem with colleagues at the University of Massachusetts. Two other schools, Carnegie Mellon University and the University of Pennsylvania, are considering other possible software tests. Next time your laptop crashes, think about how reliant upon software your car has become. Then wish Dwyer et. al. very good luck, indeed.

Copyright American Society for Engineering Education Oct 2001
Provided by ProQuest Information and Learning Company. All rights Reserved