Professional Documents
Culture Documents
Research Report Bartes-Catalin-Razvan IS 248
Research Report Bartes-Catalin-Razvan IS 248
Research Report Bartes-Catalin-Razvan IS 248
GROUP 248-1
2023
Abstract
This paper delves into the transformative landscape of automated code review in software
development, leveraging machine learning techniques to enhance the entire software
development process. Drawing insights from three seminal studies, including "Code review
analysis of software system using machine learning techniques," "CORE: Automating Review
Recommendation for Code Changes," and "An Empirical Investigation of Relevant Changes and
Automation Needs in Modern Code Review," the research systematically explores the theoretical
foundations and practical implications of integrating machine learning algorithms. Highlighting
the application of machine learning in code review, the paper particularly emphasizes the
widespread use of the Random Forest algorithm. Through an analysis of the proposed machine
learning approach for code reviews in software systems, the study envisions a future where code
reviews are conducted faster and with heightened precision. This vision is further crystallized by
the introduction of CORE, an innovative automated code review engine designed to suggest
improvements solely based on code changes and reviews, showcasing superior performance
compared to existing models.
Contents
1.Introduction ……………………………….………………………………………………. 4
2. Integration into the General Field ………………………………………………………… 4
3. Theoretical Considerations: Advantages and Disadvantages: ……………………………. 6
4.Conclusion …………………………………………………………………………………. 8
5.Bibliography ………………………………………………………………………………. 8
1.Introduction
In the ever-evolving landscape of software development, code review stands as a pivotal process
for ensuring software robustness and reliability. This essential practice systematically examines
source code to rectify overlooked mistakes and minimize the risk of bugs. Various forms of code
review, such as pair programming and formal inspections, have proven to be accelerators in the
software development process. As development practices progress, the integration of machine
learning into code review processes signifies a transformative leap for efficiency and precision.
This paper comprehensively explores this symbiotic relationship by synthesizing insights from
diverse studies.
The first study, "Code review analysis of software system using machine learning techniques,"
introduces a machine learning approach for faster and cleaner code assessments, evaluated on
Eclipse. The second study, "CORE: Automating Review Recommendation for Code Changes,"
addresses labor-intensive code reviews through CORE, an automated engine with multi-level
embedding and an attentional deep learning model. The third study, "An Empirical Investigation
of Relevant Changes and Automation Needs in Modern Code Review," explores gaps in Modern
Code Review (MCR) tools, emphasizing the impact of new technologies and the necessity for
automation.
Expanding our exploration, the fourth study conducts a systematic literature review on "Machine
learning techniques for code smell detection." It identifies limitations of heuristic-based detectors
and explores the adoption of machine learning approaches. The fifth study, "Predicting Code
Smells and Analysis of Predictions: Using Machine Learning Techniques and Software Metrics,"
introduces a code smell prediction approach based on machine learning and software metrics,
emphasizing the potential of Random Forest.
This paper synthesizes findings from these diverse studies to provide a holistic understanding of
the theoretical foundations, advantages, and challenges associated with integrating machine
learning into automated code review processes. Beyond technical methodologies, the research
envisions a future where machine learning and code review collaboratively redefine software
development, fostering efficiency, reliability, and elevated quality standards.
5. Bibliography
[1] Damian A. Tamburri, Tommaso Dal Sasso, An Empirical Investigation of Relevant Changes and
Automation Needs in Modern Code Review, 2018
[2] Mhawish, M.Y., Gupta, M. Predicting Code Smells and Analysis of Predictions: Using Machine
Learning Techniques and Software Metrics. J. Comput. Sci. Technol., 2020
[3] Yida Tao, Huaimin Wang, Xuan Lu, CORE: Automating Review Recommendation for Code
Changes, 18-21 February 2020
[4] Fabio Palomba, Gabriele Bavota, Machine learning techniques for code smell detection: A systematic
literature review and meta-analysis, 5 January 2019
[5] Vijayalakshmi Ramasamy, P. Thambidurai, Code review analysis of software system using machine
learning techniques, 16 February 2017