Please use this identifier to cite or link to this item: https://hdl.handle.net/10316/96841
Title: Unveiling process insights from refactoring practices
Authors: Caldeira, João
Abreu, Fernando Brito e
Cardoso, Jorge 
Reis, José
Keywords: Computer Science - Software Engineering
Issue Date: 29-Oct-2020
Project: UIDB/04466/2020 
UIDP/04466/2020 
Serial title, monograph or event: Computer Standards and Interfaces
Volume: 81
Abstract: Context : Software comprehension and maintenance activities, such as refactoring, are said to be negatively impacted by software complexity. The methods used to measure software product and processes complexity have been thoroughly debated in the literature. However, the discernment about the possible links between these two dimensions, particularly on the benefits of using the process perspective, has a long journey ahead. Objective: To improve the understanding of the liaison of developers' activities and software complexity within a refactoring task, namely by evaluating if process metrics gathered from the IDE, using process mining methods and tools, are suitable to accurately classify different refactoring practices and the resulting software complexity. Method: We mined source code metrics from a software product after a quality improvement task was given in parallel to (117) software developers, organized in (71) teams. Simultaneously, we collected events from their IDE work sessions (320) and used process mining to model their processes and extract the correspondent metrics. Results: Most teams using a plugin for refactoring (JDeodorant) reduced software complexity more effectively and with simpler processes than the ones that performed refactoring using only Eclipse native features. We were able to find moderate correlations (43%) between software cyclomatic complexity and process cyclomatic complexity. The best models found for the refactoring method and cyclomatic complexity level predictions, had an accuracy of 92.95% and 94.36%, respectively. Conclusions: Our approach agnostic to programming languages, geographic location, or development practices. Initial findings are encouraging, and lead us to suggest practitioners may use our method in other development tasks, such as, defect analysis and unit or integration tests.
URI: https://hdl.handle.net/10316/96841
ISSN: 09205489
DOI: 10.1016/j.csi.2021.103587
Rights: openAccess
Appears in Collections:I&D CISUC - Artigos em Revistas Internacionais

Files in This Item:
File Description SizeFormat
2010.15692.pdf1.02 MBAdobe PDFView/Open
Show full item record

SCOPUSTM   
Citations

3
checked on Apr 22, 2024

WEB OF SCIENCETM
Citations

1
checked on Apr 2, 2024

Page view(s)

114
checked on Apr 23, 2024

Download(s)

153
checked on Apr 23, 2024

Google ScholarTM

Check

Altmetric

Altmetric


This item is licensed under a Creative Commons License Creative Commons