Design Refactor