Computer Science Standards
Results
Showing 11 - 20 of 33 Standards
Standard Identifier: 3-5.IC.23
Grade Range:
3–5
Concept:
Impacts of Computing
Subconcept:
Safety, Law, & Ethics
Practice(s):
Communicating About Computing (7.3)
Standard:
Describe reasons creators might limit the use of their work.
Descriptive Statement:
Ethical complications arise from the opportunities provided by computing. With the ease of sending and receiving copies of media on the Internet, in formats such as video, photos, and music, students consider the opportunities for unauthorized use, such as online piracy and disregard of copyrights. The license of a downloaded image or audio file may restrict modification, require attribution, or prohibit use entirely. For example, students could take part in a collaborative discussion regarding reasons why musicians who sell their songs in digital format choose to license their work so that they can earn money for their creative efforts. If others share the songs without paying for them, the musicians do not benefit financially and may struggle to produce music in the future. (CA CCSS for ELA/Literacy SL.3.1, SL.4.1, SL.5.1) Alternatively, students could review the rights and reproduction guidelines for digital artifacts on a publicly accessible media source. They could then state an opinion with reasons they believe these guidelines are in place. (CA CCSS for ELA/Literacy W.3.1, W.4.1, W.5.1)
Describe reasons creators might limit the use of their work.
Descriptive Statement:
Ethical complications arise from the opportunities provided by computing. With the ease of sending and receiving copies of media on the Internet, in formats such as video, photos, and music, students consider the opportunities for unauthorized use, such as online piracy and disregard of copyrights. The license of a downloaded image or audio file may restrict modification, require attribution, or prohibit use entirely. For example, students could take part in a collaborative discussion regarding reasons why musicians who sell their songs in digital format choose to license their work so that they can earn money for their creative efforts. If others share the songs without paying for them, the musicians do not benefit financially and may struggle to produce music in the future. (CA CCSS for ELA/Literacy SL.3.1, SL.4.1, SL.5.1) Alternatively, students could review the rights and reproduction guidelines for digital artifacts on a publicly accessible media source. They could then state an opinion with reasons they believe these guidelines are in place. (CA CCSS for ELA/Literacy W.3.1, W.4.1, W.5.1)
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.3
Grade Range:
6–8
Concept:
Computing Systems
Subconcept:
Troubleshooting
Practice(s):
Testing and Refining Computational Artifacts (6.2)
Standard:
Systematically apply troubleshooting strategies to identify and resolve hardware and software problems in computing systems.
Descriptive Statement:
When problems occur within computing systems, it is important to take a structured, step-by-step approach to effectively solve the problem and ensure that potential solutions are not overlooked. Examples of troubleshooting strategies include following a troubleshooting flow diagram, making changes to software to see if hardware will work, checking connections and settings, and swapping in working components. Since a computing device may interact with interconnected devices within a system, problems may not be due to the specific computing device itself but to devices connected to it. For example, students could work through a checklist of solutions for connectivity problems in a lab of computers connected wirelessly or through physical cables. They could also search for technical information online and engage in technical reading to create troubleshooting documents that they then apply. (CA CCSS for ELA/Literacy RST.6-8.10) Alternatively, students could explore and utilize operating system tools to reset a computer's default language to English. Additionally, students could swap out an externally-controlled sensor giving fluctuating readings with a new sensor to check whether there is a hardware problem.
Systematically apply troubleshooting strategies to identify and resolve hardware and software problems in computing systems.
Descriptive Statement:
When problems occur within computing systems, it is important to take a structured, step-by-step approach to effectively solve the problem and ensure that potential solutions are not overlooked. Examples of troubleshooting strategies include following a troubleshooting flow diagram, making changes to software to see if hardware will work, checking connections and settings, and swapping in working components. Since a computing device may interact with interconnected devices within a system, problems may not be due to the specific computing device itself but to devices connected to it. For example, students could work through a checklist of solutions for connectivity problems in a lab of computers connected wirelessly or through physical cables. They could also search for technical information online and engage in technical reading to create troubleshooting documents that they then apply. (CA CCSS for ELA/Literacy RST.6-8.10) Alternatively, students could explore and utilize operating system tools to reset a computer's default language to English. Additionally, students could swap out an externally-controlled sensor giving fluctuating readings with a new sensor to check whether there is a hardware problem.
Standard Identifier: 6-8.DA.9
Grade Range:
6–8
Concept:
Data & Analysis
Subconcept:
Inference & Models
Practice(s):
Developing and Using Abstractions, Testing and Refining Computational Artifacts (4.4, 6.1)
Standard:
Test and analyze the effects of changing variables while using computational models.
Descriptive Statement:
Variables within a computational model may be changed, in order to alter a computer simulation or to more accurately represent how various data is related. Students interact with a given model, make changes to identified model variables, and observe and reflect upon the results. For example, students could test a program that makes a robot move on a track by making changes to variables (e.g., height and angle of track, size and mass of the robot) and discussing how these changes affect how far the robot travels. (CA NGSS: MS-PS2-2) Alternatively, students could test a game simulation and change variables (e.g., skill of simulated players, nature of opening moves) and analyze how these changes affect who wins the game. (CA NGSS: MS-ETS1-3) Additionally, students could modify a model for predicting the likely color of the next pick from a bag of colored candy and analyze the effects of changing variables representing the common color ratios in a typical bag of candy. (CA CCSS for Mathematics 7.SP.7, 8.SP.4)
Test and analyze the effects of changing variables while using computational models.
Descriptive Statement:
Variables within a computational model may be changed, in order to alter a computer simulation or to more accurately represent how various data is related. Students interact with a given model, make changes to identified model variables, and observe and reflect upon the results. For example, students could test a program that makes a robot move on a track by making changes to variables (e.g., height and angle of track, size and mass of the robot) and discussing how these changes affect how far the robot travels. (CA NGSS: MS-PS2-2) Alternatively, students could test a game simulation and change variables (e.g., skill of simulated players, nature of opening moves) and analyze how these changes affect who wins the game. (CA NGSS: MS-ETS1-3) Additionally, students could modify a model for predicting the likely color of the next pick from a bag of colored candy and analyze the effects of changing variables representing the common color ratios in a typical bag of candy. (CA CCSS for Mathematics 7.SP.7, 8.SP.4)
Standard Identifier: 6-8.IC.23
Grade Range:
6–8
Concept:
Impacts of Computing
Subconcept:
Safety, Law, & Ethics
Practice(s):
Communicating About Computing (7.3)
Standard:
Compare tradeoffs associated with licenses for computational artifacts to balance the protection of the creators' rights and the ability for others to use and modify the artifacts.
Descriptive Statement:
Using and building on the works of others allows people to create meaningful works and fosters innovation. Copyright is an important law that helps protect the rights of creators so they receive credit and get paid for their work. Creative Commons is a kind of copyright that makes it easier for people to copy, share, and build on creative work, as long as they give credit for it. There are different kinds of Creative Commons licenses that allow people to do things such as change, remix, or make money from their work. As creators, students can pick and choose how they want their work to be used, and then create a Creative Commons license that they include in their work. For example, students could create interactive animations to educate others on bullying or protecting the environment. They then select an appropriate license to reflect how they want their program to be used by others (e.g., allow others to use their work and alter it, as long as they do not make a profit from it). Students use established methods to both protect their artifacts and attribute use of protected artifacts.
Compare tradeoffs associated with licenses for computational artifacts to balance the protection of the creators' rights and the ability for others to use and modify the artifacts.
Descriptive Statement:
Using and building on the works of others allows people to create meaningful works and fosters innovation. Copyright is an important law that helps protect the rights of creators so they receive credit and get paid for their work. Creative Commons is a kind of copyright that makes it easier for people to copy, share, and build on creative work, as long as they give credit for it. There are different kinds of Creative Commons licenses that allow people to do things such as change, remix, or make money from their work. As creators, students can pick and choose how they want their work to be used, and then create a Creative Commons license that they include in their work. For example, students could create interactive animations to educate others on bullying or protecting the environment. They then select an appropriate license to reflect how they want their program to be used by others (e.g., allow others to use their work and alter it, as long as they do not make a profit from it). Students use established methods to both protect their artifacts and attribute use of protected artifacts.
Standard Identifier: 6-8.IC.24
Grade Range:
6–8
Concept:
Impacts of Computing
Subconcept:
Safety, Law, & Ethics
Practice(s):
Communicating About Computing (7.2)
Standard:
Compare tradeoffs between allowing information to be public and keeping information private and secure.
Descriptive Statement:
While it is valuable to establish, maintain, and strengthen connections between people online, security attacks often start with intentionally or unintentionally providing personal information online. Students identify situations where the value of keeping information public outweighs privacy concerns, and vice versa. They also recognize practices such as phishing and social engineering and explain best practices to defend against them. For example, students could discuss the benefits of artists and designers displaying their work online to reach a broader audience. Students could also compare the tradeoffs of making a shared file accessible to anyone versus restricting it to specific accounts. (CA CCSS for ELA/Literacy SL.6.1, SL.7.1, SL.8.1) Alternatively, students could discuss the benefits and dangers of the increased accessibility of information available on the internet, and then compare this to the advantages and disadvantages of the introduction of the printing press in society. (HSS.7.8.4)
Compare tradeoffs between allowing information to be public and keeping information private and secure.
Descriptive Statement:
While it is valuable to establish, maintain, and strengthen connections between people online, security attacks often start with intentionally or unintentionally providing personal information online. Students identify situations where the value of keeping information public outweighs privacy concerns, and vice versa. They also recognize practices such as phishing and social engineering and explain best practices to defend against them. For example, students could discuss the benefits of artists and designers displaying their work online to reach a broader audience. Students could also compare the tradeoffs of making a shared file accessible to anyone versus restricting it to specific accounts. (CA CCSS for ELA/Literacy SL.6.1, SL.7.1, SL.8.1) Alternatively, students could discuss the benefits and dangers of the increased accessibility of information available on the internet, and then compare this to the advantages and disadvantages of the introduction of the printing press in society. (HSS.7.8.4)
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).
Showing 11 - 20 of 33 Standards
Questions: Curriculum Frameworks and Instructional Resources Division |
CFIRD@cde.ca.gov | 916-319-0881