Iterative reengineering to compensate for Quick-Fix maintenance