volume_mute

Reengineering vs. Refactoring - Key Difference

publish date2026/06/24 21:27:39.016083 UTC

volume_mute

Match each statement to whether it describes reengineering or refactoring.

drag and drop the selected option to the right place

Correct Answer

(1) Takes place after a system has been maintained for some time and maintenance costs are increasing,Reengineering
(2) Is a continuous process of improvement throughout development and evolution,Refactoring
(3) Uses automated tools to process a legacy system and create a new, more maintainable version,Reengineering
(4) Is intended to avoid the structure and code degradation that increases maintenance difficulty,Refactoring

Explanation

Although reengineering and refactoring both aim to make software easier to understand and change, they differ: reengineering happens after maintenance costs have already become significant and uses automated tools on a legacy system; refactoring is a continuous, ongoing process throughout development and evolution intended to prevent degradation in the first place.

Reference

Software Engineering, Ian Sommerville, 10th edition


Quizzes you can take where this question appears