CodeInsight: Recommending Insightful Comments for Source Code using Crowdsourced Knowledge

 
Abstract: Recently, automatic code comment generation is proposed to facilitate program comprehension. Existing code comment generation techniques focus on describing the functionality of the source code. However, there are other aspects such as insights about quality or issues of the code, which are overlooked by earlier approaches. In this paper, we describe a mining approach that recommends insightful comments about the quality, deficiencies or scopes for further improvement of the source code. First, we conduct an exploratory study that analyzes crowdsourced knowledge from Stack Overflow discussions as a potential resource for source code comment recommendation. Second, based on the findings from the exploratory study, we propose a heuristic-based technique for mining insightful comments from Stack Overflow Q & A site for source code comment recommendation. Experiments with 292 Stack Overflow code segments and 733 discussion comments show that our approach has a promising recall of 85.42%. We also conducted a complementary user study which confirms the accuracy and usefulness of the recommended comments.

Exploratory Study


Discussion comments

Stack Overflow code segments

File structure: [Postid-segmentid.txt]

User Study


Open source code segments

Line structure: [SO code segment ID | OSS file line range | OSS file URL ]

Prototype


Work in progress.

Related Publication(s)


@INPROCEEDINGS{scam2015masud, 
author={Rahman, M. M. and Roy, C. K. and Keivanloo, I.}, 
booktitle={Proc. SCAM}, title={Recommending {I}nsightful {C}omments for {S}ource {C}ode using {C}rowdsourced {K}nowledge}, 
year={2015}, 
pages={81-90} } 

© Masud Rahman, Computer Science, University of Saskatchewan, Canada.