Using Debugging with Wonder Workshop's Dash Robot

ACP Lesson Plan

Title: Using Debugging with Wonder Workshop's Dash RobotAuthor: Becky Wilcox
Subject(s):
* Technology
* Computer Science
* Language Arts
* Character Development
Grade Level(s): Kindergarten or 1st GradeTotal Time: One 30-minute class period

Overview / Description: Much like workers in any assembly line have to try to find the problem (bug) in a specific part of the assembly line so that it can be fixed (debugged) and the process can run smoothly again, students will find the bug in a starting series of steps (algorithm) and do what is needed to debug the algorithm to come up with the desired end result.  This lesson will be used in conjunction with Code.org's Course 1 Curriculum - https://studio.code.org/s/course1.  During the class period after completing Lesson 5 - Maze: Debugging, students will use Wonder Workshop's Dash robots in groups to create and debug their Dash robot from one place to another in a preassigned part of the classroom using the Blockly app on their iPads.

Learning goals/objectives:
1. Predict where an algorithm/program will fail
2. Modify an existing algorithm/program to solve errors
3. Identify an algorithm/program that is unsuccessful when the steps are out of order
4. Order movement commands as a series of steps in a program
5. Reflect on the debugging process in an age-appropriate way

After completing this activity, students should be able to . . .
See how the debugging that they learned about in their Code.org lesson carries out to a real world example using their Wonder Workshop Dash robots and Blockly app on their iPads.

Workplace Readiness Skill: 

  X   Social Skills X   Communication 
 X  Teamwork     X    Critical Thinking
 X  Attitude and Initiative  X  Planning and Organization
 X  Professionalism  X  Media Etiquette

Content Standards:

Technology/ISTE:

1.a - Apply existing knowledge to generate new ideas, products, or processes.

1.c - Use models and simulation to explore complex systems and issues.

4.b - Plan and manage activities to develop a solution or complete a project.

6.a -Understand and use technology systems.

6.c - Troubleshoot systems and applications.

6.d - Transfer current knowledge to learning of new technologies.

Computer Science:

Content Area: Algorithms and Programming (AP) Standard AP1: Students will recognize and define computational problems using algorithms and programming
AP1.a: Develop algorithms
AP1.a.1.e Construct and execute algorithms (sets of step-bystep instructions), which include sequencing and simple loops to accomplish a task, both

Content Area: Algorithms and Programming (AP) Standard AP2: Students will create computational artifacts using algorithms and programming
AP2.a: Develop and implement an artifact.
AP2.a.1.e Construct programs to accomplish a task or as a means of creative expression, which include sequencing, events, and simple loops, using a blockbased visual programming language, both independently and collaboratively (e.g., pair programming).

Content Area: Algorithms and Programming (AP) Standard AP3: Students will communicate about computing ideas
AP3.b.1.e Follow simple instructions to complete a task, such as a simple visual tutorial.

Content Area: Algorithms and Programming (AP) Standard AP5: Students will collaborate with diverse teams
AP5.a: Work together to solve computational problems using a variety of resources.
AP5.a.1.e Work together with a team to create a solution to a computational problem.

Content Area: Algorithms and Programming (AP) Standard AP5: Students will collaborate with diverse teams
AP5.b: Foster an inclusive computing culture.
AP5.b.1.e Understand the value for teams to include members with different perspectives, experiences, and backgrounds, including race, gender, ethnicity, language, disability, family background, and family income.

Content Area: Algorithms and Programming (AP) Standard AP6: Students will test and refine computational solutions
AP6.a: Test and debug computational solutions.
AP6.a.1.e Analyze and debug (fix) an algorithm, which includes sequencing and simple loops, with or without a computing device.

Content Area: Computing Systems (CS) Standard CS1: Students will communicate about computing systems
CS1.a: Identify hardware and software components.
CS1.a.1.e Identify and use software that controls computational devices to accomplish a task (e.g., use an app to draw on the screen, use software to write a story or control robots).

