Code smells are any design flaws in the code level which give a harmful effect to the system. In prioritizing the harmful effect of code smells, the current studies heavily use the critical score of that code smell. However, the historical information of these code smells might give a hint to the harmful effect. Therefore, in this thesis we aggregate two important measurements, namely Impact and Activeness, to compute this harmful effect. Impact refers to the maintenance effort that is needed by taking the software complexity and severity as consideration. While, Activeness refers to the change-frequency and types of changes that happened in the past. The aggregation of these measurements result the harmfulness score and level. This thesis also introduces Code Smell Activity Analysis (CoSA) as the implementation of the proposed model. CoSA is a prototype tool that aims to mine, analyze and visualize the harmful effect of a code smell. CoSA is further used to analyze three systems, JHotDraw, Heritrix and ARAMIS. The result indicates that the proposed model has an ability to express developer’s perspective of their code smells. In addition, the proposed model can also be used as the predictor of change-likelihood and refactoring candidates in the future.
Harris Kristano Husien