Refactoring big balls of mud

Paul Adamczyk, Arturo Zambrano, Federico Balaguer · 2009

This experience report describes a redesign of a large commercial system. The goal of the redesign was to break up the system into two parts without changing its external behavior. Such a task is essentially a refactoring. We describe our redesign process as steps of a refactoring called extract subsystem to a separate process. We believe that documenting large-scale refactorings is important, and necessary to make redesigning software easier.

Read the paper · More papers on PaperTik