Content Area: Computing Systems (CS) Standard CS2: Students will test and refine computing systems
CS2.a: Problem solve and debug.
CS2.a.1.e Identify, using accurate terminology, simple hardware and software problems that may occur during use (e.g., app or program not working as expected, no sound, device won't turn on)

Language Arts:

SL.K.1 - Participate in collaborative conversations with diverse partners about kindergarten topics and texts with peers and adults in small and larger groups.

L.K.6 - Use words and phrases acquired through conversations, reading and being read to, and responding to texts.

SL.1.1 - Participate in collaborative conversations with diverse partners about grade 1 topics and texts with peers and adults in small and larger groups.

L.1.6 - Use words and phrases acquired through conversations, reading and being read to, and responding to texts, including using frequently occurring conjunctions to signal simple relationships (e.g., because).

Educational Frameworks

Character Development:
Wisconsin Comprehensive School Counseling Model (WCSCM) Standards
Academic Domain
Standard A: Students will acquire the attitudes, knowledge, and skills that contribute to successful learning in school and across the life span.

Materials:
* Wonder Workshop's Dash Robot for each small group (2-4 students recommended)
* Popsicle sticks with one student name on each in order to pick partner groups (or other similar strategy)
* iPad for each small group with Blockly app downloaded (Free)
* Adequate space for each small group to have their own area to use robot without interfering with other group(s) ideal area is a space with tile floor with 12x12 inch tiles - each group needs a similar sized area with enough space to maneuver robot and for group members to stand.
* Small flat marker of some kind (bingo chips, playing cards,Post-it notes, colored easy to remove tape, etc) to mark start and finish for each small group - place a marker in one corner of each group area and another marker in a space 2-3 tiles forward and 1-2 tiles to the right or left from starting marker (if not using area with tile floor, place one marker in one corner of work space and 2nd marker 2-3 feet forward and 1-2 feet to right or left of starting marker)
* Teacher computer/laptop with access to project video on screen, SMARTboard, CleverTouch, or other similar device
* Debugging video link from Code.org Lesson 5: https://youtu.be/OgaACt4owHc
* Attachment: Print 1 for each small group of screenshot of Blockly app with starting algorithm/program for each group member to start with using blocks from Drive menu on left and debug - Print 1 for each group (contains blocks from Drive menu attached to the "When Start" block on top of screen in the following order: "Forward 50 normal," "Forward 50 normal," "Backward 50 normal," "Turn Left 90," Turn Right 90," "Forward 50 normal")

Screenshot of starting algorithm/program on iPad Blockly app for each group to start with for each group member - print 1 for each group
75247289_420578081948891_2560921202822479872_n.jpg

Screenshot of starting algorithm/program on iPad Blockly app for each group to start with for each group member - print 1 for each group

Learning Activities: 

1. Students will watch Debugging video from Code.org as a review/introduction of the skill they will be using - https://youtu.be/OgaACt4owHc
2. Students will be separated into small groups to complete lesson using Popsicle sticks to draw names for each group (or other similar strategy to create random groups)
3. Students will listen to instructions for the class period:
   * Students will be getting into their pre-assigned groups to complete the activity
   * Each group needs to have 1 Wonder Workshop Dash robot and iPad
   * Each group will be in pre-assigned area - ask them to notice the 2 markers in their area for the start and finish
   * On their group iPad, students will find and select the Blockly app to open it
   * Click the orange and white triangle in the center of the screen to start app
   * Select pre-existing profile if students have one or click Create a New Profile and enter necessary info
   * Click "Create New" on far right of screen
   * Click "Blank Project" on top left of screen
   * Each group member will create the starting algorithm from handout using blocks from Drive menu on left in the correct order to the green "When Start" block at top of screen -  "Forward 50 normal," "Forward 50 normal," "Backward 50 normal," "Turn Left 90," Turn Right 90," "Forward 50 normal"
   * Each group member will place the Dash robot on the starting mark in assigned area
   * Each group member will predict where the algorithm/program will fail based on previous knowledge from Lesson 5 in Code.org curriculum lesson
   * Each group member will click the green Play/Start button on the bottom left of the screen to try the starting algorithm/program and see if their prediction of where algorithm/program will fail is correct
   * Students will debug the starting algorithm/program by deleting unneeded blocks/steps (by dragging and dropping in trash can on bottom right of screen) and adding necessary blocks to algorithm/program to make robot get to correct ending square with ending marker, testing and debugging along the way as needed
   * After successfully finding correct algorithm/program, each group member will delete the blocks that they used by dragging and dropping them into trash can on bottom right of screen, hand iPad to next person in group to start process over again, starting by creating initial algorithm/program from handout, place Dash robot back on beginning marker, AND move ending marker by 1 or 2 squares to give the next group member a new challenge
   * Start process over again for each group member, starting by creating initial algorithm/program from handout
   * Continue this process until every group member has a turn
4. Students will get into selected groups to perform activity with each group bringing 1 Wonder Workshop Dash robot and 1 iPad to their preassigned area
5. Students will carry out steps outlined in step 3 above until every group member has had a turn
6. Bring together all groups and have discussion about process and steps, things they noticed, problems they had, how they solved problems, etc.

WHO - SM (Small Group)

Learning Activity Task                                                WHO is responsible
for this step?
Approximate time
for task
1. Students will watch Debugging video from Code.org as a review/introduction of the skill they will be using - https://youtu.be/OgaACt4owHcWhole Group1 minute, 30 seconds
2. Students will be separated into small groups to complete lesson using Popsicle sticks to draw names for each group (or other similar strategy to create random groups)Whole Group2 minutes

3. Students will listen to instructions for the class period:
   * Students will be getting into their pre-assigned groups to complete the activity
   * Each group needs to have 1 Wonder Workshop Dash robot and iPad 
   * Each group will be in pre-assigned area - ask them to notice the 2 markers in their area for the start and finish
 * On their group iPad, students will find and select the Blockly app to open it
   * Click the orange and white triangle in the center of the screen to start app
   * Select pre-existing profile if students have one or click Create a New Profile and enter necessary info
   * Click "Create New" on far right of screen
   * Click "Blank Project" on top left of screen
   * Each group member will create the starting algorithm from handout using blocks from Drive menu on left in the correct order to the green "When Start" block at top of screen -  "Forward 50 normal," "Forward 50 normal," "Backward 50 normal," "Turn Left 90," Turn Right 90," "Forward 50 normal"
   * Each group member will place the Dash robot on the starting mark in assigned area
   * Each group member will predict where the algorithm/program will fail based on previous knowledge from Lesson 5 in Code.org curriculum lesson
   * Each group member will click the green Play/Start button on the bottom left of the screen to try the starting algorithm/program and see if their prediction of where algorithm/program will fail is correct
   * Students will debug the starting algorithm/program by deleting unneeded blocks/steps (by dragging and dropping in trash can on bottom right of screen) and adding necessary blocks to algorithm/program to make robot get to correct ending square with ending marker, testing and debugging along the way as needed
   * After successfully finding correct algorithm/program, each group member will delete the blocks that they used by dragging and dropping them into trash can on bottom right of screen, hand iPad to next person in group to start process over again, starting by creating initial algorithm/program from handout, place Dash robot back on beginning marker, AND move ending marker by 1 or 2 squares to give the next group member a new challenge
   * Start process over again for each group member, starting by creating initial algorithm/program from handout
   * Continue this process until every group member has a turn

Whole Group5 minutes
4. Students will get into selected groups to perform activity with each group bringing 1 Wonder Workshop Dash robot and 1 iPad to their preassigned areaWhole Group1 minute, 30 seconds
5. Students will carry out steps outlined in step 3 above until every group member has had a turnSmall Group15 minutes

Assessment: As students are working, listen to discussion among students to assess understanding.  Also, use wrap-up for a whole class discussion about the activity.  

Wrap-Up: Discuss activity, asking students to describe the process they went through - the predictions they made and the steps they took to debug the algorithm/program.  Ask if any students have questions/concerns.

Extension Activity (for intervention or enrichment):
* Intervention:
      - Group members can answer questions for students who are in their group who may need a hint.
      -  If there are students who do not work well together or some may need extra support, student groups could be created ahead of time by teacher instead if desired.
* Enrichment:
      - Students can add other blocks to algorithm from other options on left side (Look, Light, Sound, Animations, Control)
      - Students can create more complex challenges by moving start and end points
      - Students can create other starting algorithms/programs for group members to start with

ATTACHMENTS  - All attachments/resources are listed above in Materials section

Return to top