DocumentCode :
3143097
Title :
Reducing human effort and improving quality in peer code reviews using automatic static analysis and reviewer recommendation
Author :
Balachandran, Vivek
Author_Institution :
VMware, Bangalore, India
fYear :
2013
fDate :
18-26 May 2013
Firstpage :
931
Lastpage :
940
Abstract :
Peer code review is a cost-effective software defect detection technique. Tool assisted code review is a form of peer code review, which can improve both quality and quantity of reviews. However, there is a significant amount of human effort involved even in tool based code reviews. Using static analysis tools, it is possible to reduce the human effort by automating the checks for coding standard violations and common defect patterns. Towards this goal, we propose a tool called Review Bot for the integration of automatic static analysis with the code review process. Review Bot uses output of multiple static analysis tools to publish reviews automatically. Through a user study, we show that integrating static analysis tools with code review process can improve the quality of code review. The developer feedback for a subset of comments from automatic reviews shows that the developers agree to fix 93% of all the automatically generated comments. There is only 14.71% of all the accepted comments which need improvements in terms of priority, comment message, etc. Another problem with tool assisted code review is the assignment of appropriate reviewers. Review Bot solves this problem by generating reviewer recommendations based on change history of source code lines. Our experimental results show that the recommendation accuracy is in the range of 60%-92%, which is significantly better than a comparable method based on file change history.
Keywords :
program diagnostics; program testing; software engineering; Review Bot tool; automatic static analysis; coding standard violation checking automation; comment message; cost-effective software defect detection technique; defect pattern; developer feedback; file change history; peer code review; quality improvement; reviewer recommendation; source code line change history; static analysis tools; tool assisted code review; Algorithm design and analysis; Encoding; History; Inspection; Java; Software; Standards;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Engineering (ICSE), 2013 35th International Conference on
Conference_Location :
San Francisco, CA
Print_ISBN :
978-1-4673-3073-2
Type :
conf
DOI :
10.1109/ICSE.2013.6606642
Filename :
6606642
Link To Document :
بازگشت