Strategic Communications and Marketing News Bureau

Software tools detect bugs by inferring programmer’s intentions

Computer science professor Yuanyuan Zhou and her students have assembled a suite of software tools that can find and correct bugs by inferring the programmer's intentions. The tools draw from observations on how programmers write code.

Computer science professor Yuanyuan Zhou and her students have assembled a suite of software tools that can find and correct bugs by inferring the programmer’s intentions. The tools draw from observations on how programmers write code.

CHAMPAIGN, Ill. – The task of debugging huge computer programs can be made faster and easier by using new software tools developed by programming experts at the University of Illinois at Urbana-Champaign.

Computer science professor Yuanyuan Zhou and her students have assembled a suite of software tools that can find and correct bugs by inferring the programmer’s intentions. The tools draw from observations on how programmers write code.

“Most bug-detection tools require reproduction of bugs during execution,” Zhou said. “The program is slowed down significantly and monitored by these tools, which watch for certain types of abnormal behavior. Most of our tools, however, work by only examining the source code for defects, requiring little effort from programmers.”

Copy-pasted code, for example, often appears in large programs. While saving considerable programming effort, copy-pasted code can be the source of numerous bugs. Zhou’s copy-paste tool, called CP-Miner, uses data-mining techniques to find copy-pasted code in the program and examine and correct that code for consistent modifications.

CP-Miner has found many bugs in the latest versions of large open-source software used in the information technology industry, Zhou said. CP-Miner is fast and efficient – it can scan 3-4 million lines of code for copy-paste and related bugs in less than 30 minutes.

Large programs also tend to follow many implicit rules and assumptions, so Zhou and her students developed a related tool, called PR-Miner, to detect when those rules have been broken. Like CP-Miner, PR-Miner is based on data-mining techniques.

“First, we mine the source code for patterns, repetitions and correlations that point to implicit programming rules and assumptions,” Zhou said. “Then we check that those rules and assumptions have not been violated.”

PR-Miner also is very fast and has found many bugs in the latest open-source software. It takes PR-Miner only a few minutes to scan 4 million lines of code.

Not only are their efforts directed toward detecting, diagnosing and fixing bugs, Zhou and her students also are exploring techniques that allow software to survive in the presence of bugs. Rx, for example, is a recovery tool that allows software to survive by treating bugs like allergies.

“If you are allergic to cats, you try to avoid cats,” Zhou said. “In much the same way, Rx is avoidance therapy for software failure. If the software fails, Rx rolls the program back to a recent checkpoint, and re-executes the program in a modified environment.”

A fourth tool, called Triage, diagnoses software failures at the end-user site. Following a human-like diagnosis protocol, Triage rapidly identifies the nature of the problem and provides valuable input to help programmers quickly understand the failure and fix the bug.

“If something bad happens or the software crashes, Triage’s diagnosis protocol will start automatically and quickly suggest a temporary fix until programmers can release a fixing patch,” Zhou said.

In addition to being fast and efficient, Zhou’s software tools are scalable and can be tailored for specific software programs, including programs running on parallel processors.

The work was funded by the National Science Foundation and the Intel Corp.

Editor’s note: To reach Yuanyuan Zhou, call 217-244-4563; e-mail: yyzhou@uiuc.edu.

Read Next

Announcements Marcelo Garcia, professor of civil and environmental engineering at The Grainger College of Engineering.

Illinois faculty member elected to National Academy of Engineering

Champaign, Ill. — Marcelo Garcia, a professor of civil and environmental engineering in The Grainger College of Engineering, has been elected to the National Academy of Engineering.

Social sciences Male and female student embracing on the quad with flowering redbud tree and the ACES library in the background. Photo by Michelle Hassel

Dating is not broken, but the trajectories of relationships have changed

CHAMPAIGN, Ill. — According to some popular culture writers and online posts by discouraged singles lamenting their inability to find romantic partners, dating is “broken,” fractured by the social isolation created by technology, pandemic lockdowns and potential partners’ unrealistic expectations. Yet two studies of college students conducted a decade apart found that their ideas about […]

Engineering Civil and Environmental Engineering Professor Nishant Garg, center, is joined by fellow researchers, from left: Yujia Min, Hossein Kabir, Nishant Garg, center, Chirayu Kothari and M. Farjad Iqbal, front right. In front are examples of clay samples dissolved at different concentrations in a NaOH solution. The team invented a new test that can predict the performance of cementitious materials in mere 5 minutes. This is in contrast to the standard ASTM tests, which take up to 28 days. This new advance enables real-time quality control at production plants of emerging, sustainable materials. Photo taken at the University of Illinois Urbana-Champaign on Monday, Feb. 3, 2025. (Photo by Fred Zwicky / University of Illinois Urbana-Champaign)

Researchers develop a five-minute quality test for sustainable cement industry materials

A new test developed at the University of Illinois Urbana-Champaign can predict the performance of a new type of cementitious construction material in five minutes — a significant improvement over the current industry standard method, which takes seven or more days to complete. This development is poised to advance the use of next-generation resources called supplementary cementitious materials — or SCMs — by speeding up the quality-check process before leaving the production floor.

Strategic Communications and Marketing News Bureau

507 E. Green St
MC-426
Champaign, IL 61820

Email: stratcom@illinois.edu

Phone (217) 333-5010