84.5k views
3 votes
What is the difference between refactoring and reengineering?

1) Refactoring is the process of improving the internal structure of code without changing its external behavior, while reengineering involves making significant changes to the codebase to improve its overall design and functionality.
2) Refactoring is only done for small sections of code, while reengineering is done for entire systems or applications.
3) Refactoring is a quick and simple process, while reengineering is a complex and time-consuming process.
4) Refactoring is primarily focused on improving code readability and maintainability, while reengineering is focused on transforming legacy systems into modern and efficient ones.

1 Answer

4 votes

Final answer:

Refactoring is the process of improving code structure while maintaining external behavior, done for small sections of code. Reengineering involves significant changes to codebase for overall improvement, done for entire systems.

Step-by-step explanation:

Refactoring is the process of improving the internal structure of code without changing its external behavior. It is done for small sections of code with a focus on improving readability and maintainability. On the other hand, reengineering involves making significant changes to the codebase to improve its overall design and functionality. Reengineering is usually done for entire systems or applications, and it aims to transform legacy systems into modern and efficient ones. It is a complex and time-consuming process.

User Cruftex
by
7.4k points