JapaneseResearcher Interview

Innovative Software Development for the DX Era Enhancing AI with Automatic AI-based Bug Fixing Technologies

Japanese
 

As we work towards realizing business transformation through digital transformation (DX), one of the key challenges is to improve the quality of software and productivity in software development . Harnessing our expert resources in Japan and the U.S, Fujitsu Laboratories has pioneered a new a technology that uses AI automatically to generate fixes for potential bugs in software detected by static analysis tools.
In this interview, we talk to six members of the team involved in the AI-based bug fixing research and development about the background to the technology, which was jointly developed by Fujitsu Laboratories of America (FLA) in Silicon Valley and Fujitsu Laboratories in Japan, highlighting the collaboration process between the two companies.

Posted on September 18, 2020

MEMBERS

FLL members

  • Shinji Kikuchi

    Shinji Kikuchi

    Research Manager
    Digital System Project
    Software Laboratory

  • Keisuke Hotta

    Keisuke Hotta

    Operation Innovation Project
    DevOps Innovation Unit

  • Yusuke Nemoto

    Yusuke Nemoto

    Operation Innovation Project
    DevOps Innovation Unit

FLA members

  • Mukul R. Prasad

    Mukul R. Prasad

    Fujitsu Laboratories of America
    Research Manager
    AI Core Technologies Project
    Artificial Intelligence Laboratory

  • Hiroaki Yoshida

    Hiroaki Yoshida

    Fujitsu Laboratories of America
    Research Manager
    AI Core Technologies Project
    Artificial Intelligence Laboratory

  • Sumito Sugata

    Sumito Sugata

    Manager
    Co-Creation Innovation Center
    Fujitsu Laboratories of America

As we all seek to establish the “New Normal”, DX has become an even more important global management issue. Our Japanese and U.S. researchers are focused on finding innovative new solutions, as they explain in this online interview.

Group photo

Applying Japan-U.S. Teamwork to Accelerate DX and Improve the Efficiency of Software Development

A growing number of companies are working on DX to transform their businesses. Fujitsu has also established a new company, Ridgelinez, to promote DX, and is taking an active role in providing services not only for its own DX, but also for companies seeking to realize DX.

According to the "DX Report" * 1 issued by the Ministry of Economy, Trade and Industry, a delay in the introduction of DX by companies could result in an annual loss of up to 12 trillion yen in Japan alone. It is therefore an urgent priority to improve both the development productivity and quality of software, as it is the fundamental basis for realizing DX.

*1: DX Report ~ Overcoming IT Systems "2025 cliffs" and Full-Scale Deployment of DX ~

Shinji Kikuchi is our Senior Researcher on the Digital System Project, and is in charge of developing technologies for improving development efficiency through AI. This was the driving force behind the automatic AI-based bug fixing project, as Shinji explains: "In the future, companies will be under pressure to demonstrate how they can streamline software development without compromising the highest standards of quality. However, it is quite difficult to improve the productivity in software development which is mainly performed manually by engineers. In order to overcome this, our concept involves working towards a world in which developers and AI work together to develop software and accelerate DX."

Mukul Prasad, who oversees the project at the Silicon Valley-based FLA, takes up the story: “Debugging and patching software today is a largely manual process, forming a major part of software development. It was clear to us that this was a major barrier to software adoption and expansion, and was an area where automation was very much needed."

Mukul’s expertise in hardware, software, and network reliability is extensive, as his speciality during his 19-year tenure at the FLA. His experience with automated software patching projects in the past forms an important component of this project.

A New Approach, Moving Away from the Traditional Reliance on Test Quality

Here's how our AI-based bug fixing technology works. Firstly, the AI learns the correction patterns of latent bugs (defects that have not yet surfaced) from the development history of various software. The static analysis tool then detects any latent bugs in the source code of the software to be corrected, and automatically generates specific code correction proposals for the identified bugs and presents these to the developers.

The project involved close coordination between the two teams, with FLA conducting R & D on core technologies and Fujitsu Laboratories developing tools and conducting demonstration experiments with customers. Hiroaki Yoshida, who was in charge of the development of core technologies at FLA, explains:

"Automatic bug fixing has been the subject of academic research for more than 10 years, and great strides have, without doubt, been made in recent years. There is, however, a fundamental issue with the traditional approach to automated bug fixes, which relies heavily on the quality of the code in software testing. If the quality of the code is low, it is not possible to propose appropriate modifications, so this presents a major barrier to practical use."

So we decided to turn things on their head and focus on a completely different approach – involving fixing potential bugs.

Hiroaki continues: "By adopting this line of research, we can eliminate our reliance on testing and make the technology available to anyone, regardless of whether testing has been conducted or not. In addition to well-tested software, the vast amount of open source assets on GitHub (source code control platform for software development) can now be leveraged to provide high-quality remediation suggestions for AI learning data."

Mukul and Hiroaki played a central role in the research and development of core technologies, and interestingly it was a while examining problems associated with past research that they made a breakthrough with this project. Hiroaki recollects that "We experience a lot of failures in our research activities, as much of our work involves trial and error, and learning from our mistakes plays an important part in any development. In general, research papers only contain successful examples, and you can only imagine all the failures behind these successes. That's why my own failures are so important, and my own path to success is based on identifying and applying the lessons from them."

Demonstrating Results with Fast-Track Customer Collaboration

