Write a Blog >>
ICSE 2021
Mon 17 May - Sat 5 June 2021

Code reading is one of the most frequent activities in software mainte- nance. Such an activity aims at acquiring information from the code and, thus, it is a prerequisite for program comprehension: developers need to read the source code they are going to modify before implementing changes. As the code changes, so does its readability; however, it is not clear yet how code readability changes during software evolution. To understand how code readability changes when software evolves, we studied the history of 25 open source systems. We modeled code readability evolution by defining four states in which a file can be at a certain point of time (non-existing, other-name, readable, and unreadable). We used the data gathered to infer the probability of transitioning from one state to another one. In addition, we also manually checked a significant sample of transitions to compute the performance of the state-of-the-art readability prediction model we used to calculate the transition probabilities. With this manual analysis, we found that the tool correctly classifies all the transitions in the majority of the cases, even if there is a loss of accuracy compared to the single-version readability estimation. Our results show that most of the source code files are created readable. Moreover, we observed that only a minority of the commits change the readability state. Finally, we manually carried out qualitative analysis to understand what makes code unreadable and what developers do to prevent this. Using our results we propose some guidelines (i) to reduce the risk of code readability erosion and (ii) to promote best practices that make code readable.

Fri 28 May

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

15:05 - 16:05
4.3.3. Code Review: Readability and RefactoringSEIP - Software Engineering in Practice / Journal-First Papers at Blended Sessions Room 3 +12h
Chair(s): Francisco Servant Virginia Tech
15:05
20m
Paper
The Effectiveness of Supervised Machine Learning Algorithms in Predicting Software RefactoringJournal-First
Journal-First Papers
Maurício Aniche Delft University of Technology, Erick Maziero Federal University of Lavras, Rafael S. Durelli Federal University of Lavras Lavras, Vinicius Durelli Universidade Federal de São João del-Rei
Pre-print Media Attached
15:25
20m
Paper
How Does Code Readability Change During Software Evolution?Journal-First
Journal-First Papers
Valentina Piantadosi University of Molise, Fabiana Fierro University of Molise, Simone Scalabrino University of Molise, Alexander Serebrenik Eindhoven University of Technology, Rocco Oliveto University of Molise
Link to publication DOI Pre-print Media Attached
15:45
20m
Paper
Refactoring Practices in the Context of Modern Code Review: An Industrial Case Study at XeroxSEIP
SEIP - Software Engineering in Practice
Eman Abdullah AlOmar Rochester Institute of Technology, USA, Hussein Alrubaye Xerox Corporation, Mohamed Wiem Mkaouer Rochester Institute of Technology, Ali Ouni ETS Montreal, University of Quebec, Marouane Kessentini University of Michigan
Link to publication DOI Authorizer link Pre-print Media Attached

Sat 29 May

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

03:05 - 04:05
4.3.3. Code Review: Readability and RefactoringJournal-First Papers / SEIP - Software Engineering in Practice at Blended Sessions Room 3
03:05
20m
Paper
The Effectiveness of Supervised Machine Learning Algorithms in Predicting Software RefactoringJournal-First
Journal-First Papers
Maurício Aniche Delft University of Technology, Erick Maziero Federal University of Lavras, Rafael S. Durelli Federal University of Lavras Lavras, Vinicius Durelli Universidade Federal de São João del-Rei
Pre-print Media Attached
03:25
20m
Paper
How Does Code Readability Change During Software Evolution?Journal-First
Journal-First Papers
Valentina Piantadosi University of Molise, Fabiana Fierro University of Molise, Simone Scalabrino University of Molise, Alexander Serebrenik Eindhoven University of Technology, Rocco Oliveto University of Molise
Link to publication DOI Pre-print Media Attached
03:45
20m
Paper
Refactoring Practices in the Context of Modern Code Review: An Industrial Case Study at XeroxSEIP
SEIP - Software Engineering in Practice
Eman Abdullah AlOmar Rochester Institute of Technology, USA, Hussein Alrubaye Xerox Corporation, Mohamed Wiem Mkaouer Rochester Institute of Technology, Ali Ouni ETS Montreal, University of Quebec, Marouane Kessentini University of Michigan
Link to publication DOI Authorizer link Pre-print Media Attached