Refactoring and Incorporate JavaDoc