Reorganise business logic