Skip to main content
California Department of Education Logo

Computer Science Standards




Results


Showing 1 - 10 of 17 Standards

Standard Identifier: K-2.AP.10

Grade Range: K–2
Concept: Algorithms & Programming
Subconcept: Algorithms
Practice(s): Recognizing and Defining Computational Problems, Developing and Using Abstractions (3.2, 4.4)

Standard:
Model daily processes by creating and following algorithms to complete tasks.

Descriptive Statement:
Algorithms are sequences of instructions that describe how to complete a specific task. Students create algorithms that reflect simple life tasks inside and outside of the classroom. For example, students could create algorithms to represent daily routines for getting ready for school, transitioning through center rotations, eating lunch, and putting away art materials. Students could then write a narrative sequence of events. (CA CCSS for ELA/Literacy W.K.3, W.1.3, W.2.3) Alternatively, students could create a game or a dance with a specific set of movements to reach an intentional goal or objective. (P.E K.2, 1.2, 2.2) Additionally, students could create a map of their neighborhood and give step-by-step directions of how they get to school. (HSS.K.4, 1.2, 2.2)

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

Standard Identifier: K-2.DA.8

Grade Range: K–2
Concept: Data & Analysis
Subconcept: Collection, Visualization, & Transformation
Practice(s): Developing and Using Abstractions, Communicating About Computing (4.4, 7.1)

Standard:
Collect and present data in various visual formats.

Descriptive Statement:
Data can be collected and presented in various visual formats. For example, students could measure temperature changes throughout a day. They could then discuss ways to display the data visually. Students could extend the activity by writing different narratives based on collected data, such as a story that begins in the morning when temperatures are low and one that begins in the afternoon when the sun is high and temperatures are higher. (CA CCSS for ELA/Literacy RL.K.9, RL.1.9, RL.2.9, W.K.3, W.1.3, W.2.3). Alternatively, students collect peers' favorite flavor of ice cream and brainstorm differing ways to display the data. In groups, students can choose to display and present the data in a format of their choice. (CA CCSS for Mathematics K.MD.3, 1.MD.4, 2.MD.10)

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)

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.

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.

Standard Identifier: 6-8.AP.16

Grade Range: 6–8
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Developing and Using Abstractions, Creating Computational Artifacts, Communicating About Computing (4.2, 5.2, 7.3)

Standard:
Incorporate existing code, media, and libraries into original programs, and give attribution.

Descriptive Statement:
Building on the work of others enables students to produce more interesting and powerful creations. Students use portions of code, algorithms, digital media, and/or data created by others in their own programs and websites. They give attribution to the original creators to acknowledge their contributions. For example, when creating a side-scrolling game, students may incorporate portions of code that create a realistic jump movement from another person's game, and they may also import Creative Commons-licensed images to use in the background. Alternatively, when creating a website to demonstrate their knowledge of historical figures from the Civil War, students may use a professionally-designed template and public domain images of historical figures. (HSS.8.10.5) Additionally, students could import libraries and connect to web application program interfaces (APIs) to make their own programming processes more efficient and reduce the number of bugs (e.g., to check whether the user input is a valid date, to input the current temperature from another city).

Standard Identifier: 6-8.AP.17

Grade Range: 6–8
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Testing and Refining Computational Artifacts (6.1)

Standard:
Systematically test and refine programs using a range of test cases.

Descriptive Statement:
Use cases and test cases are created to evaluate whether programs function as intended. At this level, students develop use cases and test cases with teacher guidance. Testing should become a deliberate process that is more iterative, systematic, and proactive than at lower levels. For example, students test programs by considering potential errors, such as what will happen if a user enters invalid input (e.g., negative numbers and 0 instead of positive numbers). Alternatively, in an interactive program, students could test that the character cannot move off of the screen in any direction, cannot move through walls, and can interact with other characters. They then adjust character behavior as needed.

Standard Identifier: 9-12.AP.12

Grade Range: 9–12
Concept: Algorithms & Programming
Subconcept: Algorithms
Practice(s): Developing and Using Abstractions, Creating Computational Artifacts (4.2, 5.1)

Standard:
Design algorithms to solve computational problems using a combination of original and existing algorithms.

Descriptive Statement:
Knowledge of common algorithms improves how people develop software, secure data, and store information. Some algorithms may be easier to implement in a particular programming language, work faster, require less memory to store data, and be applicable in a wider variety of situations than other algorithms. Algorithms used to search and sort data are common in a variety of software applications. For example, students could design an algorithm to calculate and display various sports statistics and use common sorting or mathematical algorithms (e.g., average) in the design of the overall algorithm. Alternatively, students could design an algorithm to implement a game and use existing randomization algorithms to place pieces randomly in starting positions or to control the "roll" of a dice or selection of a "card" from a deck.

Standard Identifier: 9-12.AP.20

Grade Range: 9–12
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Testing and Refining Computational Artifacts (6.3)

Standard:
Iteratively evaluate and refine a computational artifact to enhance its performance, reliability, usability, and accessibility.

Descriptive Statement:
Evaluation and refinement of computational artifacts involves measuring, testing, debugging, and responding to the changing needs and expectations of users. Aspects that can be evaluated include correctness, performance, reliability, usability, and accessibility. For example, after witnessing common errors with user input in a computational artifact, students could refine the artifact to validate user input and provide an error message if invalid data is provided. Alternatively, students could observe a robot in a variety of lighting conditions to determine whether the code controlling a light sensor should be modified to make it less sensitive. Additionally, students could also incorporate feedback from a variety of end users to help guide the size and placement of menus and buttons in a user interface.

Showing 1 - 10 of 17 Standards


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