Skip to main content
CISTI'2017 - 12ª Conferência Ibérica de Sistemas e Tecnologias de Informação

Full Program »

Code Smells Detection 2.0: Crowdsmelling and Visualization

Background: Code smells have long been catalogued with corresponding mitigating solutions called refactoring operations. However, while the latter are supported in current IDEs (e.g., Eclipse), code smells detection scaffolding has still many limitations. Code smells visualization features are important to increase software quality awareness, namely in large projects, where maintainability is often the dominating issue.
Research problems: Researchers have pointed out that the code smells detection process is inherently subjective and this fact is probably the main hindrance on providing automatic support. Regarding code smells visualization, we need to build customized views because very different code smells scopes exist. Choosing the right visualization for each code smell is still an open research topic.
Expected contributions: This research work focuses on the code smells detection and awareness process. To this end, it aims at proposing two symbiotic contributions: crowdsmellling 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 builds 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 facilitate refactoring decisions upon large software systems.
Methodology: We will start this research by conducting two systematic reviews, one on the code smells detection techniques discussed in the literature, and another on the visualization techniques for code smells, design anti-patterns and other manifestations of software hazards. Based upon the review conclusions, we will try to improve the state of the art by using new explanatory variables obtained upon a target language metamodel. An estimation algorithm will be produced per each code smell and it will be cross-calibrated with the help of other detection tools and field trials with a moderately large group of graduate students. Both the estimation algorithms and the code smells views (smelly maps) will be embedded in an Eclipse plugin, whose lifecycle, from conception through validation will follow the guidelines of the Design Science Research methodology, which is particularly suitable for this kind of prototype-based research. Last, but not the least, we have laid out several evidence-based validation experiments, which will hopefully demonstrate that a step forward in the code smelling process will be achieved.


José Pereira dos Reis    
Instituto Universitário de Lisboa (ISCTE-IUL)

Fernando Brito e Abreu    
Instituto Universitário de Lisboa (ISCTE-IUL)

Glauco de F. Carneiro    


Powered by OpenConf®
Copyright ©2002-2016 Zakon Group LLC