Detecting Defects with an Interactive Code Review Tool Based on Visualisation and Machine Learning

Stefan Axelsson, Dejan Baca, ROBERT H. FELDT, Darius Šidlauskas, Denis Kacan · 2009

Code review is often suggested as a means of improv-ing code quality. Since humans are poor at repetitive tasks, some form of tool support is valuable. To that end we de-veloped a prototype tool to illustrate the novel idea of ap-plying machine learning (based on Normalised Compres-sion Distance) to the problem of static analysis of source code. Since this tool learns by example, it is trivially pro-grammer adaptable. As machine learning algorithms are notoriously difficult to understand operationally (they are opaque) we applied information visualisation to the results of the learner. In order to validate the approach we applied the prototype to source code from the open-source project Samba and from an industrial, telecom software system. Our results showed that the tool did indeed correctly find and classify problematic sections of code based on training examples. 1.

Read the paper · More papers on PaperTik