In software development, developers frequently apply maintenance activities to the source code that change a few lines by a single commit. A good understanding of the characteristics of such small changes can support quality assurance approaches (e.g., automated program repair), as it is likely that small changes are addressing deficiencies in other changes; thus, understanding the reasons for creating small changes can help understand the types of errors introduced. Eventually, these reasons and the types of errors can be used to enhance quality assurance approaches for improving code quality. While prior studies used code churns to characterize and investigate the small changes, such a definition has a critical limitation. Specifically, it loses the information of changed tokens in a line. For example, this definition fails to distinguish the following two one-line changes: (1) changing a string literal to fix a displayed message and (2) changing a function call and adding a new parameter. These are definitely maintenance activities, but we deduce that researchers and practitioners are interested in supporting the latter change. To address this limitation, in this paper, we define micro commits, a type of small change based on changed tokens. Our goal is to quantify small changes using changed tokens. Changed tokens allow us to identify small changes more precisely. In fact, this token-level definition can distinguish the above example. We investigate defined micro commits in four OSS projects and understand their characteristics as the first empirical study on token-based micro commits. We find that micro commits mainly replace a single name or literal token, and micro commits are more likely used to fix bugs. Additionally, we propose the use of token-based information to support software engineering approaches in which very small changes significantly affect their effectiveness.
Tue 24 JunDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
16:00 - 17:40 | MSR 2Journal First / Ideas, Visions and Reflections / Research Papers / Demonstrations at Cosmos 3C Chair(s): DongGyun Han Royal Holloway, University of London | ||
16:00 10mTalk | Introducing Repository Stability Ideas, Visions and Reflections Giuseppe Destefanis Brunel University of London, Silvia Bartolucci UCL, Daniel Graziotin University of Hohenheim, Rumyana Neykova Brunel University London, Marco Ortu University of Cagliari Pre-print | ||
16:10 20mTalk | Scientific Open-Source Software Is Less Likely To Become Abandoned Than One Might Think! Lessons from Curating a Catalog of Maintained Scientific Software Research Papers Addi Malviya-Thakur The University of Tennessee, Knoxville / Oak Ridge National Laboratory, Reed Milewicz Sandia National Laboratories, Mahmoud Jahanshahi University of Tennessee, Lavinia Francesca Paganini Eindhoven University of Technology, Bogdan Vasilescu Carnegie Mellon University, Audris Mockus University of Tennessee Link to publication DOI | ||
16:30 20mTalk | Who Will Stop Contributing to OSS Projects? Predicting Company Turnover Based on Initial Behavior Research Papers Mian Qin Beijing Institute of Technology, Yuxia Zhang Beijing Institute of Technology, Klaas-Jan Stol Lero; University College Cork; SINTEF Digital , Hui Liu Beijing Institute of Technology DOI | ||
16:50 20mTalk | An empirical study of token-based micro commits Journal First Masanari Kondo Kyushu University, Daniel M. German University of Victoria, Yasutaka Kamei Kyushu University, Naoyasu Ubayashi Waseda University, Osamu Mizuno Kyoto Institute of Technology | ||
17:10 10mTalk | TS-Detector : Detecting Feature Toggle Usage Patterns Demonstrations Md Tajmilur Rahman Gannon University, Mengzhe Fei University of Saskatchewan; Vendasta, Tushar Sharma Dalhousie University, Chanchal K. Roy University of Saskatchewan | ||
17:20 20mTalk | Impact of Request Formats on Effort Estimation: Are LLMs Different than Humans? Research Papers Gül Calikli University of Glasgow, Mohammed Alhamed Applied Behaviour Systems LTD (Hexis), United Kingdom DOI |
Cosmos 3C is the third room in the Cosmos 3 wing.
When facing the main Cosmos Hall, access to the Cosmos 3 wing is on the left, close to the stairs. The area is accessed through a large door with the number “3”, which will stay open during the event.