Computer Science Standards
Results
Showing 1 - 10 of 14 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: 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.CS.1
Grade Range:
3–5
Concept:
Computing Systems
Subconcept:
Devices
Practice(s):
Communicating About Computing (7.2)
Standard:
Describe how computing devices connect to other components to form a system.
Descriptive Statement:
Computing devices often depend on other devices or components. Students describe physical and wireless connections to other components, including both input devices (e.g., keyboards, sensors, remote controls, microphones) and output devices (e.g., 3D printers, monitors, speakers). For example, students could describe the relationship among the heart, lungs, muscles, blood, and oxygen during physical activity and then compare this to how a mouse, keyboard, printer, and desktop computer connect and interact to allow for input, processing, and output. (P.E.3.4.7) Alternatively, when describing how light reflected from objects enters the eye and is then transferred to the brain to construct a visual image, students could compare this to a computing system that uses programming to construct a visual image when data is transferred and constructed/reconstructed through a keyboard, camera, or other components. (CA NGSS: 4-PS4-2)
Describe how computing devices connect to other components to form a system.
Descriptive Statement:
Computing devices often depend on other devices or components. Students describe physical and wireless connections to other components, including both input devices (e.g., keyboards, sensors, remote controls, microphones) and output devices (e.g., 3D printers, monitors, speakers). For example, students could describe the relationship among the heart, lungs, muscles, blood, and oxygen during physical activity and then compare this to how a mouse, keyboard, printer, and desktop computer connect and interact to allow for input, processing, and output. (P.E.3.4.7) Alternatively, when describing how light reflected from objects enters the eye and is then transferred to the brain to construct a visual image, students could compare this to a computing system that uses programming to construct a visual image when data is transferred and constructed/reconstructed through a keyboard, camera, or other components. (CA NGSS: 4-PS4-2)
Standard Identifier: 6-8.AP.11
Grade Range:
6–8
Concept:
Algorithms & Programming
Subconcept:
Variables
Practice(s):
Creating Computational Artifacts (5.1, 5.2)
Standard:
Create clearly named variables that store data, and perform operations on their contents.
Descriptive Statement:
A variable is a container for data, and the name used for accessing the variable is called the identifier. Students declare, initialize, and update variables for storing different types of program data (e.g., text, integers) using names and naming conventions (e.g. camel case) that clearly convey the purpose of the variable, facilitate debugging, and improve readability. For example, students could program a quiz game with a score variable (e.g. quizScore) that is initially set to zero and increases by increments of one each time the user answers a quiz question correctly and decreases by increments of one each time a user answers a quiz question incorrectly, resulting in a score that is either a positive or negative integer. (CA CCSS for Mathematics 6.NS.5) Alternatively, students could write a program that prompts the user for their name, stores the user's response in a variable (e.g. userName), and uses this variable to greet the user by name.
Create clearly named variables that store data, and perform operations on their contents.
Descriptive Statement:
A variable is a container for data, and the name used for accessing the variable is called the identifier. Students declare, initialize, and update variables for storing different types of program data (e.g., text, integers) using names and naming conventions (e.g. camel case) that clearly convey the purpose of the variable, facilitate debugging, and improve readability. For example, students could program a quiz game with a score variable (e.g. quizScore) that is initially set to zero and increases by increments of one each time the user answers a quiz question correctly and decreases by increments of one each time a user answers a quiz question incorrectly, resulting in a score that is either a positive or negative integer. (CA CCSS for Mathematics 6.NS.5) Alternatively, students could write a program that prompts the user for their name, stores the user's response in a variable (e.g. userName), and uses this variable to greet the user by name.
Standard Identifier: 6-8.AP.12
Grade Range:
6–8
Concept:
Algorithms & Programming
Subconcept:
Control
Practice(s):
Creating Computational Artifacts (5.1, 5.2)
Standard:
Design and iteratively develop programs that combine control structures and use compound conditions.
Descriptive Statement:
Control structures can be combined in many ways. Nested loops are loops placed within loops, and nested conditionals allow the result of one conditional to lead to another. Compound conditions combine two or more conditions in a logical relationship (e.g., using AND, OR, and NOT). Students appropriately use control structures to perform repetitive and selection tasks. For example, when programming an interactive story, students could use a compound conditional within a loop to unlock a door only if a character has a key AND is touching the door. (CA CCSS for ELA/Literacy W.6.3, W.7.3, W.8.3) Alternatively, students could use compound conditionals when writing a program to test whether two points lie along the line defined by a particular linear function. (CA CCSS for Mathematics 8.EE.7) Additionally, students could use nested loops to program a character to do the "chicken dance" by opening and closing the beak, flapping the wings, shaking the hips, and clapping four times each; this dance "chorus" is then repeated several times in its entirety.
Design and iteratively develop programs that combine control structures and use compound conditions.
Descriptive Statement:
Control structures can be combined in many ways. Nested loops are loops placed within loops, and nested conditionals allow the result of one conditional to lead to another. Compound conditions combine two or more conditions in a logical relationship (e.g., using AND, OR, and NOT). Students appropriately use control structures to perform repetitive and selection tasks. For example, when programming an interactive story, students could use a compound conditional within a loop to unlock a door only if a character has a key AND is touching the door. (CA CCSS for ELA/Literacy W.6.3, W.7.3, W.8.3) Alternatively, students could use compound conditionals when writing a program to test whether two points lie along the line defined by a particular linear function. (CA CCSS for Mathematics 8.EE.7) Additionally, students could use nested loops to program a character to do the "chicken dance" by opening and closing the beak, flapping the wings, shaking the hips, and clapping four times each; this dance "chorus" is then repeated several times in its entirety.
Standard Identifier: 9-12.AP.14
Grade Range:
9–12
Concept:
Algorithms & Programming
Subconcept:
Control
Practice(s):
Creating Computational Artifacts (5.2)
Standard:
Justify the selection of specific control structures by identifying tradeoffs associated with implementation, readability, and performance.
Descriptive Statement:
The selection of control structures in a given programming language impacts readability and performance. Readability refers to how clear the program is to other programmers and can be improved through documentation. Control structures at this level may include, for example, conditional statements, loops, event handlers, and recursion. Students justify control structure selection and tradeoffs in the process of creating their own computational artifacts. The discussion of performance is limited to a theoretical understanding of execution time and storage requirements; a quantitative analysis is not expected. For example, students could compare the readability and program performance of iterative and recursive implementations of procedures that calculate the Fibonacci sequence. Alternatively, students could compare the readability and performance tradeoffs of multiple if statements versus a nested if statement.
Justify the selection of specific control structures by identifying tradeoffs associated with implementation, readability, and performance.
Descriptive Statement:
The selection of control structures in a given programming language impacts readability and performance. Readability refers to how clear the program is to other programmers and can be improved through documentation. Control structures at this level may include, for example, conditional statements, loops, event handlers, and recursion. Students justify control structure selection and tradeoffs in the process of creating their own computational artifacts. The discussion of performance is limited to a theoretical understanding of execution time and storage requirements; a quantitative analysis is not expected. For example, students could compare the readability and program performance of iterative and recursive implementations of procedures that calculate the Fibonacci sequence. Alternatively, students could compare the readability and performance tradeoffs of multiple if statements versus a nested if statement.
Standard Identifier: 9-12.AP.15
Grade Range:
9–12
Concept:
Algorithms & Programming
Subconcept:
Control
Practice(s):
Creating Computational Artifacts (5.1, 5.2, 5.3)
Standard:
Iteratively design and develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
Descriptive Statement:
In this context, relevant computational artifacts can include programs, mobile apps, or web apps. Events can be user-initiated, such as a button press, or system-initiated, such as a timer firing. For example, students might create a tool for drawing on a canvas by first implementing a button to set the color of the pen. Alternatively, students might create a game where many events control instructions executed (e.g., when a score climbs above a threshold, a congratulatory sound is played; when a user clicks on an object, the object is loaded into a basket; when a user clicks on an arrow key, the player object is moved around the screen).
Iteratively design and develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
Descriptive Statement:
In this context, relevant computational artifacts can include programs, mobile apps, or web apps. Events can be user-initiated, such as a button press, or system-initiated, such as a timer firing. For example, students might create a tool for drawing on a canvas by first implementing a button to set the color of the pen. Alternatively, students might create a game where many events control instructions executed (e.g., when a score climbs above a threshold, a congratulatory sound is played; when a user clicks on an object, the object is loaded into a basket; when a user clicks on an arrow key, the player object is moved around the screen).
Standard Identifier: 9-12.AP.17
Grade Range:
9–12
Concept:
Algorithms & Programming
Subconcept:
Modularity
Practice(s):
Developing and Using Abstractions, Creating Computational Artifacts (4.3, 5.2)
Standard:
Create computational artifacts using modular design.
Descriptive Statement:
Computational artifacts are created by combining and modifying existing computational artifacts and/or by developing new artifacts. To reduce complexity, large programs can be designed as systems of interacting modules, each with a specific role, coordinating for a common overall purpose. Students should create computational artifacts with interacting procedures, modules, and/or libraries. For example, students could incorporate a physics library into an animation of bouncing balls. Alternatively, students could integrate open-source JavaScript libraries to expand the functionality of a web application. Additionally, students could create their own game to teach Spanish vocabulary words using their own modular design (e.g., including methods to: control scoring, manage wordlists, manage access to different game levels, take input from the user, etc.).
Create computational artifacts using modular design.
Descriptive Statement:
Computational artifacts are created by combining and modifying existing computational artifacts and/or by developing new artifacts. To reduce complexity, large programs can be designed as systems of interacting modules, each with a specific role, coordinating for a common overall purpose. Students should create computational artifacts with interacting procedures, modules, and/or libraries. For example, students could incorporate a physics library into an animation of bouncing balls. Alternatively, students could integrate open-source JavaScript libraries to expand the functionality of a web application. Additionally, students could create their own game to teach Spanish vocabulary words using their own modular design (e.g., including methods to: control scoring, manage wordlists, manage access to different game levels, take input from the user, etc.).
Showing 1 - 10 of 14 Standards
Questions: Curriculum Frameworks and Instructional Resources Division |
CFIRD@cde.ca.gov | 916-319-0881