Refactoring DAO structure