Refactoring is a technique that is very amenable to tool support.
The classic Refactoring tool is the RefactoringBrowser for the SmalltalkLanguage.
There are also several efforts to build a RefactoringBrowserForJava and another one for Python (named BicycleRepairMan).