Tokyo, October 24, 2019
Sumitomo Mitsui Financial Group (SMFG), The Japan Research Institute, Limited (JRI), and Fujitsu Limited today announced that they have conducted a joint field trial to determine the effectiveness of an AI technology that automatically recommends software repairs(1).
This technology leverages AI to automatically generate recommended repairs for latent bugs in software detected by static analysis tools(2), offering insights to the software's developers. In the trial, the technology was applied to software for the system that handles financial transactions for Sumitomo Mitsui Banking Corporation (SMBC), developed by JRI. The evaluation results showed that the technology could recommend appropriate repairs for over half of the latent bugs detected. Using these proposed repairs, it would have been possible to reduce the time required to repair the latent bugs by up to 30% compared with performing the task manually. Therefore, it is anticipated that the technology will contribute to significant reductions in software development and maintenance time.
Background
In the finance industry, providing service innovation using digital transformation and fintech, has become indispensable to improving competitiveness. While demand exists for financial institutions to provide their customers with the latest digital services as fast as possible, financial services require a particularly high degree of trustworthiness, so development methods for improving software quality in a short time frame have become a pressing issue.
In light of these circumstances, Fujitsu Laboratories of America, Inc., and SMFG Silicon Valley Digital Innovation Laboratory collaborated to conduct a joint field trial to evaluate the effectiveness of this technology when applied to SMBC's financial transaction processing system. The technology was initially developed by Fujitsu Laboratories of America and Fujitsu Laboratories Ltd.
About the Technology
Given a set of latent bugs in a software, identified by static analysis tools, this technology synthesizes repairs based on a set of repair strategies and recommends them to developers. The repair strategies are learned from repair examples of previous latent bugs using AI.
Latent bugs may cause a wide variety of software problems, including performance degradation, incorrect behavior and poor maintainability. In order to repair latent bugs, software developers must begin by analyzing how to repair each one individually, so the process requires significant amounts of time.
With this technology, an AI model is trained on examples of repairing latent bugs extracted from the development history of a wide variety of software projects, deriving repair strategies for different bug types. When applied to latent bugs in software under development, this technology uses these learned repair strategies to automatically synthesize and recommend repairs for the bugs, to the developer. It is expected that the use of this technology could shorten software development and maintenance times compared to having developers repair each identified latent bug manually.
Summary of the Field Trial
1. Time Period
August 1 - September 30, 2019
2. Details
In this field trial, this technology was applied to SMBC's financial transaction processing system, developed by JRI. In the trial, the number of latent bugs in the selected software was tabulated using a static analysis tool, as well as the number of valid repair recommendations synthesized by this technology, verified through a manual examination of each recommended repair.
The results show that this technology was able to generate repair recommendations for 52.7% of the latent bugs in the selected software and that, of those repair recommendations, 95.3% were valid. This means that this technology was able to recommend valid repairs for 50.2% of all latent bugs. Further, we estimated that the time required to fix these latent bugs could be reduced by up to 30%, compared with having developers manually repair each bug individually.
Future Developments
SMFG and JRI are considering a full-scale deployment of this technology in order to improve the quality and efficiency of software development. In addition, Fujitsu aims to use the results of this field trial to further enhance the analytical capacity of the technology and improve the accuracy of the proposed solutions, while also aiming to make this technology available as a development support service during fiscal 2020.