refactor BoardView