Skip to main content
California Department of Education Logo

Computer Science Standards




Results


Showing 31 - 40 of 43 Standards

Standard Identifier: 9-12.NI.5

Grade Range: 9–12
Concept: Networks & the Internet
Subconcept: Network Communication & Organization
Practice(s): Communicating About Computing (7.2)

Standard:
Describe the design characteristics of the Internet.

Descriptive Statement:
The Internet connects devices and networks all over the world. Large-scale coordination occurs among many different machines across multiple paths every time a web page is opened or an image is viewed online. Through the domain name system (DNS), devices on the Internet can look up Internet Protocol (IP) addresses, allowing end-to-end communication between devices. The design decisions that direct the coordination among systems composing the Internet also allow for scalability and reliability. Students factor historical, cultural, and economic decisions in their explanations of the Internet. For example, students could explain how hierarchy in the DNS supports scalability and reliability. Alternatively, students could describe how the redundancy of routing between two nodes on the Internet increases reliability and scales as the Internet grows.

Standard Identifier: 9-12.NI.6

Grade Range: 9–12
Concept: Networks & the Internet
Subconcept: Cybersecurity
Practice(s): Communicating About Computing (7.2)

Standard:
Compare and contrast security measures to address various security threats.

Descriptive Statement:
Network security depends on a combination of hardware, software, and practices that control access to data and systems. The needs of users and the sensitivity of data determine the level of security implemented. Potential security problems, such as denial-of-service attacks, ransomware, viruses, worms, spyware, and phishing, present threats to sensitive data. Students compare and contrast different types of security measures based on factors such as efficiency, feasibility, ethical impacts, usability, and security. At this level, students are not expected to develop or implement the security measures that they discuss. For example, students could review case studies or current events in which governments or organizations experienced data leaks or data loss as a result of these types of attacks. Students could provide an analysis of actual security measures taken comparing to other security measure which may have led to different outcomes. Alternatively, students might discuss computer security policies in place at the local level that present a tradeoff between usability and security, such as a web filter that prevents access to many educational sites but keeps the campus network safe.

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

Grade Range: 9–12 Specialty
Concept: Algorithms & Programming
Subconcept: Modularity
Practice(s): Recognizing and Defining Computational Problems, Developing and Using Abstractions (3.2, 4.2)

Standard:
Analyze a large-scale computational problem and identify generalizable patterns or problem components that can be applied to a solution.

Descriptive Statement:
As students encounter complex, real-world problems that span multiple disciplines or social systems, they need to be able to decompose problems and apply already developed code as part of their solutions. Students decompose complex problems into manageable subproblems that could potentially be solved with programs or procedures that can be reused or already exist. For example, in analyzing an Internet radio app, students could identify that users need to create an account and enter a password. They could identify a common application programming interface (API) for checking and displaying password strength. Additionally, students could recognize that the songs would need to be sorted by the time last played in order to display the most recently played songs and identify a common API for sorting dates from most to least recent. Alternatively, in analyzing the problem of tracking medical treatment in a hospital, students could recognize that patient records need to be stored in a database and identify a database solution to support quick access and modification of patient records. Additionally, they could recognize that records in the database need to be stored securely and could identify an encryption API to support the desired level of privacy.

Standard Identifier: 9-12S.AP.17

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

Standard:
Construct solutions to problems using student-created components, such as procedures, modules, and/or objects.

Descriptive Statement:
Programmers often address complex tasks through design and decomposition using procedures and/or modules. In object-oriented programming languages, classes can support this decomposition. Students create a computational artifact that solves a problem through use of procedures, modules, and/or objects. This problem should be of sufficient complexity to benefit from decomposition and/or use of objects. For example, students could write a flashcard program in which each card is able to show both the question and answer and record user history. Alternatively, students could create a simulation of an ecosystem in which sprites carry out behaviors, such as consuming resources.

Standard Identifier: 9-12S.AP.18

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

Standard:
Demonstrate code reuse by creating programming solutions using libraries and APIs.

