Code smells detection 2.0: Crowdsmelling and visualization - Reis, J. P.; Abreu, F. B.; Carneiro, G. F. (2017 12th Iberian Conference on Information Systems and Technologies (CISTI), 2017)
Background: Code smells have long been catalogued with corresponding mitigating solutions called refactoring operations. However, while the latter are supported in several IDEs, code smells detection scaffolding still has many limitations. Another aspect deserving attention is code smells visualization, to increase software quality awareness, namely in large projects, where maintainability is often the dominating issue. Research problems: Researchers have pointed out that code smells detection is inherently a subjective process and that is probably the main hindrance on providing automatic support. Regarding visualization, customized views are required, because each code smell type may have a different scope. Choosing the right visualization for each code smell type is an open research topic. Expected contributions: This research work focuses on the code smells detection and awareness process, by proposing two symbiotic contributions: crowdsmelling and smelly maps. We envisage that such features will be available in a future generation of interactive development environments (aka IDE 2.0). Crowdsmelling uses the concept of collective intelligence through which programmers around the world will collaboratively contribute to the calibration of code smells detection algorithms (one per each code smell), hopefully improving the detection accuracy and mitigating the subjectivity problem. Smelly maps build upon the aforementioned code smells detection capability and on the previous experience at UNIFACS of setting up a software visualization infrastructure. We expect to represent detected code smells at different abstraction levels with the goal of increasing software quality awareness and facilitating refactoring decisions upon large software systems.