Computer Science Standards
Remove this criterion from the search
Algorithms
Remove this criterion from the search
Control
Remove this criterion from the search
Devices
Remove this criterion from the search
Modularity
Remove this criterion from the search
Network Communication & Organization
Remove this criterion from the search
Variables
Results
Showing 11 - 20 of 41 Standards
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: 3-5.NI.4
Grade Range:
3–5
Concept:
Networks & the Internet
Subconcept:
Network Communication & Organization
Practice(s):
Developing and Using Abstractions (4.4)
Standard:
Model how information is broken down into smaller pieces, transmitted as packets through multiple devices over networks and the Internet, and reassembled at the destination.
Descriptive Statement:
Information is sent and received over physical or wireless paths. It is broken down into smaller pieces called packets, which are sent independently and reassembled at the destination. Students demonstrate their understanding of this flow of information by, for instance, drawing a model of the way packets are transmitted, programming an animation to show how packets are transmitted, or demonstrating this through an unplugged activity in which they physically act this out. For example, students could design a structure using building blocks or other materials with the intention of re-engineering it in another location, just as early Americans did after the intercontinental railroad was constructed in the 1850s (HSS.4.4.1, 4.4.2). Students could deconstruct the designed structure, place materials into specific containers (or plastic bags/brown paper bags/etc.), and develop instructions on how to recreate the structure once each container arrives at its intended destination. (CA NGSS: 3-5-ETS1) For example, students could cut up a map of the United States by state lines. Students could then place the states in envelopes and transmit the "packets" through a physical network, represented by multiple students spreading out in arms reach of at least two others. At the destination, the student who receives the packets resassembles the individual states back into a map of the United States. (HSS 5.9) Alternatively, students could perform a similar activity with a diatonic scale, cutting the scale into individual notes. Each note, in order, should be placed into a numbered envelope based on its location on the scale. These envelopes can be transmitted across the network of students and reassembled at the destination. (VAPA Music 4.1.2)
Model how information is broken down into smaller pieces, transmitted as packets through multiple devices over networks and the Internet, and reassembled at the destination.
Descriptive Statement:
Information is sent and received over physical or wireless paths. It is broken down into smaller pieces called packets, which are sent independently and reassembled at the destination. Students demonstrate their understanding of this flow of information by, for instance, drawing a model of the way packets are transmitted, programming an animation to show how packets are transmitted, or demonstrating this through an unplugged activity in which they physically act this out. For example, students could design a structure using building blocks or other materials with the intention of re-engineering it in another location, just as early Americans did after the intercontinental railroad was constructed in the 1850s (HSS.4.4.1, 4.4.2). Students could deconstruct the designed structure, place materials into specific containers (or plastic bags/brown paper bags/etc.), and develop instructions on how to recreate the structure once each container arrives at its intended destination. (CA NGSS: 3-5-ETS1) For example, students could cut up a map of the United States by state lines. Students could then place the states in envelopes and transmit the "packets" through a physical network, represented by multiple students spreading out in arms reach of at least two others. At the destination, the student who receives the packets resassembles the individual states back into a map of the United States. (HSS 5.9) Alternatively, students could perform a similar activity with a diatonic scale, cutting the scale into individual notes. Each note, in order, should be placed into a numbered envelope based on its location on the scale. These envelopes can be transmitted across the network of students and reassembled at the destination. (VAPA Music 4.1.2)
Standard Identifier: 6-8.AP.10
Grade Range:
6–8
Concept:
Algorithms & Programming
Subconcept:
Algorithms
Practice(s):
Developing and Using Abstractions (4.1, 4.4)
Standard:
Use flowcharts and/or pseudocode to design and illustrate algorithms that solve complex problems.
Descriptive Statement:
Complex problems are problems that would be difficult for students to solve without breaking them down into multiple steps. Flowcharts and pseudocode are used to design and illustrate the breakdown of steps in an algorithm. Students design and illustrate algorithms using pseudocode and/or flowcharts that organize and sequence the breakdown of steps for solving complex problems. For example, students might use a flowchart to illustrate an algorithm that produces a recommendation for purchasing sneakers based on inputs such as size, colors, brand, comfort, and cost. Alternatively, students could write pseudocode to express an algorithm for suggesting their outfit for the day, based on inputs such as the weather, color preferences, and day of the week.
Use flowcharts and/or pseudocode to design and illustrate algorithms that solve complex problems.
Descriptive Statement:
Complex problems are problems that would be difficult for students to solve without breaking them down into multiple steps. Flowcharts and pseudocode are used to design and illustrate the breakdown of steps in an algorithm. Students design and illustrate algorithms using pseudocode and/or flowcharts that organize and sequence the breakdown of steps for solving complex problems. For example, students might use a flowchart to illustrate an algorithm that produces a recommendation for purchasing sneakers based on inputs such as size, colors, brand, comfort, and cost. Alternatively, students could write pseudocode to express an algorithm for suggesting their outfit for the day, based on inputs such as the weather, color preferences, and day of the week.
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: 6-8.AP.13
Grade Range:
6–8
Concept:
Algorithms & Programming
Subconcept:
Modularity
Practice(s):
Recognizing and Defining Computational Problems (3.2)
Standard:
Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs.
Descriptive Statement:
Decomposition facilitates program development by allowing students to focus on one piece at a time (e.g., getting input from the user, processing the data, and displaying the result to the user). Decomposition also enables different students to work on different parts at the same time. Students break down (decompose) problems into subproblems, which can be further broken down to smaller parts. Students could create an arcade game, with a title screen, a game screen, and a win/lose screen with an option to play the game again. To do this, students need to identify subproblems that accompany each screen (e.g., selecting an avatar goes in the title screen, events for controlling character action and scoring goes in the game screen, and displaying final and high score and asking whether to play again goes in the win/lose screen). Alternatively, students could decompose the problem of calculating and displaying class grades. Subproblems might include: accept input for students grades on various assignments, check for invalid grade entries, calculate per assignment averages, calculate per student averages, and display histograms of student scores for each assignment. (CA CCSS for Mathematics 6.RP.3c, 6.SP.4, 6.SP.5)
Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs.
Descriptive Statement:
Decomposition facilitates program development by allowing students to focus on one piece at a time (e.g., getting input from the user, processing the data, and displaying the result to the user). Decomposition also enables different students to work on different parts at the same time. Students break down (decompose) problems into subproblems, which can be further broken down to smaller parts. Students could create an arcade game, with a title screen, a game screen, and a win/lose screen with an option to play the game again. To do this, students need to identify subproblems that accompany each screen (e.g., selecting an avatar goes in the title screen, events for controlling character action and scoring goes in the game screen, and displaying final and high score and asking whether to play again goes in the win/lose screen). Alternatively, students could decompose the problem of calculating and displaying class grades. Subproblems might include: accept input for students grades on various assignments, check for invalid grade entries, calculate per assignment averages, calculate per student averages, and display histograms of student scores for each assignment. (CA CCSS for Mathematics 6.RP.3c, 6.SP.4, 6.SP.5)
Standard Identifier: 6-8.AP.14
Grade Range:
6–8
Concept:
Algorithms & Programming
Subconcept:
Modularity
Practice(s):
Developing and Using Abstractions (4.1, 4.3)
Standard:
Create procedures with parameters to organize code and make it easier to reuse.
Descriptive Statement:
Procedures support modularity in developing programs. Parameters can provide greater flexibility, reusability, and efficient use of resources. Students create procedures and/or functions that are used multiple times within a program to repeat groups of instructions. They generalize the procedures and/or functions by defining parameters that generate different outputs for a wide range of inputs. For example, students could create a procedure to draw a circle which involves many instructions, but all of them can be invoked with one instruction, such as “drawCircle.” By adding a radius parameter, students can easily draw circles of different sizes. (CA CCSS for Mathematics 7.G.4) Alternatively, calculating the area of a regular polygon requires multiple steps. Students could write a function that accepts the number and length of the sides as parameters and then calculates the area of the polygon. This function can then be re-used inside any program to calculate the area of a regular polygon. (CA CCSS for Mathematics 6.G.1)
Create procedures with parameters to organize code and make it easier to reuse.
Descriptive Statement:
Procedures support modularity in developing programs. Parameters can provide greater flexibility, reusability, and efficient use of resources. Students create procedures and/or functions that are used multiple times within a program to repeat groups of instructions. They generalize the procedures and/or functions by defining parameters that generate different outputs for a wide range of inputs. For example, students could create a procedure to draw a circle which involves many instructions, but all of them can be invoked with one instruction, such as “drawCircle.” By adding a radius parameter, students can easily draw circles of different sizes. (CA CCSS for Mathematics 7.G.4) Alternatively, calculating the area of a regular polygon requires multiple steps. Students could write a function that accepts the number and length of the sides as parameters and then calculates the area of the polygon. This function can then be re-used inside any program to calculate the area of a regular polygon. (CA CCSS for Mathematics 6.G.1)
Standard Identifier: 6-8.CS.1
Grade Range:
6–8
Concept:
Computing Systems
Subconcept:
Devices
Practice(s):
Fostering an Inclusive Computing Culture, Recognizing and Defining Computational Problems (1.2, 3.3)
Standard:
Design modifications to computing devices in order to improve the ways users interact with the devices.
Descriptive Statement:
Computing devices can extend the abilities of humans, but design considerations are critical to make these devices useful. Students suggest modifications to the design of computing devices and describe how these modifications would improve usabilty. For example, students could create a design for the screen layout of a smartphone that is more usable by people with vision impairments or hand tremors. They might also design how to use the device as a scanner to convert text to speech. Alternatively, students could design modifications for a student ID card reader to increase usability by planning for scanner height, need of scanner device to be connected physically to the computer, robustness of scanner housing, and choice of use of RFID or line of sight scanners. (CA NGSS: MS-ETS1-1)
Design modifications to computing devices in order to improve the ways users interact with the devices.
Descriptive Statement:
Computing devices can extend the abilities of humans, but design considerations are critical to make these devices useful. Students suggest modifications to the design of computing devices and describe how these modifications would improve usabilty. For example, students could create a design for the screen layout of a smartphone that is more usable by people with vision impairments or hand tremors. They might also design how to use the device as a scanner to convert text to speech. Alternatively, students could design modifications for a student ID card reader to increase usability by planning for scanner height, need of scanner device to be connected physically to the computer, robustness of scanner housing, and choice of use of RFID or line of sight scanners. (CA NGSS: MS-ETS1-1)
Standard Identifier: 6-8.NI.4
Grade Range:
6–8
Concept:
Networks & the Internet
Subconcept:
Network Communication & Organization
Practice(s):
Developing and Using Abstractions (4.4)
Standard:
Model the role of protocols in transmitting data across networks and the Internet.
Descriptive Statement:
Protocols are rules that define how messages between computers are sent. They determine how quickly and securely information is transmitted across networks, as well as how to handle errors in transmission. Students model how data is sent using protocols to choose the fastest path and to deal with missing information. Knowledge of the details of how specific protocols work is not expected. The priority at this grade level is understanding the purpose of protocols and how they enable efficient and errorless communication. For example, students could devise a plan for sending data representing a textual message and devise a plan for resending lost information. Alternatively, students could devise a plan for sending data to represent a picture, and devise a plan for interpreting the image when pieces of the data are missing. Additionally, students could model the speed of sending messages by Bluetooth, Wi-Fi, or cellular networks and describe ways errors in data transmission can be detected and dealt with.
Model the role of protocols in transmitting data across networks and the Internet.
Descriptive Statement:
Protocols are rules that define how messages between computers are sent. They determine how quickly and securely information is transmitted across networks, as well as how to handle errors in transmission. Students model how data is sent using protocols to choose the fastest path and to deal with missing information. Knowledge of the details of how specific protocols work is not expected. The priority at this grade level is understanding the purpose of protocols and how they enable efficient and errorless communication. For example, students could devise a plan for sending data representing a textual message and devise a plan for resending lost information. Alternatively, students could devise a plan for sending data to represent a picture, and devise a plan for interpreting the image when pieces of the data are missing. Additionally, students could model the speed of sending messages by Bluetooth, Wi-Fi, or cellular networks and describe ways errors in data transmission can be detected and dealt with.
Showing 11 - 20 of 41 Standards
Questions: Curriculum Frameworks and Instructional Resources Division |
CFIRD@cde.ca.gov | 916-319-0881