Write a Blog >>
ICSE 2020
Wed 24 June - Thu 16 July 2020
Wed 8 Jul 2020 16:05 - 16:13 at Baekje - A10-Human Aspects 2 Chair(s): Giuseppe Scanniello

In practice, a popular and coarse-grained approach for recovering from a problematic commit is to revert it (i.e., undoing the change). However, reverted commits could induce some issues for software development, such as impeding the development progress and increasing the difficulty for maintenance. In order to mitigate these issues, we set out to explore the following central question: can we characterize and identify which commits will be reverted? In this paper, we characterize commits using 27 commit features and build an identification model to identify commits that will be reverted. We first identify reverted commits by analyzing commit messages and comparing the changed content, and extract 27 commit features that can be divided into three dimensions, namely change, developer and message, respectively. Then, we build an identification model (e.g., random forest) based on the extracted features. To evaluate the effectiveness of our proposed model, we perform an empirical study on ten open source projects including a total of 125,241 commits. Our experimental results show that our model outperforms two baselines in terms of AUC-ROC and cost-effectiveness (i.e., percentage of detected reverted commits when inspecting 20% of total changed LOC). In terms of the average performance across the ten studied projects, our model achieves an AUC-ROC of 0.756 and a cost-effectiveness of 0.746, significantly improving the baselines by substantial margins. In addition, we found that “developer” is the most discriminative dimension among the three dimensions of features for the identification of reverted commits. However, using all the three dimensions of commit features leads to better performance.

Wed 8 Jul
Times are displayed in time zone: (UTC) Coordinated Universal Time change

icse-2020-paper-presentations
16:05 - 17:05: Paper Presentations - A10-Human Aspects 2 at Baekje
Chair(s): Giuseppe ScannielloUniversity of Basilicata
icse-2020-Journal-First16:05 - 16:13
Talk
Meng YanChongqing University, Xin XiaMonash University, David LoSingapore Management University, Ahmed E. HassanQueen's University, Shanping LiZhejiang University
icse-2020-Journal-First16:13 - 16:21
Talk
Haoxiang ZhangSoftware Analysis and Intelligence Lab (SAIL), Queen’s University, Kingston, Ontario, Canada, Shaowei WangMississippi State University, Tse-Hsun (Peter) ChenConcordia University, Ying ZouQueen's University, Kingston, Ontario, Ahmed E. HassanQueen's University
icse-2020-Journal-First16:21 - 16:29
Talk
Fiorella ZampettiUniversity of Sannio, Carmine VassalloUniversity of Zurich, Sebastiano PanichellaZurich University of Applied Sciences, Gerardo CanforaUniversity of Sannio, Harald GallUniversity of Zurich, Massimiliano Di PentaUniversity of Sannio
Link to publication DOI Pre-print
icse-2020-Journal-First16:29 - 16:37
Talk
Luis CruzDeflt University of Technology, Rui AbreuInstituto Superior Técnico, U. Lisboa & INESC-ID, David LoSingapore Management University
DOI Pre-print Media Attached
icse-2020-papers16:37 - 16:49
Talk
Davide SpadiniDelft University of Technology, Netherlands, Gul CalikliChalmers | University of Gothenburg, Alberto BacchelliUniversity of Zurich
DOI Pre-print Media Attached