An empirical study on self-admitted technical debt in modern code review

被引:12
|
作者
Kashiwa, Yutaro [1 ]
Nishikawa, Ryoma [1 ]
Kamei, Yasutaka [1 ]
Kondo, Masanari [1 ]
Shihab, Emad [2 ]
Sato, Ryosuke [3 ]
Ubayashi, Naoyasu [1 ]
机构
[1] Kyushu Univ, Fukuoka, Japan
[2] Concordia Univ, Montreal, PQ, Canada
[3] Univ Tokyo, Tokyo, Japan
关键词
Self-admitted technical debt; Modern code reviews;
D O I
10.1016/j.infsof.2022.106855
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Technical debt is a sub-optimal state of development in projects. In particular, the type of technical debt incurred by developers themselves (e.g., comments that mean the implementation is imperfect and should be replaced with another implementation) is called self-admitted technical debt (SATD). In theory, technical debt should not be left for a long period because it accumulates more cost over time, making it more difficult to process. Accordingly, developers have traditionally conducted code reviews to find technical debt. In fact, we observe that many SATD comments are often introduced during modern code reviews (MCR) that are light-weight reviews with web applications. However, it is uncertain about the nature of SATD comments that are introduced in the review process: impact, frequency, characteristics, and triggers. Herein, this study empirically examines the relationship between SATD and MCR.Our case study of 156,372 review records from the Qt and OpenStack systems shows that (i) review records involving SATD are about 6%-7% less likely to be accepted by reviews than those without SATD; (ii) review records involving SATD tend to require two to three more revisions compared with those without SATD; (iii) 28-48% of SATD comments are introduced during code reviews; (iv) SATD during reviews works for communicating between authors and reviewers; and (v) 20% of the SATD comments are introduced due to reviewers' requests.
引用
收藏
页数:14
相关论文
共 50 条
  • [1] An empirical study on self-admitted technical debt in Dockerfiles
    Azuma, Hideaki
    Matsumoto, Shinsuke
    Kamei, Yasutaka
    Kusumoto, Shinji
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2022, 27 (02)
  • [2] An Empirical Study On the Removal of Self-Admitted Technical Debt
    Maldonado, Everton da S.
    Abdalkareem, Rabe
    Shihab, Emad
    Serebrenik, Alexander
    [J]. 2017 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME), 2017, : 238 - 248
  • [3] An empirical study on self-admitted technical debt in Dockerfiles
    Hideaki Azuma
    Shinsuke Matsumoto
    Yasutaka Kamei
    Shinji Kusumoto
    [J]. Empirical Software Engineering, 2022, 27
  • [4] Self-Admitted Technical Debt and comments' polarity: an empirical study
    Cassee, Nathan
    Zampetti, Fiorella
    Novielli, Nicole
    Serebrenik, Alexander
    Di Penta, Massimiliano
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2022, 27 (06)
  • [5] Self-Admitted Technical Debt and comments’ polarity: an empirical study
    Nathan Cassee
    Fiorella Zampetti
    Nicole Novielli
    Alexander Serebrenik
    Massimiliano Di Penta
    [J]. Empirical Software Engineering, 2022, 27
  • [6] A Large-Scale Empirical Study on Self-Admitted Technical Debt
    Bavota, Gabriele
    Russo, Barbara
    [J]. 13TH WORKING CONFERENCE ON MINING SOFTWARE REPOSITORIES (MSR 2016), 2016, : 315 - 326
  • [7] An Exploratory Study on Self-Admitted Technical Debt
    Potdar, Aniket
    Shihab, Emad
    [J]. 2014 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME), 2014, : 91 - 100
  • [8] A survey of self-admitted technical debt
    Sierra, Giancarlo
    Shihab, Emad
    Kamei, Yasutaka
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2019, 152 : 70 - 82
  • [9] FIXME: synchronize with database! An empirical study of data access self-admitted technical debt
    Biruk Asmare Muse
    Csaba Nagy
    Anthony Cleve
    Foutse Khomh
    Giuliano Antoniol
    [J]. Empirical Software Engineering, 2022, 27
  • [10] FIXME: synchronize with database! An empirical study of data access self-admitted technical debt
    Muse, Biruk Asmare
    Nagy, Csaba
    Cleve, Anthony
    Khomh, Foutse
    Antoniol, Giuliano
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2022, 27 (06)