He who rejects change is the architect of decay. The only human institution which rejects progress is the cemetery.
Developers continuously modify, enhance, and adapt software to new requirements and execution environments. The software evolves with time, and, most likely, it deviates from its intended design. As the software further evolves and strays too far away from its original design, three important things happen to the software:
The difficulty in understanding the software is due to the:
Therefore, there is a need to decrease the complexity of software by improving its internal quality. The internal quality of software is improved by means of restructuring the software. If restructuring is performed on an object-oriented software, then it is called refactoring . Software should be continually restructured during and between other maintenance ...