Using StackOverflow content to assist in code review

03/15/2018
by   Balwinder Sodhi, et al.
0

An important goal for programmers is to minimize cost of identifying and correcting defects in source code. Code review is commonly used for identifying programming defects. However, manual code review has some shortcomings: a) it is time consuming, b) outcomes are subjective and depend on the skills of reviewers. An automated approach for assisting in code reviews is thus highly desirable. We present a tool for assisting in code review and results from our experiments evaluating the tool in different scenarios. The tool leveraged content available from professional programmer support forums (e.g. StackOverflow.com) to determine potential defectiveness of a given piece of source code. The defectiveness is expressed on the scale of Likely defective, Neutral, Unlikely to be defective. Basic idea employed in the tool is to: a) Identify a set P of discussion posts on StackOverflow such that each p in P contains source code fragment(s) which sufficiently resemble the input code C being reviewed. b) Determine the likelihood of C being defective by considering all p in P . A novel aspect of our approach is to use document fingerprinting for comparing two pieces of source code. Our choice of document fingerprinting technique is inspired by source code plagiarism detection tools where it has proven to be very successful. In the experiments that we performed to verify effectiveness of our approach source code samples from more than 300 GitHub open source repositories were taken as input. A precision of more than 90 identifying correct/relevant results has been achieved.

READ FULL TEXT
research
04/29/2021

Using Paragraph Vectors to improve our existing code review assisting tool-CRUSO

Code reviews are one of the effective methods to estimate defectiveness ...
research
07/10/2023

Calculating Originality of LLM Assisted Source Code

The ease of using a Large Language Model (LLM) to answer a wide variety ...
research
04/01/2019

STYLE-ANALYZER: fixing code style inconsistencies with interpretable unsupervised algorithms

Source code reviews are manual, time-consuming, and expensive. Human inv...
research
03/22/2021

psc2code: Denoising Code Extraction from Programming Screencasts

In this paper, we propose an approach named psc2code to denoise the proc...
research
06/14/2022

A Hierarchical-DBSCAN Method for Extracting Microservices from Monolithic Applications

The microservices architectural style offers many advantages such as sca...
research
04/20/2023

Novice programmers strategies for online resource use and their impact on source code

Websites are frequently used by programmers to support the development p...
research
07/18/2023

Is this Snippet Written by ChatGPT? An Empirical Study with a CodeBERT-Based Classifier

Since its launch in November 2022, ChatGPT has gained popularity among u...

Please sign up or login with your details

Forgot password? Click here to reset