This bot program can automatically fix software errors with quality not inferior to humans

A fast, high-quality bot program that can find error codes and fix them, automate the process of finding errors and writing high-quality patches.

Currently, finding and writing patches to fix bugs in software has become an integral part of computer programs that have become so complicated that the generation of errors is almost certain. This is a time consuming process and a lot of human resources.

Martin Monperrus and colleagues from the KTH Royal Institute of Technology Institute in Stockholm, Sweden have built a high-quality, fast-paced bot program that can find error codes and fix them, helping automatically. process the process of finding errors and writing high quality patches.

This bot program can automatically fix software errors with quality not inferior to humans Picture 1This bot program can automatically fix software errors with quality not inferior to humans Picture 1

This bot program is called Repairnator and was released in November 2018. Researchers gave Repairnator a test with human developers in finding and developing patches on GitHub to check the program. This bot can achieve speed and quality as humans do.

Monperrus shares the research team's idea, Repairnator will automatically create patches to fix software bugs and performances to see if human developers accept them as good code base contributions. is not.

The team created Repairnator an account named Luc Esape on GitHub with both profile pictures and looks like a young developer.

To be able to compete with people, this bot program must create a high quality patch (correct and readable to be accepted into code base) before people do so. The time for bots to complete such patches is calculated in minutes instead of days.

 

This bot program can automatically fix software errors with quality not inferior to humans Picture 2This bot program can automatically fix software errors with quality not inferior to humans Picture 2
Repairnator's operation diagram when running on Travis's continuous integration service.

Repairnator has undergone two tests. For the first time from February to December 2017, Repairnator was run to search for errors on a list of about 14,188 GitHub projects. The results showed that Repairnator analyzed more than 11,500 builds with errors, including 3,000 cases where it could reproduce bugs and develop patches for 15 cases. However, since Repairnator patches are too low quality or late, not all are accepted into the build.

The researchers found that the prototype of the bot program could fix about 30 bugs every day.

The second test took place from January until June 2018, and brought more success. This time, Repairnator is set up to be able to work on Travis's continuous integration service. On January 21, Repairnator had a patch approved by the human censor for inclusion in the build. In the next 6 months, 5 other patches written by Repairnator were also accepted by human censors. This proves, Repairnator has been able to compete with people.

This bot program can automatically fix software errors with quality not inferior to humans Picture 3This bot program can automatically fix software errors with quality not inferior to humans Picture 3

Repairnator's success is a milestone that paves the way for a new generation of software development. However, it also entails a host of new issues that need to be addressed such as who manages and owns intellectual property and is responsible for the bot program's contributions.

Perhaps people will have to answer these questions before people and machines can collaborate more.

Monperrus and colleagues believe that in the future, bots and people can collaborate smoothly and even collaborate in creating software.

4 ★ | 1 Vote