Computer Science Standards
Results
Showing 11 - 20 of 21 Standards
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)
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.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.
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.).
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.
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.10
Grade Range:
9–12
Concept:
Data & Analysis
Subconcept:
Collection, Visualization, & Transformation
Practice(s):
Creating Computational Artifacts (5.2)
Standard:
Create data visualizations to help others better understand real-world phenomena.
Descriptive Statement:
People transform, generalize, simplify, and present large data sets in different ways to influence how other people interpret and understand the underlying information. Students select relevant data from large or complex data sets in support of a claim or to communicate the information in a more sophisticated manner. Students use software tools or programming to perform a range of mathematical operations to transform and analyze data and create powerful data visualizations (that reveal patterns in the data). For example, students could create data visualizations to reveal patterns in voting data by state, gender, political affiliation, or socioeconomic status. Alternatively, students could use U.S. government data on criticially endangered animals to visualize population change over time.
Create data visualizations to help others better understand real-world phenomena.
Descriptive Statement:
People transform, generalize, simplify, and present large data sets in different ways to influence how other people interpret and understand the underlying information. Students select relevant data from large or complex data sets in support of a claim or to communicate the information in a more sophisticated manner. Students use software tools or programming to perform a range of mathematical operations to transform and analyze data and create powerful data visualizations (that reveal patterns in the data). For example, students could create data visualizations to reveal patterns in voting data by state, gender, political affiliation, or socioeconomic status. Alternatively, students could use U.S. government data on criticially endangered animals to visualize population change over time.
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.
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.
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).
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.CS.2
Grade Range:
9–12 Specialty
Concept:
Computing Systems
Subconcept:
Hardware & Software
Practice(s):
Communicating About Computing (7.2)
Standard:
Categorize and describe the different functions of operating system software.
Descriptive Statement:
Operating systems (OS) software is the code that manages the computer’s basic functions. Students describe at a high level the different functions of different components of operating system software. Examples of functions could include memory management, data storage/retrieval, processes management, and access control. For example, students could use monitoring tools including within an OS to inspect the services and functions running on a system and create an artifact to describe the activity that they observed (e.g., when a browser is running with many tabs open, memory usage is increased). They could also inspect and describe changes in the activity monitor that occur as different applications are executing (e.g., processor utilization increases when a new application is launched).
Categorize and describe the different functions of operating system software.
Descriptive Statement:
Operating systems (OS) software is the code that manages the computer’s basic functions. Students describe at a high level the different functions of different components of operating system software. Examples of functions could include memory management, data storage/retrieval, processes management, and access control. For example, students could use monitoring tools including within an OS to inspect the services and functions running on a system and create an artifact to describe the activity that they observed (e.g., when a browser is running with many tabs open, memory usage is increased). They could also inspect and describe changes in the activity monitor that occur as different applications are executing (e.g., processor utilization increases when a new application is launched).
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.
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.
Showing 11 - 20 of 21 Standards
Questions: Curriculum Frameworks and Instructional Resources Division |
CFIRD@cde.ca.gov | 916-319-0881