Skip to main content
California Department of Education Logo

Computer Science Standards




Results


Showing 11 - 20 of 27 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.CS.2

Grade Range: 6–8
Concept: Computing Systems
Subconcept: Hardware & Software
Practice(s): Creating Computational Artifacts (5.1)

Standard:
Design a project that combines hardware and software components to collect and exchange data.

Descriptive Statement:
Collecting and exchanging data involves input, output, storage, and processing. When possible, students select the components for their project designs by considering tradeoffs between factors such as functionality, cost, size, speed, accessibility, and aesthetics. Students do not need to implement their project design in order to meet this standard. For example, students could design a mobile tour app that displays information relevant to specific locations when the device is nearby or when the user selects a virtual stop on the tour. They select appropriate components, such as GPS or cellular-based geolocation tools, textual input, and speech recognition, to use in their project design. Alternatively, students could design a project that uses a sensor to collect the salinity, moisture, and temperature of soil. They may select a sensor that connects wirelessly through a Bluetooth connection because it supports greater mobility, or they could instead select a physical USB connection that does not require a separate power source. (CA NGSS: MS-ETS1-1, MS-ETS1-2)

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.

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.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.CS.2

Grade Range: 9–12
Concept: Computing Systems
Subconcept: Hardware & Software
Practice(s): Developing and Using Abstractions (4.1)

Standard:
Compare levels of abstraction and interactions between application software, system software, and hardware.

Descriptive Statement:
At its most basic level, a computer is composed of physical hardware on which software runs. Multiple layers of software are built upon various layers of hardware. Layers manage interactions and complexity in the computing system. System software manages a computing device's resources so that software can interact with hardware. Application software communicates with the user and the system software to accomplish its purpose. Students compare and describe how application software, system software, and hardware interact. For example, students could compare how various levels of hardware and software interact when a picture is to be taken on a smartphone. Systems software provides low-level commands to operate the camera hardware, but the application software interacts with system software at a higher level by requesting a common image file format (e.g., .png) that the system software provides.

Standard Identifier: 9-12.CS.3

Grade Range: 9–12
Concept: Computing Systems
Subconcept: Troubleshooting
Practice(s): Testing and Refining Computational Artifacts (6.2)

Standard:
Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors.

Descriptive Statement:
Troubleshooting complex problems involves the use of multiple sources when researching, evaluating, and implementing potential solutions. Troubleshooting also relies on experience, such as when people recognize that a problem is similar to one they have seen before and adapt solutions that have worked in the past. For example, students could create a list of troubleshooting strategies to debug network connectivity problems such as checking hardware and software status and settings, rebooting devices, and checking security settings. Alternatively, students could create troubleshooting guidelines for help desk employees based on commonly observed problems (e.g., problems connecting a new device to the computer, problems printing from a computer to a network printer).

Standard Identifier: 9-12S.AP.10

Grade Range: 9–12 Specialty
Concept: Algorithms & Programming
Subconcept: Algorithms
Practice(s): Recognizing and Defining Computational Problems, Communicating About Computing (3.1, 7.2)

Standard:
Describe how artificial intelligence drives many software and physical systems.

Descriptive Statement:
Artificial intelligence is a sub-discipline of computer science that enables computers to solve problems previously handled by biological systems. There are many applications of artificial intelligence, including computer vision and speech recognition. Students research and explain how artificial intelligence has been employed in a given system. Students are not expected to implement an artificially intelligent system in order to meet this standard. For example, students could observe an artificially intelligent system and notice where its behavior is not human-like, such as when a character in a videogame makes a mistake that a human is unlikely to make, or when a computer easily beats even the best human players at a given game. Alternatively, students could interact with a search engine asking various questions, and after reading articles on the topic, they could explain how the computer is able to respond to queries.

Showing 11 - 20 of 27 Standards


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