Gardening Your Architecture, Part 2: Reengineering and Rewriting

Frank Buschmann · IEEE Software · 2011

Reengineering and rewriting are two common approaches for improving system quality-in addition to refactoring, which the last installment of this column explored. Reengineering is a systematic approach to evolve existing software to exhibit new behavior, features, and operational quality. Refactoring and reengineering aren't the same, and they're also different from rewriting-the most radical change-which involves wiping the slate clean and starting over.

Read the paper · More papers on PaperTik