TY - GEN
T1 - On the Investigation of Exception Pull Request Characteristics
T2 - 24th IEEE International Conference on Source Code Analysis and Manipulation, SCAM 2024
AU - Correia, Joao
AU - Coutinho, Daniel
AU - Garcia, Alessandro
AU - De Mello, Rafael
AU - Barbosa, Caio
AU - Oliveira, Anderson
AU - Assuncao, Wesley K.G.
AU - Pereira, Juliana Alves
AU - Steinmacher, Igor
AU - Gerosa, Marco
AU - Souza, Jairo
AU - Arriel, Johny
N1 - Publisher Copyright:
© 2024 IEEE.
PY - 2024
Y1 - 2024
N2 - Robustness is critical for ensuring that software functions correctly under adverse conditions. Exception-handling mechanisms in programming languages enable developers to deal with these adverse conditions. However, implementing exception-related code can present significant challenges to developers. We investigated exception-related code contributions across Java projects in the Apache ecosystem. We analyzed exception-related pull requests (exception-PRs), which were detected using a validated heuristic. We produced a comprehensive dataset of 988 exception-PRs. We observed no statistically significant differences in complexity metrics between exception-PRs and non-exception-PRs. We also found no significant differences in developers' behavior metrics, indicating consistent engagement regardless of whether the pull request addressed exception-related code. A manual analysis revealed that most exception-PRs focused on system improvements rather than bug fixes, suggesting proactive efforts to enhance software robustness. Moreover, the most frequently addressed aspects of exceptional code in these exception-PRs were: (i) the external representation of adverse situations to end-users (more than 40% of the PRs) and (ii) the implementation of effective error-handling actions (nearly 35% of the PRs) to promote program recoverability. Interestingly, a significant proportion of exception-PRs simultaneously addressed multiple aspects. By understanding the nature and characteristics of exception-PRs, we expect to better support developers in managing erroneous conditions and improving software robustness.
AB - Robustness is critical for ensuring that software functions correctly under adverse conditions. Exception-handling mechanisms in programming languages enable developers to deal with these adverse conditions. However, implementing exception-related code can present significant challenges to developers. We investigated exception-related code contributions across Java projects in the Apache ecosystem. We analyzed exception-related pull requests (exception-PRs), which were detected using a validated heuristic. We produced a comprehensive dataset of 988 exception-PRs. We observed no statistically significant differences in complexity metrics between exception-PRs and non-exception-PRs. We also found no significant differences in developers' behavior metrics, indicating consistent engagement regardless of whether the pull request addressed exception-related code. A manual analysis revealed that most exception-PRs focused on system improvements rather than bug fixes, suggesting proactive efforts to enhance software robustness. Moreover, the most frequently addressed aspects of exceptional code in these exception-PRs were: (i) the external representation of adverse situations to end-users (more than 40% of the PRs) and (ii) the implementation of effective error-handling actions (nearly 35% of the PRs) to promote program recoverability. Interestingly, a significant proportion of exception-PRs simultaneously addressed multiple aspects. By understanding the nature and characteristics of exception-PRs, we expect to better support developers in managing erroneous conditions and improving software robustness.
KW - evolution
KW - exception handling
KW - exceptions
KW - maintenance
KW - software robustness
UR - http://www.scopus.com/inward/record.url?scp=85215278187&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85215278187&partnerID=8YFLogxK
U2 - 10.1109/SCAM63643.2024.00023
DO - 10.1109/SCAM63643.2024.00023
M3 - Conference contribution
AN - SCOPUS:85215278187
T3 - Proceedings - 2024 IEEE International Conference on Source Code Analysis and Manipulation, SCAM 2024
SP - 143
EP - 153
BT - Proceedings - 2024 IEEE International Conference on Source Code Analysis and Manipulation, SCAM 2024
PB - Institute of Electrical and Electronics Engineers Inc.
Y2 - 7 October 2024 through 8 October 2024
ER -