Computer Science Fundamentals Unit 5 Course D Lesson 4: Debugging with Laurel (2018)

Learning Resource Type

Classroom Resource

Subject Area

Digital Literacy and Computer Science

Grade(s)

3

Overview

In this online activity, students will practice debugging in the "collector" environment. Students will get to practice reading and editing code to fix puzzles with simple algorithms, loops, and nested loops.

The purpose of this lesson is to teach students that failure is normal when learning a new skill. Students will be given pre-written programs that do NOT work. They will be asked to fix these programs. This process, called "debugging", teaches students essential problem solving and critical thinking skills. These skills transfer over as students proceed to harder and harder programming projects.

Students will be able to:
- read and comprehend the given code.
- identify a bug and the problems it causes in a program.
- describe and implement a plan to debug a program.

Note: You will need to create a free account on code.org before you can view this resource. 

Digital Literacy and Computer Science (2018) Grade(s): 3

DLCS18.3.3

Explain that different solutions exist for the same problem or sub-problem.

UP:DLCS18.3.3

Vocabulary

  • solution
  • sub-problem
  • problem

Knowledge

Students know:
  • different solutions exist for the same problem or sub-problem.
  • techniques to explain that different solutions exist for the same problem or sub-problem.

Skills

Students are able to:
  • identify different solutions for the same problem or sub-problem.
  • explain that these solutions exist.

Understanding

Students understand that:
  • multiple solutions exist for the same problem or sub-problem.
Digital Literacy and Computer Science (2018) Grade(s): 3

DLCS18.3.4

Examine logical reasoning to predict outcomes of an algorithm.

UP:DLCS18.3.4

Vocabulary

  • logical reasoning
  • outcome
  • algorithm

Knowledge

Students know:
  • to apply logical reasoning when predicting outcomes of algorithms.
  • strategies to examine logical reasoning to predict outcomes of an algorithm.

Skills

Students are able to:
  • determine possible outcomes of an algortihm.
  • recognize that an algorithm can have multiple outcomes.

Understanding

Students understand that:
  • logical reasoning is necessary when predicting outcomes of an algorithm.
  • algorithms can have multiple outcomes.
Digital Literacy and Computer Science (2018) Grade(s): 3

DLCS18.3.5

Create an algorithm to solve a problem as a collaborative team.

UP:DLCS18.3.5

Vocabulary

  • algorithm
  • collaborative

Knowledge

Students know:
  • an algorithm can be used to solve a problem or complete a task.
  • the steps in creating an algortihm as a collaborative team.

Skills

Students are able to:
  • work as a collaborative team to create a problem-solving algorithm.
  • list steps in solving a problem.

Understanding

Students understand that:
  • algorithms are used to solve problems or complete a task in a step-by-step process.
Digital Literacy and Computer Science (2018) Grade(s): 3

DLCS18.3.7

Test and debug a given program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

UP:DLCS18.3.7

Vocabulary

  • test
  • debug
  • program
  • block-based visual programming environment
  • arithmetic operators
  • conditionals
  • repetition

Knowledge

Students know:
  • strategies for debugging a given program.
  • arithmetic operators create a single numerical solution from multiple oprations.
  • conditionals are "if, then" statements that direct the program.

Skills

Students are able to:
  • test a given program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.
  • debug a given program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

Understanding

Students understand that:
  • a given program must be tested and debugged to run correctly.
  • block-based visual programming uses arithemetic operators, conditionals, and repetition to function.
Digital Literacy and Computer Science (2018) Grade(s): 3

DLCS18.3.23

Implement the design process to solve a simple problem.

UP:DLCS18.3.23

Vocabulary

  • implement
  • design process
  • problem

Knowledge

Students know:
  • the steps in the design process are to define the problem, research the problem, brainstorm and analyze ideas, imagine solutions, build a prototype and test it, and make improvements.
  • how to implement the design process to solve a simple problem.
  • how to identify a simple problem.

Skills

Students are able to:
  • identify the steps in the design process.
  • apply the design process to a simple problem.
  • implement the steps in the design process to solve a simple problem.

Understanding

Students understand that:
  • the steps in the design process are to define the problem, research the problem, brainstorm and analyze ideas, imagine solutions, build a prototype and test it, and make improvements.

CR Resource Type

Lesson/Unit Plan

Resource Provider

Code.org

License Type

Custom
ALSDE LOGO