Computer Science Standards
        
            
                
                Remove this criterion from the search
                Cybersecurity
            
        
        
            
                
                Remove this criterion from the search
                Devices
            
        
        
            
                
                Remove this criterion from the search
                Hardware & Software
            
        
        
            
                
                Remove this criterion from the search
                Program Development
            
        
        
            
                
                Remove this criterion from the search
                Safety, Law, & Ethics
            
        
        
            
                
                Remove this criterion from the search
                Storage
            
        
            
        Results
        Showing 31 - 40 of 60 Standards
    
        Standard Identifier: 6-8.IC.24
                    Grade Range:
                    
                        6–8
                    
                
            
                        Concept:
                        
                            Impacts of Computing
                        
                    
                    
                        Subconcept:
                        
                            Safety, Law, & Ethics
                        
                    
            
                        Practice(s):
                        
                            Communicating About Computing (7.2)
                        
                    
            Standard:
Compare tradeoffs between allowing information to be public and keeping information private and secure.
Descriptive Statement:
While it is valuable to establish, maintain, and strengthen connections between people online, security attacks often start with intentionally or unintentionally providing personal information online. Students identify situations where the value of keeping information public outweighs privacy concerns, and vice versa. They also recognize practices such as phishing and social engineering and explain best practices to defend against them. For example, students could discuss the benefits of artists and designers displaying their work online to reach a broader audience. Students could also compare the tradeoffs of making a shared file accessible to anyone versus restricting it to specific accounts. (CA CCSS for ELA/Literacy SL.6.1, SL.7.1, SL.8.1) Alternatively, students could discuss the benefits and dangers of the increased accessibility of information available on the internet, and then compare this to the advantages and disadvantages of the introduction of the printing press in society. (HSS.7.8.4)
                Compare tradeoffs between allowing information to be public and keeping information private and secure.
Descriptive Statement:
While it is valuable to establish, maintain, and strengthen connections between people online, security attacks often start with intentionally or unintentionally providing personal information online. Students identify situations where the value of keeping information public outweighs privacy concerns, and vice versa. They also recognize practices such as phishing and social engineering and explain best practices to defend against them. For example, students could discuss the benefits of artists and designers displaying their work online to reach a broader audience. Students could also compare the tradeoffs of making a shared file accessible to anyone versus restricting it to specific accounts. (CA CCSS for ELA/Literacy SL.6.1, SL.7.1, SL.8.1) Alternatively, students could discuss the benefits and dangers of the increased accessibility of information available on the internet, and then compare this to the advantages and disadvantages of the introduction of the printing press in society. (HSS.7.8.4)
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.18
                    Grade Range:
                    
                        9–12
                    
                
            
                        Concept:
                        
                            Algorithms & Programming
                        
                    
                    
                        Subconcept:
                        
                            Program Development
                        
                    
            
                        Practice(s):
                        
                            Fostering an Inclusive Computing Culture, Creating Computational Artifacts (1.1, 5.1)
                        
                    
            Standard:
Systematically design programs for broad audiences by incorporating feedback from users.
Descriptive Statement:
Programmers use a systematic design and review process to meet the needs of a broad audience. The process includes planning to meet user needs, developing software for broad audiences, testing users from a cross-section of the audience, and refining designs based on feedback. For example, students could create a user satisfaction survey and brainstorm distribution methods to collect feedback about a mobile application. After collecting feedback from a diverse audience, students could incorporate feedback into their product design. Alternatively, while developing an e-textiles project with human touch sensors, students could collect data from peers and identify design changes needed to improve usability by users of different needs.
                Systematically design programs for broad audiences by incorporating feedback from users.
Descriptive Statement:
Programmers use a systematic design and review process to meet the needs of a broad audience. The process includes planning to meet user needs, developing software for broad audiences, testing users from a cross-section of the audience, and refining designs based on feedback. For example, students could create a user satisfaction survey and brainstorm distribution methods to collect feedback about a mobile application. After collecting feedback from a diverse audience, students could incorporate feedback into their product design. Alternatively, while developing an e-textiles project with human touch sensors, students could collect data from peers and identify design changes needed to improve usability by users of different needs.
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.
                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.20
                    Grade Range:
                    
                        9–12
                    
                
            
                        Concept:
                        
                            Algorithms & Programming
                        
                    
                    
                        Subconcept:
                        
                            Program Development
                        
                    
            
                        Practice(s):
                        
                            Testing and Refining Computational Artifacts (6.3)
                        
                    
            Standard:
Iteratively evaluate and refine a computational artifact to enhance its performance, reliability, usability, and accessibility.
Descriptive Statement:
Evaluation and refinement of computational artifacts involves measuring, testing, debugging, and responding to the changing needs and expectations of users. Aspects that can be evaluated include correctness, performance, reliability, usability, and accessibility. For example, after witnessing common errors with user input in a computational artifact, students could refine the artifact to validate user input and provide an error message if invalid data is provided. Alternatively, students could observe a robot in a variety of lighting conditions to determine whether the code controlling a light sensor should be modified to make it less sensitive. Additionally, students could also incorporate feedback from a variety of end users to help guide the size and placement of menus and buttons in a user interface.
                Iteratively evaluate and refine a computational artifact to enhance its performance, reliability, usability, and accessibility.
Descriptive Statement:
Evaluation and refinement of computational artifacts involves measuring, testing, debugging, and responding to the changing needs and expectations of users. Aspects that can be evaluated include correctness, performance, reliability, usability, and accessibility. For example, after witnessing common errors with user input in a computational artifact, students could refine the artifact to validate user input and provide an error message if invalid data is provided. Alternatively, students could observe a robot in a variety of lighting conditions to determine whether the code controlling a light sensor should be modified to make it less sensitive. Additionally, students could also incorporate feedback from a variety of end users to help guide the size and placement of menus and buttons in a user interface.
Standard Identifier: 9-12.AP.21
                    Grade Range:
                    
                        9–12
                    
                
            
                        Concept:
                        
                            Algorithms & Programming
                        
                    
                    
                        Subconcept:
                        
                            Program Development
                        
                    
            
                        Practice(s):
                        
                            Collaborating Around Computing (2.4)
                        
                    
            Standard:
Design and develop computational artifacts working in team roles using collaborative tools.
Descriptive Statement:
Collaborative tools can be as complex as a source code version control system or as simple as a collaborative word processor. Team roles in pair programming are driver and navigator but students can take on more specialized roles in larger teams. Teachers or students should choose resources that aid collaborative program development as programs grow more complex. For example, students might work as a team to develop a mobile application that addresses a problem relevant to the school or community, using appropriate tools to support actions such as: establish and manage the project timeline; design, share, and revise graphical user interface elements; implement program components, track planned, in-progress, and completed components, and design and implement user testing.
                Design and develop computational artifacts working in team roles using collaborative tools.
Descriptive Statement:
Collaborative tools can be as complex as a source code version control system or as simple as a collaborative word processor. Team roles in pair programming are driver and navigator but students can take on more specialized roles in larger teams. Teachers or students should choose resources that aid collaborative program development as programs grow more complex. For example, students might work as a team to develop a mobile application that addresses a problem relevant to the school or community, using appropriate tools to support actions such as: establish and manage the project timeline; design, share, and revise graphical user interface elements; implement program components, track planned, in-progress, and completed components, and design and implement user testing.
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.
                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.CS.1
                    Grade Range:
                    
                        9–12
                    
                
            
                        Concept:
                        
                            Computing Systems
                        
                    
                    
                        Subconcept:
                        
                            Devices
                        
                    
            
                        Practice(s):
                        
                            Developing and Using Abstractions (4.1)
                        
                    
            Standard:
Describe ways in which abstractions hide the underlying implementation details of computing systems to simplify user experiences.
Descriptive Statement:
An abstraction is a representation of an idea or phenomenon that hides details irrelevant to the question at hand. Computing systems, both stand alone and embedded in products, are often integrated with other systems to simplify user experiences. For example, students could identify geolocation hardware embedded in a smartphone and describe how this simplifies the users experience since the user does not have to enter her own location on the phone. Alternatively, students might select an embedded device such as a car stereo, identify the types of data (e.g., radio station presets, volume level) and procedures (e.g., increase volume, store/recall saved station, mute) it includes, and explain how the implementation details are hidden from the user.
                Describe ways in which abstractions hide the underlying implementation details of computing systems to simplify user experiences.
Descriptive Statement:
An abstraction is a representation of an idea or phenomenon that hides details irrelevant to the question at hand. Computing systems, both stand alone and embedded in products, are often integrated with other systems to simplify user experiences. For example, students could identify geolocation hardware embedded in a smartphone and describe how this simplifies the users experience since the user does not have to enter her own location on the phone. Alternatively, students might select an embedded device such as a car stereo, identify the types of data (e.g., radio station presets, volume level) and procedures (e.g., increase volume, store/recall saved station, mute) it includes, and explain how the implementation details are hidden from the user.
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.
        Showing 31 - 40 of 60 Standards
    
        
                Questions: Curriculum Frameworks and Instructional Resources Division |
                CFIRD@cde.ca.gov | 916-319-0881