Aplikace se vyvíjejí často překotně, pak je třeba "předělávat".
Refaktoring je právě takové "předělávání":
přepis beze změny (vnějšího) chování/rozhraní
směřuje ke zpřehlednění,
optimalizaci,
lepší rozšiřitelnosti
robustnosti atd.