AI Tools For Reliable Software – Technology Org

Software errors harbor dangers and cost a lot of money. To fix them, Stuttgart computer scientist Michael Pradel is relying on AI-automated tools that are based on artificial intelligence.

AI Tools For Reliable Software – Technology Org

Coding AI systems – artistic interpretation. Image credit: ThisIsEngineering via Pexels, free license

Within the framework of the ERC Starting grant project “LearnBugs”, he and his team have already developed the technologies to do so. The first steps to bring them to market will now be funded by the European Research Council (ERC) with a Proof of Concept grant.

“We all interact with complex software systems on a daily basis. Whether in communication, shopping or banking transactions, in road traffic or in healthcare: Unreliable, inefficient, and insecure software is wasting precious time and can cause serious damage to millions of people,“ says Prof. Michael Pradel, Executive Director of the Institute of Software Engineering (ISTE) at the University of Stuttgart. To be able to better identify and fix bugs in the program code in the future, Pradel wants to use new tools that are based on artificial intelligence and deep learning.

Particularly powerful tools

So far, for the detection of software errors, developers have been using testing software written by humans, which can only find errors that are already known.

By contrast, the artificial intelligence that Pradel and his team developed in their first ERC project “Learning to Find Software Bugs“ can not only automatically identify and fix bugs in the software code. It is also able to learn from the errors identified, understand the development process, predict where new errors will occur in the future, and make targeted suggestions on how to fix and complete a program code.

“These technologies are particularly powerful – especially with regard to errors that conventional software tools miss,” Pradel explains. 

Preparing future marketing

The aim is now to further develop the research prototypes created and successfully tested in the “LearnBugs” project for use in the software industry with the support of the ERC Proof of Concept grant, to make them available to a wide range of users, and to prepare their future marketing. “We want to support software developers in their daily work,” says Pradel. Successful transfer into practice depends just as much on the quality of the underlying techniques as on their smooth and efficient integration into the development process.

In his new ERC project “BugGPT”, Pradel asks when, where in the code, and how should bug fixes be managed. He also intends to analyze the market potential, practical implementation, and possible business models.

Significant impact on the software industry

“The project has the potential to have a significant impact on the software industry,” says Pradel. “If we are successful, our new tools will be able to better protect society from serious software errors that can lead to crashes, security vulnerabilities and data loss, and at the same time reduce the costs of software development.”

In addition to his position as Executive Director of the Institute of Software Engineering (ISTE), the computer scientist and engineer is the head of the Software Lab at the University of Stuttgart and holds the Chair of Programming Languages at the ISTE. In September 2019, Pradel was awarded an ERC Starting Grant.

About the ERC Proof of Concept grant

The European Research Council awards the ERC Proof of Concept grant in addition to the main funding lines of the ERC, which are the Starting, Consolidator, Advanced, and Synergy grants. The grant is valued at EUR 150,000 and is aimed exclusively at researchers who have already received an ERC grant and want to further develop results from their current or already completed research project. The aim of the funding is to explore the commercial or social potential of a completed ERC project and take the first transfer step toward the market and society.

Source: University of Stuttgart