In 2019, a milestone verification test was conducted with Sumitomo Mitsui Financial Group (SMBC Group) using our AI-based bug fixing technology. FLA and the "SMFG Silicon Valley Digital Innovation Laboratory" of the SMBC Group collaborated closely to apply the technology to the SMBC ’s financial transaction system’s software in order to verify its effectiveness.

It was Sumito Sugata who triggered this important collaboration. In 2017, Sumito was assigned to FLA from the Global Strategic Sales Department of the Fujitsu Financial Business Unit. Since then he has been working to create new businesses in Silicon Valley, leveraging FLA’s and Fujitsu Laboratories’ latest technologies, as well as promoting open innovation through partnerships with startups.

He learned that SMFG Silicon Valley Digital Innovation Laboratory was looking for a technology similar to what we were developing, and made the connections to realize the collaboration. "Silicon Valley is an environment that relies on fast decision-making and rapid technological evolution. This was one of the main reasons we were able to carry out our work so rapidly - from explaining the specific research contents to the actual demonstration experiment at SMFG Silicon Valley Digital Innovation Laboratory.”

Test Experiment Success - Achieving 95+ % Automatic Correction Accuracy

In the demonstration experiment, we applied our automatic correction technology to customer-supplied software assets, and verified the accuracy of each correction proposal. Keisuke Hotta, a long-standing expert in software development support technology from the Fujitsu Laboratories Service Business Development Operations Unit and Development Innovation Project, was in charge of judging and analyzing the fixes generated by the technology.

Keisuke is confident that this will be a breakthrough for developers in the future: "As a result of the demonstration experiment, we were able to propose fixes for more than half of the latent bugs that the static analysis tool identified in the software. In addition, more than 95% of the proposed fixes were found to be valid, with the accuracy of the proposal being extremely high. We believe that this approach will significantly reduce the amount of time involved in having to think about or rewrite changes in future, saving developers a considerable amount of effort."

Sumito adds, "The results of this demonstration were very well received by our customers, and it added greatly to our reputation as a company with high-caliber technological capabilities. Thanks to our overall activities in Silicon Valley as well as this project, it is clear that customers have high expectations for our technology. "

One of the main factors behind this success was the combined ability of Fujitsu Laboratories and FLA to capitalize on each other's strengths. Shinji Kikuchi expands, "In addition to the collaboration between FLA and Fujitsu Laboratories, we also cooperated in a variety of other areas, such as Fujitsu's financial sales department, the Service Technology Unit, and affiliated companies, in internal development and commercialization. There are challenges involved with working with different organizations across borders, but it is very important to build a relationship in which each respects the other, while freely sharing opinions."

Mukul continues, "FLA’s location in Silicon Valley makes it the ideal seeding ground for joint research with universities and recruiting excellent interns. Equally importantly, Fujitsu Laboratories has not only the culture and technical know-how to foster leading-edge technologies, but also strong ties and relationships built on trust with business divisions and customers. This enables the rapid development of practical applications, which in this case led to an ideal collaboration."

Next Steps: Focusing on Workplace Usability and Corrective Suggestion Accuracy

Our technology has already met our practical requirements for fixing potential bugs, and the aim now is to commercialize it by the end of fiscal 2020. Prior to that, the focus now is on improving usability and the quality of the AI-based recommendations.

Keisuke explains: "With this technology, AI learns how to fix problems based on historical data available from open source development. There are, however, differences in characteristics between open source software and software developed by companies, and in some cases, the methods to fix a problem learned from the former cannot be applied to the latter. In the future, we would like to improve our technology’s performance by enriching the learning data and adding technical improvements to the learning part."

Yusuke Nemoto of the Service Business Development Operation Unit and Development Innovation Project is playing a central role in developing tools for field applications. Yusuke has extensive experience with software evelopment, not only in enterprise system areas when he worked for a Fujitsu Group SI company, but also in open source software areas as a code commiter.

"I find this technology very attractive, because it allows AI to apply the wisdom of the past and suggest coding patterns that software developers themselves did not notice. Of course, the actual development environment and development flow differ from project to project, making it difficult to determine which environment to support. In the future, we will consider potential target applications, while collecting and analyzing information from the user's development environment."

Spreading the DX Message by Developing Innovative Technologies and Direct Implementations

We believe in putting our technologies into practice. In the future, Fujitsu Laboratories will not only conduct demonstration experiments with customers, but will also promote the implementation of the technology internally in order to strengthen the technology. We will work to accelerate DX universally, through adoption with both customers and within Fujitsu itself.

FLA is concentrating its effort on improving its core technologies to address a broader range of bug fixes, as well as to increase Fujitsu's visibility in North America. This spans a wide cross-section of activities, from working with local universities to raise the profile of our research activities, to holding technology symposiums and other events. This new technology will, we believe, substantially contribute to increasing our overall profile in the United States.

The AI-based bug fixing technology was achieved through close collaboration between Japan and the U.S., highlighting the value of teamwork. It will, without doubt, be an important milestone in demonstrating Fujitsu's cutting edge technology stature and its corporate commitment to implementing DX.

Share

  • facebook
  • twitter
  • LinkedIn
  • LINE
  • Weibo

Recommend

 
 

Connect with Fujitsu Research

LinkedIn
Twitter
YouTube
Top of Page