1 \section{Development Plan
}
2 Iteration
1: Create a basic DSL for MarsRover's missions to use available sensors and actuators
4 Iteration
2: Test the DSL and make it works in MarsRover
6 Iteration
3: Create a functionality to use motors for the movement. They are: drive forward, drive backward, stop, turn left, and turn right.
8 Iteration
4: Create a functionality to use right sensor, left sensor, and back ultrasone sensor
10 Iteration
5: Create a functionality to keep the MarsRover in the planet. This will combine the use of the motors for the movement and the most safety critical sensors
12 Iteration
6: Implement a protocol for the communication between two bricks
14 Iteration
7: Implement
color sensor and create a functionality to find lakes by
color
16 Iteration
8: Implement front ultrasone sensor and create a functionality to find rocks
18 Iteration
9: Implement functionality to avoid rocks
20 Iteration
10: Implement measurement motor and create a functionality to measure lakes and rocks
22 Iteration
11: Implement left and right touch sensors. Also, create a functionality to push rocks
24 Iteration
12: Implement a functionality to be able to perform multiple missions in sequence
26 Iteration
13: Implement Gyro sensor and create a functionality to park MarsRover in certain position
28 Iteration
14: Implement a functionality to remember where the lakes are after the MarsRover found them
30 Iteration
15: Implement a functionality to play a sound for the viewer's notification
32 Iteration
16: Implement SLAM functionality and make the MarsRover be able to navigate with the map