Abstract
The effect of reengineering on software maintainability was investigated in a laboratory experiment conducted within the METKIT research project of the European ESPRIT program for the study and promotion of the use of metrics in software engineering. The experiment was conducted as a case study in measuring software complexity and maintainability. However, the results also serve to assess the benefits of reengineering old programs. Maintainability is defined as the effort required to perform maintenance tasks, the impact domain of the maintenance actions, and the error rate caused by those actions. Complexity is defined as a combination of code, data, data flow, structure, and control flow metrics. The data collected demonstrate that reengineering can decrease complexity and increase maintainability, but that restructuring has only a minor effect on maintainability.

This publication has 5 references indexed in Scilit: