Skip to main content
California Department of Education Logo

Computer Science Standards




Results


Showing 11 - 20 of 31 Standards

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)

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)

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.

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)

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.

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.

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).

Standard Identifier: 9-12.AP.16

Grade Range: 9–12
Concept: Algorithms & Programming
Subconcept: Modularity
Practice(s): Recognizing and Defining Computational Problems (3.2)

Standard:
Decompose problems into smaller subproblems through systematic analysis, using constructs such as procedures, modules, and/or classes.

Descriptive Statement:
Decomposition enables solutions to complex problems to be designed and implemented as more manageable subproblems. Students decompose a given problem into subproblems that can be solved using existing functionalities, or new functionalities that they design and implement. For example, students could design a program for supporting soccer coaches in analyzing their teams' statistics. They decompose the problem in terms of managing input, analysis, and output. They decompose the data organization by designing what data will be stored per player, per game, and per team. Team players may be stored as a collection. Data per team player may include: number of shots, misses, saves, assists, penalty kicks, blocks, and corner kicks. Students design methods for supporting various statistical analyses and display options. Students design output formats for individual players or coaches.

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.).

Standard Identifier: 9-12.IC.28

Grade Range: 9–12
Concept: Impacts of Computing
Subconcept: Safety, Law, & Ethics
Practice(s): Communicating About Computing (7.3)

Standard:
Explain the beneficial and harmful effects that intellectual property laws can have on innovation.

Descriptive Statement:
Laws and ethics govern aspects of computing such as privacy, data, property, information, and identity. Students explain the beneficial and harmful effects of intellectual property laws as they relate to potential innovations and governance. For example, students could explain how patents protect inventions but may limit innovation. Alternatively, students could explain how intellectual property laws requiring that artists be paid for use of their media might limit the choice of songs developers can use in their computational artifacts.

Showing 11 - 20 of 31 Standards


Questions: Curriculum Frameworks and Instructional Resources Division | CFIRD@cde.ca.gov | 916-319-0881