作者
Rubén Saborido, Javier Ferrer, Francisco Chicano
发表日期
2022/6/22
期刊
International Summer School on Search-and Machine Learning-based Software Engineering (SMILESENG)
页码范围
49
简介
As software increases in complexity, developers spend more time fixing bugs or making code work rather than designing or writing new code. Thus, improving software understandability and maintainability would translate into an economic relief over the total cost of a project. However, reducing the complexity of a piece of code is not straightforward. Recently, we modeled software cognitive complexity reduction as an optimization problem and we proposed an approach to assist developers on this task. This approach enumerates sequences of Extract Method refactoring operations until a stopping criterion is met. As result, it returns the minimal sequence of Extract Method refactoring operations found that is able to reduce the cognitive complexity of a method to the given threshold. We evaluated our approach over 10 open-source software projects and was able to fix 78% of the 1,050 existing cognitive complexity issues reported by SonarQube. However, we uncover some limitations and interesting open questions that need further discussion and future work.
学术搜索中的文章
R Saborido, J Ferrer, F Chicano - International Summer School on Search-and Machine …, 2022