Write a Blog >>
ICPC 2021
Tue 18 - Thu 20 May 2021
co-located with ICSE 2021
Thu 20 May 2021 11:00 - 11:10 at ICPC Main Room - Mining for Program Comprehension Chair(s): Chaiyong Rakhitwetsagul

Modern software systems, such as Spark, are usually written in multiple programming languages (PLs). Besides benefiting from code reuse, such systems can also take advantages of specific PLs to implement certain features, to meet various quality needs, and to improve development efficiency. In this context, a change to such systems may need to modify source files written in different PLs. We define a multi-programming-language commit (MPLC) in a version control system (e.g., Git) as a commit that involves modified source files written in two or more PLs. To our knowledge, the phenomenon of MPLCs in software development has not been explored yet. In light of the potential impact of MPLCs on development difficulty and software quality, we performed an empirical study to understand the state of MPLCs, their change complexity, as well as their impact on open time of issues and bug proneness of source files in real-life software projects. By exploring the MPLCs in 20 non-trivial Apache projects with 205,994 commits, we obtained the following findings: (1) 9% of the commits from all the projects are MPLCs, and the proportion of MPLCs in 80% of the projects goes to a relatively stable level; (2) more than 90% of the MPLCs from all the projects involve source files written in two PLs; (3) the change complexity of MPLCs is significantly higher than that of non-MPLCs in all projects; (4) issues fixed in MPLCs take significantly longer to be resolved than issues fixed in non-MPLCs in 80% of the projects; and (5) source files that have been modified in MPLCs tend to be more bug-prone than source files that have never been modified in MPLCs. These findings provide practitioners with useful insights on the architecture design and quality management of software systems written in multiple PLs.

Conference Day
Thu 20 May

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

10:50 - 11:30
Mining for Program ComprehensionResearch at ICPC Main Room
Chair(s): Chaiyong RakhitwetsagulMahidol University, Thailand
10:50
10m
Paper
Characterization and Prediction of Questions without Accepted Answers on Stack Overflow
Research
Mohamad Yazdaninia, David LoSingapore Management University, Ashkan SamiShiraz University
Pre-print
11:00
10m
Paper
Multi-Programming-Language Commits in OSS: An Empirical Study on Apache Projects
Research
Zengyang LiCentral China Normal University, Xiaoxiao Qi, Qinyi Yu, Peng LiangWuhan University, Ran MoDrexel University, Chen YangIBO Technology Co., Ltd
Pre-print Media Attached
11:10
10m
Paper
Code Authors Hidden in File Revision Histories: An Empirical Study
Research
Siyi Gong, Hao ZhongShanghai Jiao Tong University
11:20
10m
Paper
Predicting Crash Fault Residence via Simplified Deep Forest Based on A Reduced Feature Set
Research
Kunsong ZhaoWuhan University, Jin LiuWuhan University, Zhou XuChongqing University, China, Li LiMonash University, Meng YanChongqing University, Jiaojiao YuWuhan University, China, Yuxuan ZhouSyracuse University, USA
Pre-print

Information for Participants
Thu 20 May 2021 10:50 - 11:30 at ICPC Main Room - Mining for Program Comprehension Chair(s): Chaiyong Rakhitwetsagul
Info for room ICPC Main Room:

Go directly to this room on Clowdr