6-12 Computer Science
Course Introduction
Core Standards of the Course
Grade 6
Computing Systems (CS):
People interact with a wide variety of computing devices that collect, store, analyze, and act upon information in ways that can affect human capabilities, both positively and negatively. The physical components (hardware) and instructions (software) that make up a computing system communicate and process information in digital form. An understanding of hardware and software is useful when troubleshooting a computing system that does not work as intended.
Standard 6.CS.1
Utilize troubleshooting strategies to resolve hardware and software issues in a logical order. (Practice 4: Developing and Using Abstractions)
Network and the Internet (NI):
Computing devices typically do not operate in isolation. Networks connect computing devices to share information and resources and are an increasingly integral part of computing. Networks and communication systems provide greater connectivity in the computing world by providing fast, secure communication and facilitating innovation.
Standard 6.NI.1
Explain potential security threats and practice protective measures to reduce these threats. (Practice 4: Developing and Using Abstractions)
Data and Analysis (DA):
Computing systems exist to process data. The amount of digital data generated in the world is rapidly expanding, and the need to process data effectively is increasingly important. Data is collected and stored so it can be analyzed to better understand the world and make more accurate predictions.
Standard 6.DA.1
Represent a single data set in multiple ways using words, symbols, manipulatives, charts, diagrams, and visuals. (Practice 4: Developing and Using Abstractions.)
Algorithms and Programming (AP):
An algorithm is a sequence of steps designed to accomplish a specific task. Algorithms are translated into programs, or code, to provide instructions for computing devices. Algorithms and programming control all computing systems, empowering people to communicate with the world in new ways and solve compelling problems. The development process to create meaningful and efficient programs involves choosing which information to use and how to process and store it, breaking apart large problems into smaller ones, recombining existing solutions, and analyzing different solutions.
Standard 6.AP.1
Design and illustrate algorithms to efficiently solve complex problems by utilizing pseudocode and/or other descriptive methods. (Practice 3: Recognizing and defining computational problems)
Standard 6.AP.2
Create naming conventions for variables that support the debugging process and incorporate these variables into a simple program. (Practice 7: Communicating about Computing)
Standard 6.AP.3
Annotate programs in order to document their use and improve readability, testing, and debugging. (Practice 7: Communicating about computing)
Impacts of Computing (IC):
Computing affects many aspects of the world in both positive and negative ways at local, national, and global levels. Individuals and communities influence computing through their behaviors and cultural and social interactions, and in turn, computing influences new cultural practices. An informed and responsible person should understand the social implications of the digital world, including equity and access to computing.
Standard 6.IC.1
Recognize and discuss issues of bias and accessibility in existing technologies. (Practice 1: Fostering an inclusive computer culture. Practice 7: Communicating about computing.)
Grade 7
Computing Systems (CS):
People interact with a wide variety of computing devices that collect, store, analyze, and act upon information in ways that can affect human capabilities, both positively and negatively. The physical components (hardware) and instructions (software) that make up a computing system communicate and process information in digital form. An understanding of hardware and software is useful when troubleshooting a computing system that does not work as intended.
Standard 7.CS.1
Design modifications to computing devices in order to improve the ways users interact with the devices. (Practice 3: Recognizing and Defining Computational Problems.)
Network and the Internet (NI):
Computing devices typically do not operate in isolation. Networks connect computing devices to share information and resources and are an increasingly integral part of computing. Networks and communication systems provide greater connectivity in the computing world by providing fast, secure communication and facilitating innovation.
Standard 7.NI.1
Model the role of protocols in transmitting data across networks and the Internet. (Practice 7: Communication about Computing)
Data and Analysis (DA):
Computing systems exist to process data. The amount of digital data generated in the world is rapidly expanding, and the need to process data effectively is increasingly important. Data is collected and stored so it can be analyzed to better understand the world and make more accurate predictions.
Standard 7.DA.1
Collect data using computational tools and transform the data to make it more useful. (Practice 2: Collaborating about Computing.)
Algorithms and Programming (AP):
An algorithm is a sequence of steps designed to accomplish a specific task. Algorithms are translated into programs, or code, to provide instructions for computing devices. Algorithms and programming control all computing systems, empowering people to communicate with the world in new ways and solve compelling problems. The development process to create meaningful and efficient programs involves choosing which information to use and how to process and store it, breaking apart large problems into smaller ones, recombining existing solutions, and analyzing different solutions.
Standard 7.AP.1
Design and iteratively develop programs that combine control structures. (Practice 5: Creating Computational Artifacts; Practice 6: Testing and Refining Computational Artifacts)
Standard 7.AP.2
Seek and incorporate feedback from team members and users to refine a solution to a programming project that meets the user's needs. (Practice 2: Collaborating Around Computing; Practice 6: Testing and Refining Computational Artifacts.)
Standard 7.AP.3
Systematically test and refine programs using a range of test cases. (Practice 6: Testing and Refining Computational Artifacts.)
Standard 7.AP.4
Select and assign tasks to maintain a project timeline when collaboratively developing computational artifacts. (Practice 2: Collaborating Around Computing. Practice 5: Creating Computational Artifacts.)
Impacts of Computing (IC):
Computing affects many aspects of the world in both positive and negative ways at local, national, and global levels. Individuals and communities influence computing through their behaviors and cultural and social interactions, and in turn, computing influences new cultural practices. An informed and responsible person should understand the social implications of the digital world, including equity and access to computing.
Standard 7.IC.1
Compare tradeoffs associated with computing technologies that affect people's everyday activities and career options. (Practice 1: Fostering an Inclusive Computing Culture; Practice 7: Communicating about Computing.)
Grade 8
Computing Systems (CS):
People interact with a wide variety of computing devices that collect, store, analyze, and act upon information in ways that can affect human capabilities, both positively and negatively. The physical components (hardware) and instructions (software) that make up a computing system communicate and process information in digital form. An understanding of hardware and software is useful when troubleshooting a computing system that does not work as intended.
Standard 8.CS.1
Design a project that combines hardware and software components to collect and exchange data. (Practice 5: Creating Computational Artifacts; Practice 4: Developing and Using Abstractions)
Network and the Internet (NI):
Computing devices typically do not operate in isolation. Networks connect computing devices to share information and resources and are an increasingly integral part of computing. Networks and communication systems provide greater connectivity in the computing world by providing fast, secure communication and facilitating innovation.
Standard 8.NI.1
Explain how proper protocols transmit data across networks and the internet. (Practice 4. Developing and Using Abstractions)
Data and Analysis (DA):
Computing systems exist to process data. The amount of digital data generated in the world is rapidly expanding, and the need to process data effectively is increasingly important. Data is collected and stored so it can be analyzed to better understand the world and make more accurate predictions.
Standard 8.DA.3
Test and analyze the effects of changing variables in models/simulations. (Practice 3. Recognizing and Defining Computational Problems; Practice 4. Developing and Using Abstractions; Practice 5. Creating Computational Artifacts)
Algorithms and Programming (AP):
An algorithm is a sequence of steps designed to accomplish a specific task. Algorithms are translated into programs, or code, to provide instructions for computing devices. Algorithms and programming control all computing systems, empowering people to communicate with the world in new ways and solve compelling problems. The development process to create meaningful and efficient programs involves choosing which information to use and how to process and store it, breaking apart large problems into smaller ones, recombining existing solutions, and analyzing different solutions.
Standard 8.AP.1
Develop a program with iterative protocols that combine control structures and use compound conditions. (Practice 5. Creating Computational Artifacts; Practice 6. Testing and Refining Computational Artifacts)
Standard 8.AP.2
Create procedures with or without parameters to organize code and make it easier to reuse. (Practice 4. Developing and Using Abstractions; Practice 5. CreatingComputational Artifacts)
Standard 8.AP.3
Create a new program incorporating existing code, media, and libraries; and give proper attribution. (Practice 2. Collaborating Around Computing; Practice 4.Developing and Using Abstractions; Practice 5. Creating Computational Artifacts;Practice 7. Communicating about computing)
Grade 9 / Grade 10
Computing Systems (CS):
People interact with a wide variety of computing devices that collect, store, analyze, and act upon information in ways that can affect human capabilities, both positively and negatively. The physical components (hardware) and instructions (software) that make up a computing system communicate and process information in digital form. An understanding of hardware and software is useful when troubleshooting a computing system that does not work as intended.
Standard 9/10.CS.1
Describe ways in which the specific implementation details of a computing system are hidden by abstractions in order to manage complexity. (Practice 4.Developing and Using Abstractions; Practice 7. Communicating About Computing)
Standard 9/10.CS.2.
Identify the different levels of abstraction in a computer system. (Practice 4. Developing and Using Abstractions; Practice 7: Communicating About Computing)
Standard 9/10.CS.3
Develop guidelines that communicate systematic troubleshooting strategies that others can use to identify and fix errors. (Practice 6. Testing and Refining Computational Artifacts.)
Network and the Internet (NI):
Computing devices typically do not operate in isolation. Networks connect computing devices to share information and resources and are an increasingly integral part of computing. Networks and communication systems provide greater connectivity in the computing world by providing fast, secure communication and facilitating innovation.
Standard 9/10.NI.1
Describe essential elements for connecting to a network and identify issues that impact network functionality. (Practice 7: Communicating About Computing.)
Standard 9/10.NI.2
Describe the design structure of the internet and identify standard protocols. (Practice 4: Developing and Using Abstractions)
Data and Analysis (DA):
Computing systems exist to process data. The amount of digital data generated in the world is rapidly expanding, and the need to process data effectively is increasingly important. Data is collected and stored so it can be analyzed to better understand the world and make more accurate predictions.
Standard 9/10.DA.1
Demonstrate different representations of data (numbers, characters, and images). (Practice 4: Developing and Using Abstractions)
Standard 9/10.DA.2
Describe disadvantages or benefits associated with how data elements are organized and stored. (Practice 3. Recognizing and Defining Computational Problems; Practice 7: Communicating About Computing)
Standard 9/10.DA.3
Create data visualizations to help others better understand real-world phenomena or factual data information. (Practice 5. Creating Computational Artifacts; Practice 7: Communicating About Computing; Practice 4. Developing and Using Abstractions)
Algorithms and Programming (AP):
An algorithm is a sequence of steps designed to accomplish a specific task. Algorithms are translated into programs, or code, to provide instructions for computing devices. Algorithms and programming control all computing systems, empowering people to communicate with the world in new ways and solve compelling problems. The development process to create meaningful and efficient programs involves choosing which information to use and how to process and store it, breaking apart large problems into smaller ones, recombining existing solutions, and analyzing different solutions.
Standard 9/10.AP.1
Design algorithms to solve computational problems using a combination of original and existing algorithms (Practice 3. Recognizing and Defining Computational Problems; Practice 4: Developing and Using Abstractions)
Standard 9/10.AP.2
Create more generalized computational solutions using collections of items (like an array or list) instead of separating using individual items. (Practice 4: Developing and Using Abstractions)
Standard 9/10.AP.3
Decompose problems into multiple smaller problems through systematic analysis, using constructs (such as procedures, modules, functions, methods, and/or classes). (Practice 3. Recognizing and Defining Computational Problems)
Standard 9/10.AP.4
Create computational artifacts using modular design. (Practice 5:Creating Computational Artifacts)
Standard 9/10.AP.5
Identify and collaboratively suggest changes to an application's design using feedback from a variety of users. (Practice 7: Communicating About Computing)
Standard 9/10.AP.6
Explain the limitations of licenses that restrict computational artifacts when using resources created by others. (Practice 7: Communicating About Computing)
Standard 9/10.AP.7
Iteratively evaluate and refine a computational artifact to enhance its performance, reliability, usability, and accessibility. (Practice 6: Testing and Refining Computational Artifacts)
Standard 9/10.AP.8
Design and develop computational artifacts using collaborative tools. (Practice 2: Collaborating Around Computing; Practice 7: Communicating About Computing)
Standard 9/10.AP.9
Create documentation (pseudocode) that communicates the design of the solution to a complex problem using text, graphics, and/or demonstrations. (Practice 7: Communicating About Computing)
Impacts of Computing (IC):
Computing affects many aspects of the world in both positive and negative ways at local, national, and global levels. Individuals and communities influence computing through their behaviors and cultural and social interactions, and in turn, computing influences new cultural practices. An informed and responsible person should understand the social implications of the digital world, including equity and access to computing.
Standard 9/10.IC.1
Evaluate how computing has impacted and/or impacts personal, ethical, social, economic, and cultural practices. (Practice 3. Recognizing and Defining Computational Problems; Practice 7: Communicating About Computing)
Standard 9/10.IC.2
Understand that bias is always introduced when creating computational artifacts, identify ways that this unintended bias may impact equity, and then evaluate methods for alleviating that impact. (Practice 1: Fostering an Inclusive Computing Culture)
Standard 9/10.IC.3
Identify solutions to problems in other content areas using established algorithms. (Practice 1: Fostering an Inclusive Computing Culture; Practice 2:Collaborating Around Computing)
Grade 11 / Grade 12
Network and the Internet (NI):
Computing devices typically do not operate in isolation. Networks connect computing devices to share information and resources and are an increasingly integral part of computing. Networks and communication systems provide greater connectivity in the computing world by providing fast, secure communication and facilitating innovation.
Standard 11/12.NI.1
Identify types of security threats, and then compare and contrast measures that can be used to address, resolve, and/or prevent identified threats. (Practice 3. Recognizing and Defining Computational Problems; Practice 7: Communicating About Computing)
Standard 11/12.NI.2
Compare and contrast cryptographic techniques to model the secure transmission of information (data). (Practice 3. Recognizing and Defining Computational Problems; Practice 5. Creating Computational Artifacts; Practice 7: Communicating About Computing)
Data and Analysis (DA):
Computing systems exist to process data. The amount of digital data generated in the world is rapidly expanding, and the need to process data effectively is increasingly important. Data is collected and stored so it can be analyzed to better understand the world and make more accurate predictions.
Standard 11/12.DA.1
Refine or create computational artifacts to better represent the relationships among different elements of data collected from factual sources or other processes. (Practice 3. Recognizing and Defining Computational Problems; Practice 4: Developing and Using Abstractions; Practice 5: Creating Computational Artifacts; Practice 6: Testing and Refining Computational Artifacts; Practice 7: Communicating About Computing)
Algorithms and Programming (AP):
An algorithm is a sequence of steps designed to accomplish a specific task. Algorithms are translated into programs, or code, to provide instructions for computing devices. Algorithms and programming control all computing systems, empowering people to communicate with the world in new ways and solve compelling problems. The development process to create meaningful and efficient programs involves choosing which information to use and how to process and store it, breaking apart large problems into smaller ones, recombining existing solutions, and analyzing different solutions.
Standard 11/12.AP.1
Iteratively design and develop computational artifacts for practical, personal, or societal expression that implements an algorithm based on the result of an evaluation or user input. (Practice 2: Collaborating Around Computing Practice 3: Recognizing and Defining Computational Problems; Practice 5: Creating Computational Artifacts; Practice 6: Testing and Refining Computational Artifacts)
Standard 11/12.AP.2
Systematically design and create programs for broad audiences by incorporating feedback from users. (Practice 1: Fostering an Inclusive Computing Culture; Practice 2: Collaborating Around Computing; Practice 3. Recognizing and Defining Computational Problems; Practice 4: Developing and Using Abstractions; Practice 5: Creating Computational Artifacts; Practice 6: Testing and Refining Computational Artifacts; Practice 7: Communicating About Computing)
Standard 11/12.AP.3
Design and develop computational artifacts working in team roles using collaborative tools. (Practice 2: Collaborating Around Computing; Practice 4: Developing and Using Abstractions; Practice 5: Creating Computational Artifacts; Practice 6: Testing and Refining Computational Artifacts; Practice 7: Communicating About Computing)
Standard 11/12.AP.4
Produce documentation to support the decisions made during the design and creation process using text, graphics, presentations, and/or demonstrations in the development of complex programs. (Practice 3. Recognizing and Defining Computational Problems; Practice 4: Developing and Using Abstractions; Practice 5: Creating Computational Artifacts; Practice 6: Testing and Refining Computational Artifacts; Practice 7: Communicating About Computing)
Impacts of Computing (IC):
Computing affects many aspects of the world in both positive and negative ways at local, national, and global levels. Individuals and communities influence computing through their behaviors and cultural and social interactions, and in turn, computing influences new cultural practices. An informed and responsible person should understand the social implications of the digital world, including equity and access to computing.
Standard 11/12.IC.1
Evaluate and discuss the ways computing impacts personal, ethical, social, economic, and cultural practices. (Practice 1: Fostering an Inclusive Computing Culture; Practice 2: Collaborating Around Computing; Practice 3. Recognizing and Defining Computational Problems; Practice 7: Communicating About Computing)
Standard 11/12.IC.2
Identify impacts of bias and equity deficits on design and implementation of computational artifacts, while evaluating appropriate processes for identifying issues of bias. (Practice 1: Fostering an Inclusive Computing Culture; Practice 2: Collaborating Around Computing; Practice 3. Recognizing and Defining Computational Problems; Practice 5: Creating Computational Artifacts; Practice 6: Testing and Refining Computational Artifacts; Practice 7: Communicating About Computing)
Standard 11/12.IC.3
Demonstrate computational thinking using algorithms to problem solving across multiple disciplines. (Practice 3. Recognizing and Defining Computational Problems; Practice 4: Developing and Using Abstractions; Practice 6: Testing and Refining Computational Artifacts; Practice 7: Communicating About Computing)
http://www.uen.org - in partnership with Utah State Board of Education (USBE) and Utah System of Higher Education (USHE). Send questions or comments to USBE Specialist - Kristina Yamada and see the K-12 Computer Science website. For general questions about Utah's Core Standards contact the Director - Jennifer Throndsen. These materials have been produced by and for the teachers of the State of Utah. Copies of these materials may be freely reproduced for teacher and classroom use. When distributing these materials, credit should be given to Utah State Board of Education. These materials may not be published, in whole or part, or in any other format, without the written permission of the Utah State Board of Education, 250 East 500 South, PO Box 144200, Salt Lake City, Utah 84114-4200.