Skip to main content
California Department of Education Logo

Computer Science Standards




Results


Showing 11 - 20 of 20 Standards

Standard Identifier: 6-8.AP.19

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

Standard:
Document programs in order to make them easier to use, read, test, and debug.

Descriptive Statement:
Documentation allows creators, end users, and other developers to more easily use and understand a program. Students provide documentation for end users that explains their artifacts and how they function (e.g., project overview, user instructions). They also include comments within code to describe portions of their programs and make it easier for themselves and other developers to use, read, test, and debug. For example, students could add comments to describe functionality of different segments of code (e.g., input scores between 0 and 100, check for invalid input, calculate and display the average of the scores). They could also communicate the process used by writing design documents, creating flowcharts, or making presentations. (CA CCSS for ELA/Literacy SL.6.5, SL.7.5, SL.8.5)

Standard Identifier: 6-8.DA.7

Grade Range: 6–8
Concept: Data & Analysis
Subconcept: Storage
Practice(s): Developing and Using Abstractions (4.4)

Standard:
Represent data in multiple ways.

Descriptive Statement:
Computers store data as sequences of 0s and 1s (bits). Software translates to and from this low-level representation to higher levels that are understandable by people. Furthermore, higher level data can be represented in multiple ways, such as the digital display of a color and its corresponding numeric RGB value, or a bar graph, a pie chart, and table representation of the same data in a spreadsheet. For example, students could use a color picker to explore the correspondence between the digital display or name of a color (high-level representations) and its RGB value or hex code (low-level representation). Alternatively, students could translate a word (high-level representation) into Morse code or its corresponding sequence of ASCII codes (low-level representation).

Standard Identifier: 6-8.DA.8

Grade Range: 6–8
Concept: Data & Analysis
Subconcept: Collection, Visualization, & Transformation
Practice(s): Communicating About Computing (7.1)

Standard:
Collect data using computational tools and transform the data to make it more useful.

Descriptive Statement:
Data collection has become easier and more ubiquitous. The cleaning of data is an important transformation for ensuring consistent format, reducing noise and errors (e.g., removing irrelevant responses in a survey), and/or making it easier for computers to process. Students build on their ability to organize and present data visually to support a claim, understanding when and how to transform data so information can be more easily extracted. Students also transform data to highlight or expose relationships. For example, students could use computational tools to collect data from their peers regarding the percentage of time technology is used for school work and entertainment, and then create digital displays of their data and findings. Students could then transform the data to highlight relationships representing males and females as percentages of a whole instead of as individual counts. (CA CCSS for Mathematics 6.SP.4, 7.SP.3, 8.SP.1, 8.SP.4) Alternatively, students could collect data from online forms and surveys, from a sensor, or by scraping a web page, and then transform the data to expose relationships. They could highlight the distribution of data (e.g., words on a web page, readings from a sensor) by giving quantitative measures of center and variability. (CA CCSS for Mathematics 6.SP.5.c, 7.SP.4)

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

Grade Range: 9–12 Specialty
Concept: Data & Analysis
Subconcept: Collection, Visualization, & Transformation
Practice(s): Communicating About Computing (7.1)

Standard:
Select and use data collection tools and techniques to generate data sets.

Descriptive Statement:
Data collection and organization is essential for obtaining new information insights and revealing new knowledge in our modern world. As computers are able to process larger sets of data, gathering data in an efficient and reliable matter remains important. The choice of data collection tools and quality of the data collected influences how new information, insights, and knowledge will support claims and be communicated. Students devise a reliable method to gather information, use software to extract digital data from data sets, and clean and organize the data in ways that support summaries of information obtained from the data. At this level, students may, but are not required to, create their own data collection tools. For example, students could create a computational artifact that records information from a sonic distance sensor to monitor the motion of a prototype vehicle. Alternatively, students could develop a reliable and practical way to automatically digitally record the number of animals entering a portion of a field to graze. Additionally, students could also find a web site containing data (e.g., race results for a major marathon), scrape the data from the web site using data collection tools, and format the data so it can be analyzed.

Standard Identifier: 9-12S.DA.8

Grade Range: 9–12 Specialty
Concept: Data & Analysis
Subconcept: Collection, Visualization, & Transformation
Practice(s): Developing and Using Abstractions, Communicating About Computing (4.1, 7.1)

Standard:
Use data analysis tools and techniques to identify patterns in data representing complex systems.

Descriptive Statement:
Data analysis tools can be useful for identifying patterns in large amounts of data in many different fields. Computers can help with the processing of extremely large sets of data making very complex systems manageable. Students use computational tools to analyze, summarize, and visualize a large set of data. For example, students could analyze a data set containing marathon times and determine how age, gender, weather, and course features correlate with running times. Alternatively, students could analyze a data set of social media interactions to identify the most influential users and visualize the intersections between different social groups.

Showing 11 - 20 of 20 Standards


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