Computer Science Standards
Results
Showing 31 - 40 of 48 Standards
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.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.IC.23
Grade Range:
9–12
Concept:
Impacts of Computing
Subconcept:
Culture
Practice(s):
Fostering an Inclusive Computing Culture, Recognizing and Defining Computational Problems (1.2, 3.1)
Standard:
Evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices.
Descriptive Statement:
Computing may improve, harm, or maintain practices. An understanding of how equity deficits, such as minimal exposure to computing, access to education, and training opportunities, are related to larger, systemic problems in society enables students to create more meaningful artifacts. Students illustrate the positive, negative, and/or neutral impacts of computing. For example, students could evaluate the accessibility of a product for a broad group of end users, such as people who lack access to broadband or who have various disabilities. Students could identify potential bias during the design process and evaluate approaches to maximize accessibility in product design. Alternatively, students could evaluate the impact of social media on cultural, economic, and social practices around the world.
Evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices.
Descriptive Statement:
Computing may improve, harm, or maintain practices. An understanding of how equity deficits, such as minimal exposure to computing, access to education, and training opportunities, are related to larger, systemic problems in society enables students to create more meaningful artifacts. Students illustrate the positive, negative, and/or neutral impacts of computing. For example, students could evaluate the accessibility of a product for a broad group of end users, such as people who lack access to broadband or who have various disabilities. Students could identify potential bias during the design process and evaluate approaches to maximize accessibility in product design. Alternatively, students could evaluate the impact of social media on cultural, economic, and social practices around the world.
Standard Identifier: 9-12.IC.24
Grade Range:
9–12
Concept:
Impacts of Computing
Subconcept:
Culture
Practice(s):
Fostering an Inclusive Computing Culture (1.2)
Standard:
Identify impacts of bias and equity deficit on design and implementation of computational artifacts and apply appropriate processes for evaluating issues of bias.
Descriptive Statement:
Biases could include incorrect assumptions developers have made about their users, including minimal exposure to computing, access to education, and training opportunities. Students identify and use strategies to test and refine computational artifacts with the goal of reducing bias and equity deficits and increasing universal access. For example, students could use a spreadsheet to chart various forms of equity deficits, and identify solutions in existing software. Students could use and refine the spreadsheet solutions to create a strategy for methodically testing software specifically for bias and equity.
Identify impacts of bias and equity deficit on design and implementation of computational artifacts and apply appropriate processes for evaluating issues of bias.
Descriptive Statement:
Biases could include incorrect assumptions developers have made about their users, including minimal exposure to computing, access to education, and training opportunities. Students identify and use strategies to test and refine computational artifacts with the goal of reducing bias and equity deficits and increasing universal access. For example, students could use a spreadsheet to chart various forms of equity deficits, and identify solutions in existing software. Students could use and refine the spreadsheet solutions to create a strategy for methodically testing software specifically for bias and equity.
Standard Identifier: 9-12.IC.25
Grade Range:
9–12
Concept:
Impacts of Computing
Subconcept:
Culture
Practice(s):
Recognizing and Defining Computational Problems (3.1)
Standard:
Demonstrate ways a given algorithm applies to problems across disciplines.
Descriptive Statement:
Students identify how a given algorithm can be applied to real-world problems in different disciplines. For example, students could demonstrate how a randomization algorithm can be used to select participants for a clinical medical trial or to select a flash card to display on a vocabulary quiz. Alternatively, students could demonstrate how searching and sorting algorithms are needed to organize records in manufacturing settings, or to support doctors queries of patient records, or to help governments manage support services they provide to their citizens.
Demonstrate ways a given algorithm applies to problems across disciplines.
Descriptive Statement:
Students identify how a given algorithm can be applied to real-world problems in different disciplines. For example, students could demonstrate how a randomization algorithm can be used to select participants for a clinical medical trial or to select a flash card to display on a vocabulary quiz. Alternatively, students could demonstrate how searching and sorting algorithms are needed to organize records in manufacturing settings, or to support doctors queries of patient records, or to help governments manage support services they provide to their citizens.
Standard Identifier: 9-12.IC.26
Grade Range:
9–12
Concept:
Impacts of Computing
Subconcept:
Culture
Practice(s):
Communicating About Computing (7.2)
Standard:
Study, discuss, and think critically about the potential impacts and implications of emerging technologies on larger social, economic, and political structures, with evidence from credible sources.
Descriptive Statement:
For example, after studying the rise of artifical intelligence, students create a cause and effect chart to represent positive and negative impacts of this technology on society.
Study, discuss, and think critically about the potential impacts and implications of emerging technologies on larger social, economic, and political structures, with evidence from credible sources.
Descriptive Statement:
For example, after studying the rise of artifical intelligence, students create a cause and effect chart to represent positive and negative impacts of this technology on society.
Standard Identifier: 9-12S.AP.19
Grade Range:
9–12 Specialty
Concept:
Algorithms & Programming
Subconcept:
Program Development
Practice(s):
Collaborating Around Computing, Creating Computational Artifacts (2.2, 2.3, 5.2)
Standard:
Plan and develop programs for broad audiences using a specific software life cycle process.
Descriptive Statement:
Software development processes are used to help manage the design, development, and product/project management of a software solution. Various types of processes have been developed over time to meet changing needs in the software landscape. The systems development life cycle (SDLC), also referred to as the application development life cycle, is a term used in systems engineering, information systems, and software engineering to describe a process for planning, creating, testing, and deploying an information system. Other examples of common processes could include agile, spiral, or waterfall. Students develop a program following a specific software life cycle process, with proper scaffolding from the teacher. For example, students could work in teams on a common project using the agile development process, which is based on breaking product development work into small increments. Alternatively, students could be guided in implementing sprints to focus work on daily standup meetings or scrums to support efficient communication.
Plan and develop programs for broad audiences using a specific software life cycle process.
Descriptive Statement:
Software development processes are used to help manage the design, development, and product/project management of a software solution. Various types of processes have been developed over time to meet changing needs in the software landscape. The systems development life cycle (SDLC), also referred to as the application development life cycle, is a term used in systems engineering, information systems, and software engineering to describe a process for planning, creating, testing, and deploying an information system. Other examples of common processes could include agile, spiral, or waterfall. Students develop a program following a specific software life cycle process, with proper scaffolding from the teacher. For example, students could work in teams on a common project using the agile development process, which is based on breaking product development work into small increments. Alternatively, students could be guided in implementing sprints to focus work on daily standup meetings or scrums to support efficient communication.
Standard Identifier: 9-12S.AP.20
Grade Range:
9–12 Specialty
Concept:
Algorithms & Programming
Subconcept:
Program Development
Practice(s):
Creating Computational Artifacts (5.2)
Standard:
Develop programs for multiple computing platforms.
Descriptive Statement:
Humans use computers in various forms in their lives and work. Depending on the situation, software solutions are more appropriate or valuable when available on different computational platforms or devices. Students develop programs for more than one computing platform (e.g. desktop, web, or mobile). For example, students could develop a mobile app for a location-aware software product and a different program that is installed on a computer. Alternatively, students could create a browser-based product and make it accessible across multiple platforms or computers (e.g., email).
Develop programs for multiple computing platforms.
Descriptive Statement:
Humans use computers in various forms in their lives and work. Depending on the situation, software solutions are more appropriate or valuable when available on different computational platforms or devices. Students develop programs for more than one computing platform (e.g. desktop, web, or mobile). For example, students could develop a mobile app for a location-aware software product and a different program that is installed on a computer. Alternatively, students could create a browser-based product and make it accessible across multiple platforms or computers (e.g., email).
Standard Identifier: 9-12S.AP.21
Grade Range:
9–12 Specialty
Concept:
Algorithms & Programming
Subconcept:
Program Development
Practice(s):
Testing and Refining Computational Artifacts (6.2)
Standard:
Identify and fix security issues that might compromise computer programs.
Descriptive Statement:
Some common forms of security issues arise from specific programming languages, platforms, or program implementation choices. Students read a given a piece of code that contains a common security vulnerability, explain the code's intended function or purpose, provide and explain examples of how a specific input could exploit that vulnerability (e.g., the program accessing data or performing in unintended ways), and implement a change in the code to mitigate this vulnerability. For example, students could review code that takes a date as input, recognize that the code doesn't check for appropriate last days of the month, and modify the code to do that. Alternatively, students could review code that supports entry of patient data (e.g., height and weight) and doesn't prompt users to double check unreasonable values (e.g., height at 6 feet and weight at 20 pounds).
Identify and fix security issues that might compromise computer programs.
Descriptive Statement:
Some common forms of security issues arise from specific programming languages, platforms, or program implementation choices. Students read a given a piece of code that contains a common security vulnerability, explain the code's intended function or purpose, provide and explain examples of how a specific input could exploit that vulnerability (e.g., the program accessing data or performing in unintended ways), and implement a change in the code to mitigate this vulnerability. For example, students could review code that takes a date as input, recognize that the code doesn't check for appropriate last days of the month, and modify the code to do that. Alternatively, students could review code that supports entry of patient data (e.g., height and weight) and doesn't prompt users to double check unreasonable values (e.g., height at 6 feet and weight at 20 pounds).
Standard Identifier: 9-12S.AP.22
Grade Range:
9–12 Specialty
Concept:
Algorithms & Programming
Subconcept:
Program Development
Practice(s):
Testing and Refining Computational Artifacts (6.1)
Standard:
Develop and use a series of test cases to verify that a program performs according to its design specifications.
Descriptive Statement:
Testing software is a critically important process. The ability of students to identify a set of important test cases communicates their understanding of the design specifications and potential issues due to implementation choices. Students select and apply their own test cases to cover both general behavior and the edge cases which show behavior at boundary conditions. For example, for a program that is supposed to accept test scores in the range of [0,100], students could develop appropriate tests (e.g, a negative value, 0, 100, and a value above 100). Alternatively, students developing an app to allow users to create and store calendar appointments could develop and use a series of test cases for various scenarios including checking for correct dates, flagging for user confirmation when a calendar event is very long, checking for correct email address format for invitees, and checking for appropriate screen display as users go through the process of adding, editing, and deleting events.
Develop and use a series of test cases to verify that a program performs according to its design specifications.
Descriptive Statement:
Testing software is a critically important process. The ability of students to identify a set of important test cases communicates their understanding of the design specifications and potential issues due to implementation choices. Students select and apply their own test cases to cover both general behavior and the edge cases which show behavior at boundary conditions. For example, for a program that is supposed to accept test scores in the range of [0,100], students could develop appropriate tests (e.g, a negative value, 0, 100, and a value above 100). Alternatively, students developing an app to allow users to create and store calendar appointments could develop and use a series of test cases for various scenarios including checking for correct dates, flagging for user confirmation when a calendar event is very long, checking for correct email address format for invitees, and checking for appropriate screen display as users go through the process of adding, editing, and deleting events.
Showing 31 - 40 of 48 Standards
Questions: Curriculum Frameworks and Instructional Resources Division |
CFIRD@cde.ca.gov | 916-319-0881