Refactoring summarized till design pattern