MUSE envisions mining "big code" to improve software reliability and construction

Mar 07, 2014
MUSE seeks to leverage deep program analyses and big data analytics to create a public database containing mined inferences about salient properties, behaviors and vulnerabilities of software drawn from the hundreds of billions of lines of open source code available today. The program aims to make significant advances in the way software is built, debugged, verified, maintained and understood, and to enable the automated repair of existing programs and synthesis of new ones.

During the past decade information technologies have driven the productivity gains essential to U.S. economic competitiveness, and computing systems now control significant elements of critical national infrastructure. As a result, tremendous resources are devoted to ensuring that programs are correct, especially at scale. Unfortunately, in spite of developers' best efforts, software errors are at the root of most execution errors and security vulnerabilities.

To help improve this state, DARPA has created the Mining and Understanding Software Enclaves (MUSE) program. MUSE seeks to make significant advances in the way is built, debugged, verified, maintained and understood. The collective knowledge gleaned from MUSE's efforts would facilitate new mechanisms for dramatically improving software correctness, and help develop radically different approaches for automatically constructing and repairing complex software.

"Our goal is to apply the principles of big data analytics to identify and understand deep commonalities among the constantly evolving corpus of software drawn from the hundreds of billions of lines of available today," said Suresh Jagannathan, DARPA program manager. "We're aiming to treat programs—more precisely, facts about programs—as data, discovering new relationships (enclaves) among this 'big code' to build better, more robust software."

Central to MUSE's approach is the creation of a community infrastructure that would incorporate a continuously operational specification-mining engine. This engine would leverage deep program analyses and foundational ideas underlying big data analytics to populate and refine a database containing inferences about salient properties, behaviors and vulnerabilities of the program components in the corpus. If successful, MUSE could provide numerous capabilities that have so far remained elusive.

"Ideally, we could enable a paradigm shift in the way we think about software construction and maintenance, replacing the existing costly and laborious test/debug/validate cycle with 'always on' program analysis, mining, inspection and discovery," Jagannathan said. "We could see scalable automated mechanisms to identify and repair program errors, as well as tools to efficiently create new, custom programs from existing components based only a description of desired properties."

Explore further: DARPA open catalog makes agency-sponsored software and publications available to all

add to favorites email to friend print save as pdf

Related Stories

Detecting software errors via genetic algorithms

Mar 05, 2014

According to a current study from the University of Cambridge, software developers are spending about the half of their time on detecting errors and resolving them. Projected onto the global software industry, ...

Games help improve software security

Dec 05, 2013

Ever more sophisticated cyber attacks exploit software vulnerabilities in the Commercial Off-the-Shelf (COTS) IT systems and applications upon which military, government and commercial organizations rely. ...

Recommended for you

Microsoft to offer early look at next Windows

15 hours ago

Microsoft plans to offer a glimpse of its vision for Windows this week, as its new CEO seeks to redefine the company and recover from missteps with its flagship operating system.

User comments : 0