Podcast
Class Grading with Paper Models
Students gather in small groups, each equipped with paper templates representing different components of the class grading system. The teacher introduces the task: decomposing the problem of calculating final grades by breaking it down into smaller subproblems like entering individual grades, calculating averages, and organizing the data into histograms. One group starts by creating a step-by-step process to input grades, while another focuses on how to calculate averages for each student and assignment.
As they collaborate, students begin to understand how breaking down complex tasks into manageable parts helps them approach problem-solving like programmers breaking down coding tasks into subproblems. The class discusses how computational thinking, like decomposition and data representation, plays a crucial role in simplifying tasks and ensuring accuracy.
Objective:
Students will decompose the problem of calculating class grades into smaller, manageable subproblems, such as entering individual grades, calculating averages, and organizing data into visual displays. They will explore computational thinking practices, particularly decomposition, and understand how it facilitates organizing and processing data efficiently.
Materials Needed:
Paper templates for grade input (e.g., tables and grids)
Markers, pencils
Sample data sets (grades)
Chart paper for group work
Steps:
Introduction:
Begin by asking students if they know how teachers calculate final grades for a class.
Introduce the concept of decomposition in computational thinking, explaining that complex tasks can be broken into smaller, manageable parts to solve problems more efficiently. Ask, “What are the different tasks involved in calculating class grades?”
List tasks such as inputting grades, calculating assignment averages, and representing the data visually.
Group Activity:
In small groups, students will decompose the process of calculating final grades. One group may work on how to accurately input and validate student grades using paper templates, while another group focuses on calculating assignments and student averages. Another group might represent these averages visually using bar graphs or histograms to show grade distributions.
Creating the Solution:
Students will develop their step-by-step process for handling the grades, including validating the input data, performing calculations, and organizing the information for clarity.
Groups will work collaboratively to ensure each part of the problem is solved efficiently.
Testing and Refining:
Once the steps have been developed, students will swap their work with other groups for peer testing.
Groups will follow each other’s processes to check if the steps correctly calculate averages and display data clearly.
Based on feedback, students will refine their processes for better accuracy and clarity.
Presentation and Discussion:
Each group will present their work, explaining how they used decomposition to break down the task of calculating grades and organizing data.
The teacher will lead a discussion on how this mirrors the way computers process data and handle tasks in programs.
Students will reflect on how computational thinking helps them solve complex problems by breaking them into smaller pieces.
Equity and Access:
Provide differentiated templates and structured scaffolding for students needing additional support with the decomposition process. Pair students with varying strengths to encourage collaborative problem-solving and ensure equitable participation.
Real-World Application:
Connect the lesson to how teachers and grading systems in schools calculate grades by using structured processes to organize large amounts of student data. Relate the idea to other real-world applications, such as budgeting, where breaking down complex financial data into smaller parts helps manage resources effectively.
CS Practice(s):
Recognizing and Defining Computational Problems: Students break down the complex task of calculating grades into smaller, more manageable subproblems (inputting, calculating, displaying).
Communicating About Computing: Students articulate their thought process in decomposing the grading system and organizing data for clear understanding.
Standards:
CA CCSS Mathematics 6.RP.3c
CA CS 6-8.AP.13
Building a Grade Calculator with Scratch
At their computers, students begin coding a class grade calculator in Scratch. Working in pairs, they decompose the problem, creating variables to store student grades and using loops to calculate averages for assignments and students. One pair of students codes a feature to check for invalid inputs, while another group designs a histogram that displays student scores graphically.
As they run their programs, students debug their code and test different sets of grade data, discussing how changing percentages affects the overall averages and how their code mirrors the way grades are processed in real life.
Objective:
Students will use Scratch, App Lab, or another coding platform to build a class grade calculator, incorporating user input, validation checks, average calculations, and graphical data displays. Through coding, they will decompose the task into subproblems and practice developing variables and control structures.
Materials Needed:
Computers
Sample grade data for testing
Steps:
Introduction:
Start by reviewing the steps for calculating grades and introduce a coding platform as the tool students will use to automate this process.
Explain how they will decompose the problem by creating variables for grades, checking for errors, calculating averages, and displaying results as graphs or histograms.
Group Activity:
In pairs, students will begin coding their grade calculator in a coding platform. First, they will design variables to store each student's grades, and then they will use loops and conditionals to calculate per-assignment and per-student averages.
They will also code logic to check for invalid inputs (e.g., grades over 100 or below 0).
Creating and Coding:
Students will code a graphical display feature, such as a histogram or bar graph, to represent the distribution of grades visually.
Testing and Refining:
Students will test their grade calculators by inputting various sets of grades and checking whether the averages and graphical displays are correct.
They will debug any errors and refine their code to improve performance.
Presentation and Discussion:
Each pair will present their programs, explaining how they used decomposition to break the problem into smaller tasks and how they used loops and conditionals to calculate and display the grades.
Equity and Access:
Provide pre-built code templates for students who need additional support. Group students with varying levels of coding experience to ensure peer collaboration.
Real-World Application:
Discuss how real-world gradebook software, like those used in schools, calculates and displays grades in a similar way. Emphasize how automation makes managing large amounts of data easier and more accurate.
CS Practice(s):
Recognizing and Defining Computational Problems: Students break down the task of creating a grade calculator into manageable coding subproblems.
Creating Computational Artifacts: Students develop a functional grade calculator in a coding platform that handles user input, calculations, and graphical data display.
Standards:
CA CCSS Mathematics 6.SP.4
CA CCSS Mathematics 6.RP.3c
CA CS 6-8.AP.13
Click the button above to unlock our Lesson Idea Design Tools! Our custom chatbots are ready to help you navigate content standards, integrate both UDL Concepts and UN Sustainable Goals, and design lesson ideas that align with content standards and incorporate computer science concepts.
If you are using a free ChatGPT account, there will be daily limits on usage. This AI tool is meant to be a guide. You are the professional. Be sure to vet all responses.