Instruction Guide: EV3 - Debugging Techniques

This lesson has two resources.

The primary instructional materials are the "Problem Solving with Programming" sheet from the "Challenges" page in "NXT Video Trainer 2.0" from Carnegie Mellon University's Robotics Academy and the "Debugging" PowerPoint/pdf files from EV3Lessons.

  1. The "Problem Solving with Programming" pdf describes a correct-by-construction or Incremental Design approach to software development where programs are broken down into small pieces which are written and tested individually and then incremental added to a larger program to be tested as a whole.  Bugs are easier to find in the smaller pieces or quickly identified at the interface between two pieces.
  2. The "Debugging" PowerPoint/pdf describes two classes of techniques for running portions of larger programs or inserting audible or visible indicators in an EV3-G program to help identify the location of bugs.

Ensure students can explain the purpose and functionality of each technique.

Have students insert bugs into programs and then exchange programs with other students to practice their debugging skills.