Descriptive Statement:
Code reuse is critical both for managing complexity in modern programs, but also in increasing programming efficiency and reliability by having programmers reuse code that has been highly vetted and tested. Software libraries allow developers to integrate common and often complex functionality without having to reimplement that functionality from scratch. Students identify, evaluate, and select appropriate application programming interfaces (APIs) from software libraries to use with a given language and operating system. They appropriately use resources such as technical documentation, online forums, and developer communities to learn about libraries and troubleshoot problems with APIs that they have chosen. For example, students could import charting and graphing modules to display data sets, adopt an online service that provides cloud storage and retrieval for a database used in a multiplayer game, or import location services into an app that identifies points of interest on a map. Libraries of APIs can be student-created or publicly available (e.g., common graphics libraries or map/navigation APIs).

Standard Identifier: 9-12S.IC.27

Grade Range: 9–12 Specialty
Concept: Impacts of Computing
Subconcept: Culture
Practice(s): Fostering an Inclusive Computing Culture, Testing and Refining Computational Artifacts (1.2, 6.1)

Standard:
Evaluate computational artifacts with regard to improving their beneficial effects and reducing harmful effects on society.

Descriptive Statement:
People design computational artifacts to help make the lives of humans better. Students evaluate an artifact and comment on aspects of it which positively or negatively impact users and give ideas for reducing the possible negative impacts. For example, students could discuss how algorithms that screen job candidates' resumes can cut costs for companies (a beneficial effect) but introduce or amplify bias in the hiring process (a harmful effect). Alternatively, students could discuss how turn-by-turn navigation tools can help drivers avoid traffic and find alternate routes (a beneficial effect), but sometimes channel large amounts of traffic down small neighborhood streets (a harmful effect). Additionally, students could discuss how social media algorithms can help direct users' attention to interesting content (a beneficial effect), while simultaneously limiting users' exposure to information that contradicts pre-existing beliefs (a harmful effect).

Standard Identifier: 9-12S.IC.28

Grade Range: 9–12 Specialty
Concept: Impacts of Computing
Subconcept: Culture
Practice(s): Communicating About Computing (7.2)

Standard:
Evaluate how computational innovations that have revolutionized aspects of our culture might evolve.

Descriptive Statement:
It is important to be able to evaluate current technologies and innovations and their potential for future impact on society. Students describe how a given computational innovation might change in the future and impacts these evolutions could have on society, economy, or culture. For example, students could consider ways in which computers may support education (or healthcare) in the future, or how developments in virtual reality might impact arts and entertainment. Alternatively, students could consider how autonomous vehicles will affect individuals' car ownership and car use habits as well as industries that employ human drivers (e.g., trucking, taxi service).

Standard Identifier: 9-12S.IC.29

Grade Range: 9–12 Specialty
Concept: Impacts of Computing
Subconcept: Culture
Practice(s): Fostering an Inclusive Computing Culture (1.2)

Standard:
Evaluate the impact of equity, access, and influence on the distribution of computing resources in a global society.

Descriptive Statement:
Computers, computation, and technology can help improve the lives of humans and support positive developments in society, economy, and/or culture. However, access to such resources is not the same for everyone in the world. Students define and evaluate ways in which different technologies, applications, or computational tools might benefit all people in society or might only benefit those with the greatest access or resources. For example, students could describe ways in which groups of people benefit, do not benefit, or could benefit better by access to high-speed Internet connectivity. Alternatively, students could describe educational impacts of children not having access to a computer in their home.

Standard Identifier: 9-12S.NI.3

Grade Range: 9–12 Specialty
Concept: Networks & the Internet
Subconcept: Network Communication & Organization
Practice(s): Developing and Using Abstractions (4.4)

Standard:
Examine the scalability and reliability of networks, by describing the relationship between routers, switches, servers, topology, and addressing.

Descriptive Statement:
Choice of network topology is determined, in part, by how many devices can be supported and the character of communication needs between devices. Each device is assigned an address that uniquely identifies it on the network. Routers function by comparing addresses to determine how information on the network should reach its desgination. Switches compare addresses to determine which computers will receive information. Students explore and explain how network performance degrades when various factors affect the network. For example, students could use online network simulators to describe how network performance changes when the number of devices increases. Alternatively, students could visualize and describe changes to the distribution of network traffic when a router on the network fails.

Showing 31 - 40 of 43 Standards


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