Legacy Application Refactoring