Refactor bus interface