|Amir Nahir, IBM researcher
“When you’re driving your car down the highway at 50 mph, you assume that turning on the car radio or the headlights won’t affect the brake system. It’s just one extreme example of the importance of an integrated system. And any complex system that combines hardware and software must be verified to prevent problems such as your radio not working when you pump the breaks,” said Amir Nahir
, verification researcher at IBM Research – Haifa
Modern automotive systems have as many as 80 electronic control units working in them, simultaneously pumping out and collecting data — all the while working in concert with the electrical and mechanical systems around them. And this is just one example of a highly integrated engineering system. Similar systems that integrate hardware, software, and huge amounts of sensors are becoming more prevalent in such industries as aircraft, defense, and healthcare, to name a few. Verification plays a critical role in the development of these systems, helping to cut their time-to-market, making products ready faster, and preventing recalls as much as possible. These efforts increase product quality exponentially, beyond the obvious crucial need to maximize safety-critical issues in systems.
“Complex engineering systems by their nature integrate hardware and software,” said Amir, the general chair at IBM Research – Haifa’s recent 2012 Haifa Verification Conference (HVC)
. “The more intricate and mission-critical those systems become, the more crucial our need to verify their proper functioning.”
Complex by nature
According to Professor Edward Lee
of UC Berkeley, a keynote speaker at HVC 2012, “modern engineering systems are really cyber-physical systems, where hardware interacts and integrates not only with software but also with the data flowing from a nearly endless number of sensors.”
These often real-time systems can be extremely difficult to verify, he explained. “But if we extend the standard software paradigm to include timing properties and re-engineer various performance optimizations, the resulting systems are more easily verified and often have better performance.”
IBM Researchers in Haifa are working on improving complex systems engineering verification by adding automation to the verification process whenever possible. More flexible and extensive than manual testing, automated verification is also much less error-prone, and it allows computers to generate random test cases (a critical aspect of verification) that human testers wouldn’t think of on their own.
Improving manufacturing processes
One of the systems engineering verification projects that IBM Researchers are participating in is MuProD
, a European research consortium, which is striving to develop quality control methods for manufacturing.
“MuProD focuses on novel methods that examine products during production so that faults can be detected early,” explained Allon Adir, an IBM researcher working on the project. “As part of MuProd, we’re developing testing for the production process as a system, using techniques usually employed in hardware verification. This approach enables us to add significant value to the manufacturing process.”
Hardware verification is a more mature field than the testing of engineering systems, Allon explained. Adapting techniques that were originally developed for hardware is now benefiting the quality of integrated engineering systems.
|Networking break at HVC 2012
“Our goal is pretty simple,” he said. “We want to apply the verification success we’ve achieved in the hardware realm to the manufacturing process. By doing so, we hope to achieve high quality production in a short time-frame and at a reasonably low cost.”
“The bottom line in verification is the drive for quality,” Amir summed things up: “Whether in hardware, software, or integrated systems, we keep striving to make better tests with more complete coverage so the final result is a verified and reliable product.”