Re-Design and Reverse Engineering