Computer Science Standards
Results
Showing 1 - 10 of 33 Standards
Standard Identifier: K-2.AP.12
Grade Range:
K–2
Concept:
Algorithms & Programming
Subconcept:
Control
Practice(s):
Creating Computational Artifacts (5.2)
Standard:
Create programs with sequences of commands and simple loops, to express ideas or address a problem.
Descriptive Statement:
People create programs by composing sequences of commands that specify the precise order in which instructions should be executed. Loops enable programs to repeat a sequence of commands multiple times. For example, students could follow simple movements in response to oral instructions. Students could then create a simple sequence of movement commands in response to a given problem (e.g., In how many ways can you travel from point A to point B?) and represent it as a computer program, using loops to repeat commands. (VAPA Dance K.1.4, 1.2.3, 1.2.5, 1.2.8, 2.2.1, 2.2.2, 2.2.3) Alternatively, on a mat with many different CVC words, students could program robots to move to words with a similar vowel sound. Students could look for multiple ways to solve the problem and simplify their solution by incorporating loops. (CA CCSS for ELA/Literacy RF.K.2.D, RF.1.2.C)
Create programs with sequences of commands and simple loops, to express ideas or address a problem.
Descriptive Statement:
People create programs by composing sequences of commands that specify the precise order in which instructions should be executed. Loops enable programs to repeat a sequence of commands multiple times. For example, students could follow simple movements in response to oral instructions. Students could then create a simple sequence of movement commands in response to a given problem (e.g., In how many ways can you travel from point A to point B?) and represent it as a computer program, using loops to repeat commands. (VAPA Dance K.1.4, 1.2.3, 1.2.5, 1.2.8, 2.2.1, 2.2.2, 2.2.3) Alternatively, on a mat with many different CVC words, students could program robots to move to words with a similar vowel sound. Students could look for multiple ways to solve the problem and simplify their solution by incorporating loops. (CA CCSS for ELA/Literacy RF.K.2.D, RF.1.2.C)
Standard Identifier: K-2.AP.14
Grade Range:
K–2
Concept:
Algorithms & Programming
Subconcept:
Program Development
Practice(s):
Creating Computational Artifacts, Communicating About Computing (5.1, 7.2)
Standard:
Develop plans that describe a program’s sequence of events, goals, and expected outcomes.
Descriptive Statement:
Creating a plan for what a program will do clarifies the steps that will be needed to create the program and can be used to check if a program runs as expected. Students create a planning document to illustrate their program's sequence of events, goals, and expected outcomes of what their program will do. Planning documents could include a story map, a storyboard, or a sequential graphic organizer, to illustrate their program's sequence of events, goals, and expected outcomes of what their program will do. Students at this level may complete the planning process with help from the teacher. For example, students could create a storyboard or timeline that represents a family's history, leading to their current location of residence. Students could then create a plan for a program that animates the story of family locations. (HSS 2.1.1) (CA CCSS for ELA/Literacy W.K.3, W.1.3, W.2.3)
Develop plans that describe a program’s sequence of events, goals, and expected outcomes.
Descriptive Statement:
Creating a plan for what a program will do clarifies the steps that will be needed to create the program and can be used to check if a program runs as expected. Students create a planning document to illustrate their program's sequence of events, goals, and expected outcomes of what their program will do. Planning documents could include a story map, a storyboard, or a sequential graphic organizer, to illustrate their program's sequence of events, goals, and expected outcomes of what their program will do. Students at this level may complete the planning process with help from the teacher. For example, students could create a storyboard or timeline that represents a family's history, leading to their current location of residence. Students could then create a plan for a program that animates the story of family locations. (HSS 2.1.1) (CA CCSS for ELA/Literacy W.K.3, W.1.3, W.2.3)
Standard Identifier: K-2.AP.16
Grade Range:
K–2
Concept:
Algorithms & Programming
Subconcept:
Program Development
Practice(s):
Testing and Refining Computational Artifacts (6.2)
Standard:
Debug errors in an algorithm or program that includes sequences and simple loops.
Descriptive Statement:
Algorithms or programs may not always work correctly. Students use various strategies, such as changing the sequence of the steps, following the algorithm in a step-by-step manner, or trial and error to fix problems in algorithms and programs. For example, when given images placed in a random order, students could give step-by-step commands to direct a robot, or a student playing a robot, to navigate to the images in the correct sequence. Examples of images include storyboard cards from a familiar story (CA CCSS for ELA/Literacy RL.K.2, RL.1.2, RL.2.2) and locations of the sun at different times of the day (CA NGSS: 1-ESS1-1). Alternatively, students could "program" the teacher or another classmate by giving precise instructions to make a peanut butter and jelly sandwich or navigate around the classroom. When the teacher or classmate doesn't respond as intended, students correct their commands. Additionally, students could receive a partially completed soundboard program that has a variety of animals programmed to play a corresponding sound when the user touches them. Students correct any sounds that don't match the animal (e.g., if the cat moos, students change the moo sound to meow).
Debug errors in an algorithm or program that includes sequences and simple loops.
Descriptive Statement:
Algorithms or programs may not always work correctly. Students use various strategies, such as changing the sequence of the steps, following the algorithm in a step-by-step manner, or trial and error to fix problems in algorithms and programs. For example, when given images placed in a random order, students could give step-by-step commands to direct a robot, or a student playing a robot, to navigate to the images in the correct sequence. Examples of images include storyboard cards from a familiar story (CA CCSS for ELA/Literacy RL.K.2, RL.1.2, RL.2.2) and locations of the sun at different times of the day (CA NGSS: 1-ESS1-1). Alternatively, students could "program" the teacher or another classmate by giving precise instructions to make a peanut butter and jelly sandwich or navigate around the classroom. When the teacher or classmate doesn't respond as intended, students correct their commands. Additionally, students could receive a partially completed soundboard program that has a variety of animals programmed to play a corresponding sound when the user touches them. Students correct any sounds that don't match the animal (e.g., if the cat moos, students change the moo sound to meow).
Standard Identifier: 3-5.AP.10
Grade Range:
3–5
Concept:
Algorithms & Programming
Subconcept:
Algorithms
Practice(s):
Recognizing and Defining Computational Problems, Testing and Refining Computational Artifacts (3.3, 6.3)
Standard:
Compare and refine multiple algorithms for the same task and determine which is the most appropriate.
Descriptive Statement:
Different algorithms can achieve the same result, though sometimes one algorithm might be more appropriate for a specific solution. Students examine different ways to solve the same task and decide which would be the better solution for the specific scenario. For example, students could use a map and create multiple algorithms to model the early land and sea routes to and from European settlements in California. They could then compare and refine their algorithms to reflect faster travel times, shorter distances, or avoid specific characteristics, such as mountains, deserts, ocean currents, and wind patterns. (HSS.4.2.2) Alternatively, students could identify multiple algorithms for decomposing a fraction into a sum of fractions with the same denominator and record each decomposition with an equation (e.g., 2 1/8 = 1 + 1 + 1/8 = 8/8 + 8/8 + 1/8). Students could then select the most efficient algorithm (e.g., fewest number of steps). (CA CCSS for Mathematics 4.NF.3b) Additionally, students could compare algorithms that describe how to get ready for school and modify them for supporting different goals including having time to care for a pet, being able to talk with a friend before classes start, or taking a longer route to school to accompany a younger sibling to their school first. Students could then write an opinion piece, justifying with reasons their selected algorithm is most appropriate. (CA CCSS for ELA/Literacy W.3.1, W.4.1, W.5.1)
Compare and refine multiple algorithms for the same task and determine which is the most appropriate.
Descriptive Statement:
Different algorithms can achieve the same result, though sometimes one algorithm might be more appropriate for a specific solution. Students examine different ways to solve the same task and decide which would be the better solution for the specific scenario. For example, students could use a map and create multiple algorithms to model the early land and sea routes to and from European settlements in California. They could then compare and refine their algorithms to reflect faster travel times, shorter distances, or avoid specific characteristics, such as mountains, deserts, ocean currents, and wind patterns. (HSS.4.2.2) Alternatively, students could identify multiple algorithms for decomposing a fraction into a sum of fractions with the same denominator and record each decomposition with an equation (e.g., 2 1/8 = 1 + 1 + 1/8 = 8/8 + 8/8 + 1/8). Students could then select the most efficient algorithm (e.g., fewest number of steps). (CA CCSS for Mathematics 4.NF.3b) Additionally, students could compare algorithms that describe how to get ready for school and modify them for supporting different goals including having time to care for a pet, being able to talk with a friend before classes start, or taking a longer route to school to accompany a younger sibling to their school first. Students could then write an opinion piece, justifying with reasons their selected algorithm is most appropriate. (CA CCSS for ELA/Literacy W.3.1, W.4.1, W.5.1)
Standard Identifier: 3-5.AP.11
Grade Range:
3–5
Concept:
Algorithms & Programming
Subconcept:
Variables
Practice(s):
Creating Computational Artifacts (5.2)
Standard:
Create programs that use variables to store and modify data.
Descriptive Statement:
Variables are used to store and modify data. Students use variables in programs they create. At this level, students may need guidance in identifying when to create variables (i.e., performing the abstraction). For example, students could create a game to represent predators and prey in an ecosystem. They could declare a "score" variable, assign it to 0 at the start of the game, and add 1 (increment) the score each time the predator captures its prey. They could also declare a second "numberOfLives" variable, assign it to 3 at the start of the game, and subtract 1 (decrement) each time a prey is captured. They could program the game to end when "numberOfLives" equals 0. (CA NGSS: 5-LS2-1) (CA CCSS for Mathematics 5.OA.3) Alternatively, when students create programs to draw regular polygons, they could use variables to store the line size, line color, and/or side length. Students can extend learning by creatively combining a variety of polygons to create digital artwork, comparing and contrasting this to another work of art made by the use of different art tools and media, such as watercolor or tempera paints. (CA CCSS for Mathematics 3.G.1) (VAPA Visual Arts 3.1.4)
Create programs that use variables to store and modify data.
Descriptive Statement:
Variables are used to store and modify data. Students use variables in programs they create. At this level, students may need guidance in identifying when to create variables (i.e., performing the abstraction). For example, students could create a game to represent predators and prey in an ecosystem. They could declare a "score" variable, assign it to 0 at the start of the game, and add 1 (increment) the score each time the predator captures its prey. They could also declare a second "numberOfLives" variable, assign it to 3 at the start of the game, and subtract 1 (decrement) each time a prey is captured. They could program the game to end when "numberOfLives" equals 0. (CA NGSS: 5-LS2-1) (CA CCSS for Mathematics 5.OA.3) Alternatively, when students create programs to draw regular polygons, they could use variables to store the line size, line color, and/or side length. Students can extend learning by creatively combining a variety of polygons to create digital artwork, comparing and contrasting this to another work of art made by the use of different art tools and media, such as watercolor or tempera paints. (CA CCSS for Mathematics 3.G.1) (VAPA Visual Arts 3.1.4)
Standard Identifier: 3-5.AP.12
Grade Range:
3–5
Concept:
Algorithms & Programming
Subconcept:
Control
Practice(s):
Creating Computational Artifacts (5.2)
Standard:
Create programs that include events, loops, and conditionals.
Descriptive Statement:
Control structures specify the order (sequence) in which instructions are executed within a program and can be combined to support the creation of more complex programs. Events allow portions of a program to run based on a specific action. Conditionals allow for the execution of a portion of code in a program when a certain condition is true. Loops allow for the repetition of a sequence of code multiple times. For example, students could program an interactive map of the United States of America. They could use events to initiate a question when the user clicks on a state and conditionals to check whether the user input is correct. They could use loops to repeat the question until the user answers correctly or to control the length of a "congratulations" scenario that plays after a correct answer. (HSS.5.9) Alternatively, students could write a math fluency game that asks products of two one-digit numbers and then uses a conditional to check whether or not the answer that was entered is correct. They could use a loop to repeatedly ask another question. They could use events to allow the user to click on a green button to play again or a red button to end the game. (CA CCSS for Mathematics 3.OA.7) Additionally, students could create a program as a role-playing game based on a literary work. Loops could be used to animate a character's movement. When reaching a decision point in the story, an event could initiate the user to type a response. A conditional could change the setting or have the story play out differently based on the user input. (CA CCSS for ELA/Literacy RL.5.3)
Create programs that include events, loops, and conditionals.
Descriptive Statement:
Control structures specify the order (sequence) in which instructions are executed within a program and can be combined to support the creation of more complex programs. Events allow portions of a program to run based on a specific action. Conditionals allow for the execution of a portion of code in a program when a certain condition is true. Loops allow for the repetition of a sequence of code multiple times. For example, students could program an interactive map of the United States of America. They could use events to initiate a question when the user clicks on a state and conditionals to check whether the user input is correct. They could use loops to repeat the question until the user answers correctly or to control the length of a "congratulations" scenario that plays after a correct answer. (HSS.5.9) Alternatively, students could write a math fluency game that asks products of two one-digit numbers and then uses a conditional to check whether or not the answer that was entered is correct. They could use a loop to repeatedly ask another question. They could use events to allow the user to click on a green button to play again or a red button to end the game. (CA CCSS for Mathematics 3.OA.7) Additionally, students could create a program as a role-playing game based on a literary work. Loops could be used to animate a character's movement. When reaching a decision point in the story, an event could initiate the user to type a response. A conditional could change the setting or have the story play out differently based on the user input. (CA CCSS for ELA/Literacy RL.5.3)
Standard Identifier: 3-5.AP.14
Grade Range:
3–5
Concept:
Algorithms & Programming
Subconcept:
Modularity
Practice(s):
Developing and Using Abstractions, Creating Computational Artifacts (4.2, 5.3)
Standard:
Create programs by incorporating smaller portions of existing programs, to develop something new or add more advanced features.
Descriptive Statement:
Programs can be broken down into smaller parts, which can be incorporated into new or existing programs. Students incorporate predefined functions into their original designs. At this level, students do not need to understand all of the underlying implementation details of the abstractions that they use. For example, students could use code from a ping pong animation to make a ball bounce in a new basketball game. They could also incorporate code from a single-player basketball game to create a two-player game with slightly different rules. Alternatively, students could remix an animated story and add their own conclusion and/or additional dialogue. (CA CCSS for ELA/Literacy W.3.3.B, W.3.3.D, W.4.3.B, W.4.3.E, W.5.3.B, W.5.3.E) Additionally, when creating a game that occurs on the moon or planets, students could incorporate and modify code that simulates gravity on Earth. They could modify the strength of the gravitational force based on the mass of the planet or moon. (CA NGSS: 5-PS2-1)
Create programs by incorporating smaller portions of existing programs, to develop something new or add more advanced features.
Descriptive Statement:
Programs can be broken down into smaller parts, which can be incorporated into new or existing programs. Students incorporate predefined functions into their original designs. At this level, students do not need to understand all of the underlying implementation details of the abstractions that they use. For example, students could use code from a ping pong animation to make a ball bounce in a new basketball game. They could also incorporate code from a single-player basketball game to create a two-player game with slightly different rules. Alternatively, students could remix an animated story and add their own conclusion and/or additional dialogue. (CA CCSS for ELA/Literacy W.3.3.B, W.3.3.D, W.4.3.B, W.4.3.E, W.5.3.B, W.5.3.E) Additionally, when creating a game that occurs on the moon or planets, students could incorporate and modify code that simulates gravity on Earth. They could modify the strength of the gravitational force based on the mass of the planet or moon. (CA NGSS: 5-PS2-1)
Standard Identifier: 3-5.AP.15
Grade Range:
3–5
Concept:
Algorithms & Programming
Subconcept:
Program Development
Practice(s):
Fostering an Inclusive Computing Culture, Creating Computational Artifacts (1.1, 5.1)
Standard:
Use an iterative process to plan and develop a program by considering the perspectives and preferences of others.
Descriptive Statement:
Planning is an important part of the iterative process of program development. Students gain a basic understanding of the importance and process of planning before beginning to write code for a program. They plan the development of a program by outlining key features, time and resource constraints, and user expectations. Students should document the plan as, for example, a storyboard, flowchart, pseudocode, or story map. For example, students could collaborate with a partner to plan and develop a program that graphs a function. They could iteratively modify the program based on feedback from diverse users, such as students who are color blind and may have trouble differentiating lines on a graph based on the color. (CA CCSS for Mathematics 5.G.1, 5.G.2) Alternatively, students could plan as a team to develop a program to display experimental data. They could implement the program in stages, generating basic displays first and then soliciting feedback from others on how easy it is to interpret (e.g., are labels clear and readable?, are lines thick enough?, are titles understandable?). Students could iteratively improve their display to make it more readable and to better support the communication of the finding of the experiment. (NGSS.3-5-ETS1-1, 3-5-ETS1-2, 3-5-ETS1-3)
Use an iterative process to plan and develop a program by considering the perspectives and preferences of others.
Descriptive Statement:
Planning is an important part of the iterative process of program development. Students gain a basic understanding of the importance and process of planning before beginning to write code for a program. They plan the development of a program by outlining key features, time and resource constraints, and user expectations. Students should document the plan as, for example, a storyboard, flowchart, pseudocode, or story map. For example, students could collaborate with a partner to plan and develop a program that graphs a function. They could iteratively modify the program based on feedback from diverse users, such as students who are color blind and may have trouble differentiating lines on a graph based on the color. (CA CCSS for Mathematics 5.G.1, 5.G.2) Alternatively, students could plan as a team to develop a program to display experimental data. They could implement the program in stages, generating basic displays first and then soliciting feedback from others on how easy it is to interpret (e.g., are labels clear and readable?, are lines thick enough?, are titles understandable?). Students could iteratively improve their display to make it more readable and to better support the communication of the finding of the experiment. (NGSS.3-5-ETS1-1, 3-5-ETS1-2, 3-5-ETS1-3)
Standard Identifier: 3-5.AP.16
Grade Range:
3–5
Concept:
Algorithms & Programming
Subconcept:
Program Development
Practice(s):
Creating Computational Artifacts, Communicating About Computing (5.2, 7.3)
Standard:
Observe intellectual property rights and give appropriate attribution when creating, remixing, or combining programs.
Descriptive Statement:
Intellectual property rights can vary by country, but copyright laws give the creator of a work a set of rights and prevents others from copying the work and using it in ways that they may not like. Students consider common licenses that place limitations or restrictions on the use of others' work, such as images and music downloaded from the Internet. When incorporating the work of others, students attribute the work. At this level, students could give attribution by including credits or links directly in their programs, code comments, or separate project pages. For example, when making a program to model the life cycle of a butterfly, students could modify and reuse an existing program that describes the life cycle of a frog. Based on their research, students could identify and use Creative Commons-licensed or public domain images and sounds of caterpillars and butterflies. Students give attribution by properly citing the source of the original piece as necessary. (CA NGSS: 3-LS-1-1) (CA CCSS for ELA/Literacy W.3.8, W.4.8, W.5.8) Alternatively, when creating a program explaining the structure of the United States goverment, students find Creative Commons-licensed or public domain images to represent the three branches of government and attribute ownership of the images appropriately. If students find and incorporate an audio file of a group playing part of the national anthem, they appropriately give attribution on the project page. (HSS.3.4.4)
Observe intellectual property rights and give appropriate attribution when creating, remixing, or combining programs.
Descriptive Statement:
Intellectual property rights can vary by country, but copyright laws give the creator of a work a set of rights and prevents others from copying the work and using it in ways that they may not like. Students consider common licenses that place limitations or restrictions on the use of others' work, such as images and music downloaded from the Internet. When incorporating the work of others, students attribute the work. At this level, students could give attribution by including credits or links directly in their programs, code comments, or separate project pages. For example, when making a program to model the life cycle of a butterfly, students could modify and reuse an existing program that describes the life cycle of a frog. Based on their research, students could identify and use Creative Commons-licensed or public domain images and sounds of caterpillars and butterflies. Students give attribution by properly citing the source of the original piece as necessary. (CA NGSS: 3-LS-1-1) (CA CCSS for ELA/Literacy W.3.8, W.4.8, W.5.8) Alternatively, when creating a program explaining the structure of the United States goverment, students find Creative Commons-licensed or public domain images to represent the three branches of government and attribute ownership of the images appropriately. If students find and incorporate an audio file of a group playing part of the national anthem, they appropriately give attribution on the project page. (HSS.3.4.4)
Standard Identifier: 3-5.AP.17
Grade Range:
3–5
Concept:
Algorithms & Programming
Subconcept:
Program Development
Practice(s):
Testing and Refining Computational Artifacts (6.2)
Standard:
Test and debug a program or algorithm to ensure it accomplishes the intended task.
Descriptive Statement:
Programs do not always run properly. Students need to understand how to test and make necessary corrections to their programs to ensure they run properly. Students successfully identify and fix errors in (debug) their programs and programs created by others. Debugging strategies at this level may include testing to determine the first place the solution is in error and fixing accordingly, leaving "breadcrumbs" in a program, and soliciting assistance from peers and online resources. For example, when students are developing a program to control the movement of a robot in a confined space, students test various inputs that control movement of the robot to make sure it behaves as intended (e.g., if an input would cause the robot to move past a wall of the confined space, it should not move at all). (CA NGSS: 3-5-ETS1-3) Additionally, students could test and debug an algorithm by tracing the inputs and outputs on a whiteboard. When noticing "bugs" (errors), students could identify what was supposed to happen and step through the algorithm to locate and then correct the error.
Test and debug a program or algorithm to ensure it accomplishes the intended task.
Descriptive Statement:
Programs do not always run properly. Students need to understand how to test and make necessary corrections to their programs to ensure they run properly. Students successfully identify and fix errors in (debug) their programs and programs created by others. Debugging strategies at this level may include testing to determine the first place the solution is in error and fixing accordingly, leaving "breadcrumbs" in a program, and soliciting assistance from peers and online resources. For example, when students are developing a program to control the movement of a robot in a confined space, students test various inputs that control movement of the robot to make sure it behaves as intended (e.g., if an input would cause the robot to move past a wall of the confined space, it should not move at all). (CA NGSS: 3-5-ETS1-3) Additionally, students could test and debug an algorithm by tracing the inputs and outputs on a whiteboard. When noticing "bugs" (errors), students could identify what was supposed to happen and step through the algorithm to locate and then correct the error.
Showing 1 - 10 of 33 Standards
Questions: Curriculum Frameworks and Instructional Resources Division |
CFIRD@cde.ca.gov | 916-319-0881