The design approach I took for this challenge was as follows: 1. After reading over the challenge I created the following classes; a. Rover i. The Rover class is responsible for maintaining the RoverÕs position and direction. ii. Also accepts the command string and moves the Rover b. Plateau i. The Plateau class represents the surface of Mars and its boundaries for the Rover to move around. c. Coordinates i. The Coordinates class represents the x-axis and the y-axis. d. FileIO i. The FileIO class is responsible for reading the file as well as writing the results to a new file. Assumptions: 1. Since the requirements did not mention what to do when the rover reaches the boundary, I decided to stop the rover from going beyond the boundary. a. Example: i. If the boundary is set at 5,5 ii. The Rover is sitting at 5,5 iii. The Rover is instructed to move North or East it will NOT move. Instructions to Run: 1. Open Code/APP_RUN.rb Instructions to Run Rspec: 1. Open Spec/rover_spec.rb