... | ... | @@ -54,3 +54,35 @@ In addition, TD New code, presents the technical debt issues introduced on new m |
|
|
Refactorings Panel consists of Code Refactorings, Design Refactorings and Architecture Refactorings.
|
|
|
|
|
|
![DT-8](uploads/technical-debt/RefactoringsPanel.png)
|
|
|
|
|
|
# Code Refactorings Page
|
|
|
|
|
|
Suppose that the user selects the "Code Refactorings" option from the drop-down list of Refactorings. Code Refactorings suggests
|
|
|
refactorings based on source code that introduce code smells. The figure below, presents a example of this type of refactorings. The rules are ranked based on
|
|
|
the urgency to be solved. We can also see the probability of this rule to occure and the probability change.
|
|
|
|
|
|
![DT-9](uploads/technical-debt/CodeRefactorings1.png)
|
|
|
|
|
|
if you click on a rule, a new window opens with a brief decription of the rule and examples of how to solve this code smell.
|
|
|
|
|
|
![DT-10](uploads/technical-debt/CodeRefactorings2.png)
|
|
|
|
|
|
Last, in the new window, the user can see the files that violate this rule, the line of the violation and the effort in minutes that need to be solved.
|
|
|
An example of this, it is shown on the figure below.
|
|
|
|
|
|
![DT-11](uploads/technical-debt/CodeRefactorings3.png)
|
|
|
|
|
|
# Design Refactorings Page
|
|
|
|
|
|
Suppose that the user selects the "Design Refactorings" option from the drop-down list of Refactorings. Design Refactorings suggests two type of refactorings,
|
|
|
Extract Method Opportunities and Move Class Refactorings. In the figure below, presents a example of Extract Method Opportunities for 'Neurasmus' project.
|
|
|
Extract Method Opportunities tries to solve the long method code smell. The box size shows the lines of code the method has and the color density the cohesion
|
|
|
benefit from the suggested refactoring.
|
|
|
|
|
|
![DT-12](uploads/technical-debt/DesignRefactorings1.png)
|
|
|
|
|
|
Move Class Refactorings suggests and different code structure that improves cohesion and coupling in project level. An example of this type of refactoring
|
|
|
is shown on the picture below.
|
|
|
|
|
|
![DT-13](uploads/technical-debt/DesignRefactorings2.png)
|
|
|
|