Computer Science Standards
Results
Showing 11 - 20 of 24 Standards
Standard Identifier: 6-8.AP.14
Grade Range:
6–8
Concept:
Algorithms & Programming
Subconcept:
Modularity
Practice(s):
Developing and Using Abstractions (4.1, 4.3)
Standard:
Create procedures with parameters to organize code and make it easier to reuse.
Descriptive Statement:
Procedures support modularity in developing programs. Parameters can provide greater flexibility, reusability, and efficient use of resources. Students create procedures and/or functions that are used multiple times within a program to repeat groups of instructions. They generalize the procedures and/or functions by defining parameters that generate different outputs for a wide range of inputs. For example, students could create a procedure to draw a circle which involves many instructions, but all of them can be invoked with one instruction, such as “drawCircle.” By adding a radius parameter, students can easily draw circles of different sizes. (CA CCSS for Mathematics 7.G.4) Alternatively, calculating the area of a regular polygon requires multiple steps. Students could write a function that accepts the number and length of the sides as parameters and then calculates the area of the polygon. This function can then be re-used inside any program to calculate the area of a regular polygon. (CA CCSS for Mathematics 6.G.1)
Create procedures with parameters to organize code and make it easier to reuse.
Descriptive Statement:
Procedures support modularity in developing programs. Parameters can provide greater flexibility, reusability, and efficient use of resources. Students create procedures and/or functions that are used multiple times within a program to repeat groups of instructions. They generalize the procedures and/or functions by defining parameters that generate different outputs for a wide range of inputs. For example, students could create a procedure to draw a circle which involves many instructions, but all of them can be invoked with one instruction, such as “drawCircle.” By adding a radius parameter, students can easily draw circles of different sizes. (CA CCSS for Mathematics 7.G.4) Alternatively, calculating the area of a regular polygon requires multiple steps. Students could write a function that accepts the number and length of the sides as parameters and then calculates the area of the polygon. This function can then be re-used inside any program to calculate the area of a regular polygon. (CA CCSS for Mathematics 6.G.1)
Standard Identifier: 6-8.CS.3
Grade Range:
6–8
Concept:
Computing Systems
Subconcept:
Troubleshooting
Practice(s):
Testing and Refining Computational Artifacts (6.2)
Standard:
Systematically apply troubleshooting strategies to identify and resolve hardware and software problems in computing systems.
Descriptive Statement:
When problems occur within computing systems, it is important to take a structured, step-by-step approach to effectively solve the problem and ensure that potential solutions are not overlooked. Examples of troubleshooting strategies include following a troubleshooting flow diagram, making changes to software to see if hardware will work, checking connections and settings, and swapping in working components. Since a computing device may interact with interconnected devices within a system, problems may not be due to the specific computing device itself but to devices connected to it. For example, students could work through a checklist of solutions for connectivity problems in a lab of computers connected wirelessly or through physical cables. They could also search for technical information online and engage in technical reading to create troubleshooting documents that they then apply. (CA CCSS for ELA/Literacy RST.6-8.10) Alternatively, students could explore and utilize operating system tools to reset a computer's default language to English. Additionally, students could swap out an externally-controlled sensor giving fluctuating readings with a new sensor to check whether there is a hardware problem.
Systematically apply troubleshooting strategies to identify and resolve hardware and software problems in computing systems.
Descriptive Statement:
When problems occur within computing systems, it is important to take a structured, step-by-step approach to effectively solve the problem and ensure that potential solutions are not overlooked. Examples of troubleshooting strategies include following a troubleshooting flow diagram, making changes to software to see if hardware will work, checking connections and settings, and swapping in working components. Since a computing device may interact with interconnected devices within a system, problems may not be due to the specific computing device itself but to devices connected to it. For example, students could work through a checklist of solutions for connectivity problems in a lab of computers connected wirelessly or through physical cables. They could also search for technical information online and engage in technical reading to create troubleshooting documents that they then apply. (CA CCSS for ELA/Literacy RST.6-8.10) Alternatively, students could explore and utilize operating system tools to reset a computer's default language to English. Additionally, students could swap out an externally-controlled sensor giving fluctuating readings with a new sensor to check whether there is a hardware problem.
Standard Identifier: 6-8.NI.5
Grade Range:
6–8
Concept:
Networks & the Internet
Subconcept:
Cybersecurity
Practice(s):
Recognizing and Defining Computational Problems (3.1, 3.3)
Standard:
Explain potential security threats and security measures to mitigate threats.
Descriptive Statement:
Cybersecurity is an important field of study and it is valuable for students to understand the need for protecting sensitive data. Students identify multiple methods for protecting data and articulate the value and appropriateness for each method. Students are not expected to implement or explain the implementation of such technologies. For example, students could explain the importance of keeping passwords hidden, setting secure router administrator passwords, erasing a storage device before it is reused, and using firewalls to restrict access to private networks. Alternatively, students could explain the importance of two-factor authentication and HTTPS connections to ensure secure data transmission.
Explain potential security threats and security measures to mitigate threats.
Descriptive Statement:
Cybersecurity is an important field of study and it is valuable for students to understand the need for protecting sensitive data. Students identify multiple methods for protecting data and articulate the value and appropriateness for each method. Students are not expected to implement or explain the implementation of such technologies. For example, students could explain the importance of keeping passwords hidden, setting secure router administrator passwords, erasing a storage device before it is reused, and using firewalls to restrict access to private networks. Alternatively, students could explain the importance of two-factor authentication and HTTPS connections to ensure secure data transmission.
Standard Identifier: 6-8.NI.6
Grade Range:
6–8
Concept:
Networks & the Internet
Subconcept:
Cybersecurity
Practice(s):
Developing and Using Abstractions (4.4)
Standard:
Apply multiple methods of information protection to model the secure transmission of information.
Descriptive Statement:
Digital information is protected using a variety of cryptographic techniques. Cryptography is essential to many models of cybersecurity. At its core, cryptography has a mathematical foundation. Cryptographic encryption can be as simple as letter substitution or as complicated as modern methods used to secure networks and the Internet. Students encode and decode messages using encryption methods, and explore different levels of complexity used to hide or secure information. For example, students could identify methods of secret communication used during the Revolutionary War (e.g., ciphers, secret codes, invisible ink, hidden letters) and then secure their own methods such as substitution ciphers or steganography (i.e., hiding messages inside a picture or other data) to compose a message from either the Continental Army or British Army. (HSS.8.1) Alternatively, students could explore functions and inverse functions for encryption and decryption and consider functions that are complex enough to keep data secure from their peers. (CA CCSS for Mathematics 8.F.1)
Apply multiple methods of information protection to model the secure transmission of information.
Descriptive Statement:
Digital information is protected using a variety of cryptographic techniques. Cryptography is essential to many models of cybersecurity. At its core, cryptography has a mathematical foundation. Cryptographic encryption can be as simple as letter substitution or as complicated as modern methods used to secure networks and the Internet. Students encode and decode messages using encryption methods, and explore different levels of complexity used to hide or secure information. For example, students could identify methods of secret communication used during the Revolutionary War (e.g., ciphers, secret codes, invisible ink, hidden letters) and then secure their own methods such as substitution ciphers or steganography (i.e., hiding messages inside a picture or other data) to compose a message from either the Continental Army or British Army. (HSS.8.1) Alternatively, students could explore functions and inverse functions for encryption and decryption and consider functions that are complex enough to keep data secure from their peers. (CA CCSS for Mathematics 8.F.1)
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.3
Grade Range:
9–12
Concept:
Computing Systems
Subconcept:
Troubleshooting
Practice(s):
Testing and Refining Computational Artifacts (6.2)
Standard:
Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors.
Descriptive Statement:
Troubleshooting complex problems involves the use of multiple sources when researching, evaluating, and implementing potential solutions. Troubleshooting also relies on experience, such as when people recognize that a problem is similar to one they have seen before and adapt solutions that have worked in the past. For example, students could create a list of troubleshooting strategies to debug network connectivity problems such as checking hardware and software status and settings, rebooting devices, and checking security settings. Alternatively, students could create troubleshooting guidelines for help desk employees based on commonly observed problems (e.g., problems connecting a new device to the computer, problems printing from a computer to a network printer).
Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors.
Descriptive Statement:
Troubleshooting complex problems involves the use of multiple sources when researching, evaluating, and implementing potential solutions. Troubleshooting also relies on experience, such as when people recognize that a problem is similar to one they have seen before and adapt solutions that have worked in the past. For example, students could create a list of troubleshooting strategies to debug network connectivity problems such as checking hardware and software status and settings, rebooting devices, and checking security settings. Alternatively, students could create troubleshooting guidelines for help desk employees based on commonly observed problems (e.g., problems connecting a new device to the computer, problems printing from a computer to a network printer).
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.
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.
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.
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.
Showing 11 - 20 of 24 Standards
Questions: Curriculum Frameworks and Instructional Resources Division |
CFIRD@cde.ca.gov | 916-319-0881