Refactoring and Structing of application components