February 1, 2019

Quality Control Comes to Code Reviews

George Leopold

Among the IT plumbing being automated is the painstaking review of software code via machine learning tools designed to scan source code for inconsistencies while suggesting fixes that promise to speed the review process, thereby getting software updates out the door faster.

The Lookout tool released this week by code analysis specialist source{d} leverages machine learning to model coding “style” based on reviews of different code repositories. The trained model is then applied to the analysis of a particular code base. The company claims Lookout is trained to understand the nuances of different code bases and learns how to model them.

That approach differs from relying on standard style practices used for code reviews.

When style problems are detected, the quality control tool suggests code fixes based on the GitHub software development platform’s “Suggested Changes” offering. The public beta version of the GitHub tool was released in October 2018.

Using the GitHub tool, code reviewers can immediately accept, or “commit,” to changes.

“Code reviews are one of the most essential practices for any software organization that cares about culture and quality,” said Francesc Campoy, source{d}’s product chief.

Along with blocking the early introduction of defects into a code base, the quality control step allows coders to share insights that might otherwise be restricted to a single team or individual.

“Good code reviews take time, especially from the most senior engineers in an organization,” Campoy added. “That’s why we’re developing machine learning techniques that can not only help human reviewers automate the most boring and repetitive tasks but also the ones that simply require too much information for humans to handle effectively.”

Founded in 2015, Madrid-based source{d} has been at the forefront of efforts to apply machine learning to the mundane but vital aspects of software coding and review. The Lookout platform seeks to apply machine learning techniques to train models that can identify, according to the startup’s web site, “useful aspects” of source code and code repositories.

This article originally appeared on Datanami.