Causal or Correlational? A Cohort Study on the Effects of Code Smells on Class Change- and Fault-Proneness
Code smells are suboptimal design choices in source code that are conjectured to hinder software maintainability. Previous research has studied the impact of code smells on class change- and fault- proneness, yet, as in most mining studies, it has been limited to highlighting correlations rather than detecting causal relationships. This paper instantiates the cohort study design to software repository studies and presents a cohort study aimed at assessing whether code smells cause an increase or decrease in class change- and fault-proneness. By reusing data from the work of Khomh et al. [42 ] within a cohort study design, we investigate the causal effect of eleven types of code smells on class change- and fault-proneness. Our results show that, overall, the presence of code smells appears to be causing a significant increase in change-proneness, while, with few exceptions, fault-proneness appears unaffected. This work reinforces the principle that correlation does not imply causation: we partially confirmed some previous results on the effects of code smells, while challenging others. It also lays the groundwork for applying cohort study designs to other software properties and relationships previously studied using observational data.
Fri 17 AprDisplayed time zone: Brasilia, Distrito Federal, Brazil change
14:00 - 15:30 | Analytics 4Research Track / Journal-first Papers at Oceania I Chair(s): Diomidis Spinellis AUEB & TU Delft | ||
14:00 15mTalk | Back to the Roots: Assessing Mining Techniques for Java Vulnerability-Contributing Commits Journal-first Papers Torge Hinrichs Hamburg University of Technology, Emanuele Iannone Hamburg University of Technology, Tamás Aladics University of Szeged, Peter Hegedus University of Szeged, Andrea De Lucia University of Salerno, Fabio Palomba University of Salerno, Riccardo Scandariato Hamburg University of Technology | ||
14:15 15mTalk | Predicting the Understandability of Computational Notebooks through Code Metrics Analysis Journal-first Papers Mojtaba Mostafavi Sharif University of Technology, Alireza Asadi Department of Computer Engineering of Sharif University of Technology, Arash Asgari York University, Bardia Mohammadi Sharif University of Technology, Abbas Heydarnoori Bowling Green State University Link to publication DOI Media Attached | ||
14:30 15mTalk | How Configurable is the Linux Kernel? Analyzing Two Decades of Feature-Model History Journal-first Papers Elias Kuiter University of Magdeburg, Chico Sundermann TU Braunschweig, Thomas Thüm TU Braunschweig, Tobias Heß University of Ulm, Sebastian Krieter TU Braunschweig, Germany, Gunter Saake University of Magdeburg, Germany Pre-print | ||
14:45 15mTalk | Breaking Strong Encapsulation: A Comprehensive Study of Java Module Abuse Research Track Yirui He University of California, Irvine, Yongbo Chen University of California, Irvine, Jessy Ayala University of California, Irvine, Yecheng Zhou University of California, Irvine, Qiran Wang University of California, Irvine, Joshua Garcia University of California, Irvine | ||
15:00 15mTalk | Causal or Correlational? A Cohort Study on the Effects of Code Smells on Class Change- and Fault-Proneness Research Track Sabato Nocera University of Salerno, Sira Vegas Universidad Politecnica de Madrid, Giuseppe Scanniello University of Salerno, Massimiliano Di Penta University of Sannio, Italy, Natalia Juristo Universidad Politecnica de Madrid Pre-print | ||
15:15 15mTalk | Six Million (Suspected) Fake Stars on GitHub: A Growing Spiral of Popularity Contests, Spams, and Malware Research Track Hao He Carnegie Mellon University, Haoqin Yang Carnegie Mellon University, Philipp Burckhardt Socket, Inc, Alexandros Kapravelos NCSU, Bogdan Vasilescu Carnegie Mellon University, Christian Kästner Carnegie Mellon University | ||