Maintaining Traceability During Object-Oriented Software Evolution