Skip to main content
California Department of Education Logo

Computer Science Standards




Results


Showing 11 - 16 of 16 Standards

Standard Identifier: 9-12.AP.19

Grade Range: 9–12
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Communicating About Computing (7.3)

Standard:
Explain the limitations of licenses that restrict use of computational artifacts when using resources such as libraries.

Descriptive Statement:
Software licenses include copyright, freeware, and open-source licensing schemes. Licenses are used to protect the intellectual property of the author while also defining accessibility of the code. Students consider licensing implications for their own work, especially when incorporating libraries and other resources. For example, students might consider two software libraries that address a similar need, justifying their choice of one over the other. The choice could be based upon least restrictive licensing or further protections for their own intellectual property.

Standard Identifier: 9-12.AP.22

Grade Range: 9–12
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Communicating About Computing (7.2)

Standard:
Document decisions made during the design process using text, graphics, presentations, and/or demonstrations in the development of complex programs.

Descriptive Statement:
Complex programs are often iteratively designed as systems of interacting modules, each with a specific role, coordinating for a common overall purpose. Comments are included in code both to document the purpose of modules as well as the implementation details within a module. Together these support documentation of the design process. Students use resources such as libraries and tools to edit and manage parts of the program and corresponding documentation. For example, during development of a computational artifact students could comment their code (with date, modification, and rationale), sketch a flowchart to summarize control flow in a code journal, and share ideas and updates on a white board. Students may document their logic by explaining the development process and presenting to the class. The presentation could include photos of their white board, a video or screencast explaining the development process, or recorded audio description.

Standard Identifier: 9-12.DA.11

Grade Range: 9–12
Concept: Data & Analysis
Subconcept: Inference & Models
Practice(s): Developing and Using Abstractions, Testing and Refining Computational Artifacts (4.4, 6.3)

Standard:
Refine computational models to better represent the relationships among different elements of data collected from a phenomenon or process.

Descriptive Statement:
Computational models are used to make predictions about processes or phenomena based on selected data and features. They allow people to investigate the relationships among different variables to understand a system. Predictions are tested to validate models. Students evaluate these models against real-world observations. For example, students could use a population model that allows them to speculate about interactions among different species, evaluate the model based on data gathered from nature, and then refine the model to reflect more complex and realistic interactions.

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.AP.26

Grade Range: 9–12 Specialty
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Communicating About Computing (7.2)

Standard:
Compare multiple programming languages, and discuss how their features make them suitable for solving different types of problems.

Descriptive Statement:
Particular problems may be more effectively solved using some programming languages than other programming languages. Students provide a rationale for why a specific programming language is better suited for a solving a particular class of problem. For example, students could explain how a language with a large library base can make developing a web application easier. Alternatively, students could explain how languages that support particular programming paradigms (e.g., object-oriented or functional) can make implementation more aligned with design choices. Additionally, students could discuss how languages that implement garbage collection are good for simplicity of memory management, but may result in poor performance characteristics.

Standard Identifier: 9-12S.DA.9

Grade Range: 9–12 Specialty
Concept: Data & Analysis
Subconcept: Inference & Models
Practice(s): Developing and Using Abstractions (4.4)

Standard:
Evaluate the ability of models and simulations to test and support the refinement of hypotheses.

Descriptive Statement:
A model could be implemented as a diagram or a program that represents key properties of a physical or other system. A simulation is based on a model, and enables observation of the system as key properties change. Students explore, explain, and evaluate existing models and simulations, in order to support the refinement of hypotheses about how the systems work. At this level, the ability to accurately and completely model and simulate complex systems is not expected. For example, a computer model of ants following a path created by other ants who found food explains the trail-like travel patterns of the insect. Students could evaluate if the output of the model fits well with their hypothesis that ants navigate the world through the use of pheromones. They could explain how the computer model supports this hypothesis and how it might leave out certain aspects of ant behavior and whether these are important to understanding ant travel behavior. Alternatively, students could hypothesize how different ground characteristics (e.g., soil type, thickness of sediment above bedrock) relate to the severity of shaking at the surface during an earthquake. They could add or modify input about ground characteristics into an earthquake simulator, observe the changed simulation output, and then evaluate their hypotheses.

Showing 11 - 16 of 16 Standards


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