ACoRA - A Platform for Automating Code Review Tasks

被引:0
|
作者
Ochodek, Miroslaw [1 ]
Staron, Miroslaw [2 ]
机构
[1] Poznan Univ Tech, Inst Comp Sci, Poznan, Poland
[2] Univ Gothenburg, Chalmers Univ Technol, IT Fac, Gothenburg, Sweden
关键词
code reviews; continous integration; BERT; machine learning; INTEGRATION;
D O I
10.37190/e-Inf250102
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Background: Modern Code Reviews (MCR) are frequently adopted when assuring code and design quality in continuous integration and deployment projects. Although tiresome, they serve a secondary purpose of learning about the software product. Aim: Our objective is to design and evaluate a support tool to help software developers focus on the most important code fragments to review and provide them with suggestions on what should be reviewed in this code. Method: We used design science research to develop and evaluate a tool for automating code reviews by providing recommendations for code reviewers. The tool is based on Transformer-based machine learning models for natural language processing, applied to both programming language code (patch content) and the review comments. We evaluate both the ability of the language model to match similar lines and the ability to correctly indicate the nature of the potential problems encoded in a set of categories. We evaluated the tool on two open-source projects and one industry project. Results: The proposed tool was able to correctly annotate (only true positives) 35%-41% and partially correctly annotate 76%-84% of code fragments to be reviewed with labels corresponding to different aspects of code the reviewer should focus on. Conclusion: By comparing our study to similar solutions, we conclude that indicating lines to be reviewed and suggesting the nature of the potential problems in the code allows us to achieve higher accuracy than suggesting entire changes in the code considered in other studies. Also, we have found that the differences depend more on the consistency of commenting rather than on the ability of the model to find similar lines.
引用
收藏
页数:36
相关论文
共 50 条
  • [1] GitSchemas: A Dataset for Automating Relational Data Preparation Tasks
    Doehmen, Till
    Hulsebos, Madelon
    Beecks, Christian
    Schelter, Sebastian
    2022 IEEE 38TH INTERNATIONAL CONFERENCE ON DATA ENGINEERING WORKSHOPS (ICDEW 2022), 2022, : 74 - 78
  • [2] Using Machine Learning to Identify Code Fragments for Manual Review
    Staron, Miroslaw
    Ochodek, Miroslaw
    Meding, Wilhelm
    Soder, Ola
    2020 46TH EUROMICRO CONFERENCE ON SOFTWARE ENGINEERING AND ADVANCED APPLICATIONS (SEAA 2020), 2020, : 513 - 516
  • [3] Qualitative and quantitative approach to assess of the potential for automating administrative tasks in general practice
    Willis, Matthew
    Duckworth, Paul
    Coulter, Angela
    Meyer, Eric T.
    Osborne, Michael
    BMJ OPEN, 2020, 10 (06): : e032412
  • [4] Automated Code Review Comment Classification to Improve Modern Code Reviews
    Ochodek, Miroslaw
    Staron, Miroslaw
    Meding, Wilhelm
    Soder, Ola
    SOFTWARE QUALITY: THE NEXT BIG THING IN SOFTWARE ENGINEERING AND QUALITY, SWQD 2022, 2022, 439 : 23 - 40
  • [5] The use of artificial intelligence for automating or semi-automating biomedical literature analyses: A scoping review
    dos Santos, Alisson Oliveira
    da Silva, Eduardo Sergio
    Couto, Leticia Machado
    Reis, Gustavo Valadares Labanca
    Belo, Vinicius Silva
    JOURNAL OF BIOMEDICAL INFORMATICS, 2023, 142
  • [6] Learning to Predict Code Review Completion Time In Modern Code Review
    Moataz Chouchen
    Ali Ouni
    Jefferson Olongo
    Mohamed Wiem Mkaouer
    Empirical Software Engineering, 2023, 28
  • [7] Exploring the impact of code review factors on the code review comment generation
    Lu, Junyi
    Li, Zhangyi
    Shen, Chenjie
    Yang, Li
    Zuo, Chun
    AUTOMATED SOFTWARE ENGINEERING, 2024, 31 (02)
  • [8] Learning to Predict Code Review Completion Time In Modern Code Review
    Chouchen, Moataz
    Ouni, Ali
    Olongo, Jefferson
    Mkaouer, Mohamed Wiem
    EMPIRICAL SOFTWARE ENGINEERING, 2023, 28 (04)
  • [9] Towards Automating the Initial Screening Phase of a Systematic Review
    Bekhuis, Tanja
    Demner-Fushman, Dina
    MEDINFO 2010, PTS I AND II, 2010, 160 : 146 - 150
  • [10] AI-Assisted Programming Tasks Using Code Embeddings and Transformers
    Kotsiantis, Sotiris
    Verykios, Vassilios
    Tzagarakis, Manolis
    ELECTRONICS, 2024, 13 (04)