Mathematical proof techniques, automated requirements tracing are trends in software verification tools

BY John Keller

Complex application software increasingly is finding its way into mission- and life-critical applications, like medical equipment, surveillance and reconnaissance systems, and even high-end passenger cars. Despite the importance of this software, however, much of today’s sophisticated code is developed in somewhat of a haphazard manner with little foolproof debugging going on, and even less code verification based on formal methods.

“The modern car has more lines of code than a typical commercial jetliner,” says Robert Dewar, president and chief executive officer of AdaCore Technologies Inc. in New York. “Medical instrumentation has critical software that also is written in a haphazard way,” he says.

Software in these kinds of mission- and life-critical systems could learn a thing or two from aerospace and defense technology, such as avionics and military systems in which formal certification is mandatory, and where the use of software verification tools are seeing increasing use not only to find software bugs, but also to exercise the software automatically in a wide variety of scenarios to ensure the code will work every time.

Approaches to software verifi- cation tools are widely varied, but tend to segment into static tools, which work with the source code itself, and dynamic test tools, which execute the code with test cases to verify that the software works correctly. New kinds of dynamic software code verification tools seek to automate the process of following software verification requirements.

In addition, software engineers are working on developing formal, mathematical proof techniques to ensure code quality. Among the companies invested in formal mathematical proof techniques for software code verification is The MathWorks in Natick, Mass.

“There is a new class of verification tools that actually analyzes the code to check to make sure there won’t be a certain class of runtime errors,” says Jon Friedman, aerospace and defense industry marketing manager at The MathWorks. “These check to make sure that the engineer hasn’t left openings for those kinds of problems.”

Formal, mathematically provable methods are absolutely essential for removing all doubt that software will work when called on, says Jay Abraham, product marketing manager at The MathWorks. “You cannot do exhaustive software testing without formal methods,” Abraham says. “Formal mathematics can boil down these complicated problems into smaller problems that you can prove.”

AdaCore’s Dewar says use of mathematical proof techniques is a major trend in software verification tools today. He says this technology should be mature within the next five years. “It is being used today, but it is not yet standard industry practice,” Dewar says.

Today’s high-performance and relatively inexpensive computing is helping software engineers implement formal methods in software code verification. In years past, the kind of computing necessary to run formal methods was unavailable to most engineers.

Following a set process for soft- ware code verification is not new, but in the recent past has been a laborious process. Today, software engineers are trying to automate that process of tracing requirements all the way down to testing on a target, says Chris Murray, vice president of business development at LDRA Ltd. U.S. office in San Bruno, Calif.

“It is most important to be able to find out which software artifact is connected upstream or downstream to another artifact,” Murray says. “You need to do that quickly and efficiently. LDRA does that with a tool called Object Box, which is a component of the LDRA Tool Suite that includes static and dynamic software testing and requirements traceability.”

More Military & Aerospace Electronics Current Issue Articles
More Military & Aerospace Electronics Archives Issue Articles


Easily post a comment below using your Linkedin, Twitter, Google or Facebook account.


The Innovation That Matters™ Quiz

Innovation is one of the key drivers in the Defense industry. View this short video of Leon Woo, VP of Engineering at Mercury Systems, on the role of innovation. Then, answer 3 simple questions correctly to be entered into a drawing to win an Eddie Bauer fleece jacket!

CONGRATULATIONS TO OUR TWO MOST RECENT WINNERS. "Nick from SPARWAR" and "Bridget from AOC."


Featured Slideshow

Evolution of the American soldier

The American soldier has come a long way since the beginning of the Republic 237 years ago. While uniforms for early soldiers were based on cost and utility, soldiers' clothing eventually considered ballistic protection, increasing storage space, protection from poison gas and other contaminants.

Related Products

RR2P Removable Canister RAID System

Transportable data storage for mobile field use aboard planes, ships and ground transport. 2U, du...

Sensors Unlimited GA1280JSX High Resolution, Mil-Rugged, Extended High Sensitivity InGaAs SWIR Camera

Manufactures a high resolution, mil-rugged, extended high-sensitivity 0.9 Mpixel InGaAs SWIR came...

M1U20xx 1U Military-Grade Computer System

The M1U20xx Military-Grade Rack Mount System is a reliable high-performance mil-spec 1U solution ...

Related Companies

Winchester Systems Inc

At its founding in 1981, Winchester Systems introduced its first 5 MB disk system for Intel development system users....

Extreme Engineering Solutions Inc (X-ES)

 Extreme Engineering Solutions, Inc. (X-ES) is a leader in the design, manufacture, and support of standard and ...

American Infrared Solutions (AIRS)

Most Popular Articles

Webcasts

On Demand Webcasts

Engineering the VPX high-speed data path for physical and signal integrity

Join Arrow Electronics and TE Connectivity, for an overview webinar of the standards, technologies and trends involving VITA and TE.

Design Strategy Considerations for DO-178C Certified Multi-core Systems

Join Wind River to learn how system architecture and design choices can minimize your DO-178C certification challenges.

Sponsored by:

Flying, Sailing or Driving - The Rugged, Embedded Intel-based Server that goes where you need it!Flying Sailing or Driving

Leveraging the power of server-class processors is no longer relegated to the confines of data centers. Through several innovations, Mercury Systems has ruggedized Intel’s server-class chips for deployment. ...
Sponsored by:

social activity

All Access Sponsors


Mil & Aero Magazine

February 2014
Volume 25, Issue 2
file

Download Our Apps



iPhone

iPad

Android

Follow Us On...



Newsletters

Military & Aerospace Electronics

Weekly newsletter covering technical content, breaking news and product information
SUBSCRIBE

Defense Executive

Monthly newsletter covering business news and strategic insights for executive managers
SUBSCRIBE

Embedded Computing Report

Monthly newsletter covering news on embedded computing in aerospace, defense and industrial-rugged applications
SUBSCRIBE

Unmanned Vehicles

Monthly newsletter covering news updates for designers of unmanned vehicles
SUBSCRIBE