Skip to main content
California Department of Education Logo

Computer Science Standards




Results


Showing 11 - 17 of 17 Standards

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.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.DA.8

Grade Range: 9–12
Concept: Data & Analysis
Subconcept: Storage
Practice(s): Developing and Using Abstractions (4.1)

Standard:
Translate between different representations of data abstractions of real-world phenomena, such as characters, numbers, and images.

Descriptive Statement:
Computers represent complex real-world concepts such as characters, numbers, and images through various abstractions. Students translate between these different levels of data representations. For example, students could convert an HTML (Hyper Text Markup Language) tag for red font into RGB (Red Green Blue), HEX (Hexadecimal Color Code), HSL (Hue Saturation Lightness), RGBA( Red Green Blue Alpha), or HSLA (Hue Saturation Lightness and Alpha) representations. Alternatively, students could convert the standard representation of a character such as ! into ASCII or Unicode.

Standard Identifier: 9-12.NI.7

Grade Range: 9–12
Concept: Networks & the Internet
Subconcept: Cybersecurity
Practice(s): Recognizing and Defining Computational Problems, Developing and Using Abstractions (3.3, 4.4)

Standard:
Compare and contrast cryptographic techniques to model the secure transmission of information.

Descriptive Statement:
Cryptography is a technique for transforming information on a computer in such a way that it becomes unreadable by anyone except authorized parties. Cryptography is useful for supporting secure communication of data across networks. Examples of cryptographic methods include hashing, symmetric encryption/decryption (private key), and assymmetric encryption/decryption (public key/private key). Students use software to encode and decode messages using cryptographic methods. Students compare the costs and benefits of using various cryptographic methods. At this level, students are not expected to perform the mathematical calculations associated with encryption and decryption. For example, students could compare and contrast multiple examples of symmetric cryptographic techiques. Alternatively, students could compare and contrast symmetric and asymmetric cryptographic techniques in which they apply for a given scenario.

Standard Identifier: 9-12S.AP.12

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

Standard:
Implement searching and sorting algorithms to solve computational problems.

Descriptive Statement:
One of the core uses of computers is to store, organize, and retrieve information when working with large amounts of data. Students create computational artifacts that use searching and/or sorting algorithms to retrieve, organize, or store information. Students do not need to select their algorithm based on efficiency. For example, students could write a script to sequence their classmates in order from youngest to oldest. Alternatively, students could write a program to find certain words within a text and report their location.

Standard Identifier: 9-12S.AP.23

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

Standard:
Modify an existing program to add additional functionality and discuss intended and unintended implications.

Descriptive Statement:
Modularity and code reuse is key in modern software. However, when code is modified, the programmer should consider relevant situations in which this code might be used in other places. Students create and document modifications to existing programs that enhance functionality, and then identify, document, and correct unintended consequences. For example, students could take an existing a procedure that calculates the average of a set of numbers and returns an integer (which lacks precision) and modify it to return a floating-point number instead. The student would explain how the change might impact multiple scenarios.

Standard Identifier: 9-12S.NI.6

Grade Range: 9–12 Specialty
Concept: Networks & the Internet
Subconcept: Cybersecurity
Practice(s): Recognizing and Defining Computational Problems, Developing and Using Abstractions (3.3, 4.2)

Standard:
Analyze cryptographic techniques to model the secure transmission of information.

Descriptive Statement:
Cryptography is essential to many models of cybersecurity. Open standards help to ensure cryptographic security. Certificate Authorities (CAs) issue digital certificates that validate the ownership of encrypted keys used in secured communications across the Internet. Students encode and decode messages using encryption and decryption methods, and they should understand the different levels of complexity to hide or secure information. For example, students could analyze the relative designs of private key vs. public key encryption techniques and apply the best choice for a particular scenario. Alternatively, students could analyze the design of the Diffie-Helman algorithm to RSA (Rivest–Shamir–Adleman) and apply the best choice for a particular scenario. They could provide a cost-benefit analysis of runtime and ease of cracking for various encryption techniques which are commonly used to secure transmission of data over the Internet.

Showing 11 - 17 of 17 Standards


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