Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
7 views30 pages

K-12 CS Framework Statements Grade Band View

The K–12 Computer Science Framework outlines core concepts and practices for teaching computer science across grade levels, emphasizing the importance of fostering an inclusive culture, collaboration, problem recognition, abstraction, and artifact creation. By the end of Grade 12, students are expected to demonstrate competencies in these areas, including understanding diverse perspectives, working effectively in teams, and developing computational solutions. The framework serves as a guide for educators to implement computer science education that is accessible and relevant to all students.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views30 pages

K-12 CS Framework Statements Grade Band View

The K–12 Computer Science Framework outlines core concepts and practices for teaching computer science across grade levels, emphasizing the importance of fostering an inclusive culture, collaboration, problem recognition, abstraction, and artifact creation. By the end of Grade 12, students are expected to demonstrate competencies in these areas, including understanding diverse perspectives, working effectively in teams, and developing computational solutions. The framework serves as a guide for educators to implement computer science education that is accessible and relevant to all students.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 30

V I E W B Y G R A D E B A N D

The Concepts and Practices of the K–12 Computer Science Framework

Core Concepts Core Practices

1. Computing Systems 1. Fostering an Inclusive Computing Culture


2. Networks and the Internet 2. Collaborating Around Computing
3. Data and Analysis 3. Recognizing and Defining Computational Problems
4. Algorithms and Programming 4. Developing and Using Abstractions
5. Impacts of Computing 5. Creating Computational Artifacts
6. Testing and Refining Computational Artifacts
7. Communicating About Computing

CC BY-NC-SA 4.0. This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-sa/4.0/
Authorization to reproduce this report in whole or in part is granted. Examples of programs and resources are provided for the reader’s convenience and do not represent an endorsement.

Suggested citation: K–12 Computer Science Framework. (2016). Framework view by grade band. Retrieved from http://www.k12cs.org

Suggested attribution: “The K–12 Computer Science Framework, led by the Association for Computing Machinery, Code.org, Computer Science Teachers Association, Cyber Innovation Center, and National Math and Science Initiative
in partnership with states and districts, informed the development of this work.”

How to refer to the concepts: [Grade Band].[Core Concept].[Subconcept]


Example: K–2.Algorithms and Programming.Program Development

How to refer to the practices: P[Practice Number].[Core Practice].[Practice Statement Number]


Example: P4.Developing and Using Abstractions.1
Practices 1

Practices

Practice 1. Fostering an Inclusive Computing Culture

Overview: Building an inclusive and diverse computing culture requires strategies for incorporating perspectives
from people of different genders, ethnicities, and abilities. Incorporating these perspectives involves understanding
the personal, ethical, social, economic, and cultural contexts in which people operate. Considering the needs of
diverse users during the design process is essential to producing inclusive computational products.

By the end of Grade 12, students should be able to

1. Include the unique perspectives of others and reflect on one’s own perspectives when designing and developing computational products.

At all grade levels, students should recognize that the choices people make when they create artifacts are based on personal interests, experiences, and
needs. Young learners should begin to differentiate their technology preferences from the technology preferences of others. Initially, students should be
presented with perspectives from people with different backgrounds, ability levels, and points of view. As students progress, they should independently
seek diverse perspectives throughout the design process for the purpose of improving their computational artifacts. Students who are well-versed in
fostering an inclusive computing culture should be able to differentiate backgrounds and skillsets and know when to call upon others, such as to seek out
knowledge about potential end users or intentionally seek input from people with diverse backgrounds.

2. Address the needs of diverse end users during the design process to produce artifacts with broad accessibility and usability.

At any level, students should recognize that users of technology have different needs and preferences and that not everyone chooses to use, or is able
to use, the same technology products. For example, young learners, with teacher guidance, might compare a touchpad and a mouse to examine
differences in usability. As students progress, they should consider the preferences of people who might use their products. Students should be able
to evaluate the accessibility of a product to a broad group of end users, such as people with various disabilities. For example, they may notice that
allowing an end user to change font sizes and colors will make an interface usable for people with low vision. At the higher grades, students should
become aware of professionally accepted accessibility standards and should be able to evaluate computational artifacts for accessibility. Students
should also begin to identify potential bias during the design process to maximize accessibility in product design. For example, they can test an app
and recommend to its designers that it respond to verbal commands to accommodate users who are blind or have physical disabilities.
Practices 2

3. Employ self- and peer-advocacy to address bias in interactions, product design, and development methods.

After students have experience identifying diverse perspectives and including unique perspectives (P1.1), they should begin to employ self-advocacy
strategies, such as speaking for themselves if their needs are not met. As students progress, they should advocate for their peers when accommodations,
such as an assistive-technology peripheral device, are needed for someone to use a computational artifact. Eventually, students should regularly
advocate for both themselves and others.

Practice 2. Collaborating Around Computing

Overview: Collaborative computing is the process of performing a computational task by working in pairs and
on teams. Because it involves asking for the contributions and feedback of others, effective collaboration can lead
to better outcomes than working independently. Collaboration requires individuals to navigate and incorporate
diverse perspectives, conflicting ideas, disparate skills, and distinct personalities. Students should use collaborative
tools to effectively work together and to create complex artifacts.

By the end of Grade 12, students should be able to

1. Cultivate working relationships with individuals possessing diverse perspectives, skills, and personalities.

At any grade level, students should work collaboratively with others. Early on, they should learn strategies for working with team members who
possess varying individual strengths. For example, with teacher support, students should begin to give each team member opportunities to contribute
and to work with each other as co-learners. Eventually, students should become more sophisticated at applying strategies for mutual encouragement
and support. They should express their ideas with logical reasoning and find ways to reconcile differences cooperatively. For example, when they
disagree, they should ask others to explain their reasoning and work together to make respectful, mutual decisions. As they progress, students
should use methods for giving all group members a chance to participate. Older students should strive to improve team efficiency and effectiveness by
regularly evaluating group dynamics. They should use multiple strategies to make team dynamics more productive. For example, they can ask for the
opinions of quieter team members, minimize interruptions by more talkative members, and give individuals credit for their ideas and their work.
Practices 3

2. Create team norms, expectations, and equitable workloads to increase efficiency and effectiveness.

After students have had experience cultivating working relationships within teams (P2.1), they should gain experience working in particular team roles.
Early on, teachers may help guide this process by providing collaborative structures. For example, students may take turns in different roles on the
project, such as note taker, facilitator, or “driver” of the computer. As students progress, they should become less dependent on the teacher assigning
roles and become more adept at assigning roles within their teams. For example, they should decide together how to take turns in different roles.
Eventually, students should independently organize their own teams and create common goals, expectations, and equitable workloads. They should also
manage project workflow using agendas and timelines and should evaluate workflow to identify areas for improvement.

3. Solicit and incorporate feedback from, and provide constructive feedback to, team members and other stakeholders.

At any level, students should ask questions of others and listen to their opinions. Early on, with teacher scaffolding, students should seek help and share
ideas to achieve a particular purpose. As they progress in school, students should provide and receive feedback related to computing in constructive
ways. For example, pair programming is a collaborative process that promotes giving and receiving feedback. Older students should engage in active
listening by using questioning skills and should respond empathetically to others. As they progress, students should be able to receive feedback from
multiple peers and should be able to differentiate opinions. Eventually, students should seek contributors from various environments. These contributors
may include end users, experts, or general audiences from online forums.

4. Evaluate and select technological tools that can be used to collaborate on a project.

At any level, students should be able to use tools and methods for collaboration on a project. For example, in the early grades, students could
collaboratively brainstorm by writing on a whiteboard. As students progress, they should use technological collaboration tools to manage teamwork,
such as knowledge-sharing tools and online project spaces. They should also begin to make decisions about which tools would be best to use and when
to use them. Eventually, students should use different collaborative tools and methods to solicit input from not only team members and classmates but
also others, such as participants in online forums or local communities.
Practices 4

Practice 3. Recognizing and Defining Computational Problems

Overview: The ability to recognize appropriate and worthwhile opportunities to apply computation is a skill that
develops over time and is central to computing. Solving a problem with a computational approach requires defining
the problem, breaking it down into parts, and evaluating each part to determine whether a computational solution
is appropriate.

By the end of Grade 12, students should be able to

1. Identify complex, interdisciplinary, real-world problems that can be solved computationally.

At any level, students should be able to identify problems that have been solved computationally. For example, young students can discuss a technology
that has changed the world, such as email or mobile phones. As they progress, they should ask clarifying questions to understand whether a problem
or part of a problem can be solved using a computational approach. For example, before attempting to write an algorithm to sort a large list of names,
students may ask questions about how the names are entered and what type of sorting is desired. Older students should identify more complex
problems that involve multiple criteria and constraints. Eventually, students should be able to identify real-world problems that span multiple disciplines,
such as increasing bike safety with new helmet technology, and can be solved computationally.

2. Decompose complex real-world problems into manageable subproblems that could integrate existing solutions or procedures.

At any grade level, students should be able to break problems down into their component parts. In the early grade levels, students should focus on
breaking down simple problems. For example, in a visual programming environment, students could break down (or decompose) the steps needed to
draw a shape. As students progress, they should decompose larger problems into manageable smaller problems. For example, young students may think
of an animation as multiple scenes and thus create each scene independently. Students can also break down a program into subgoals: getting input from
the user, processing the data, and displaying the result to the user. Eventually, as students encounter complex real-world problems that span multiple
disciplines or social systems, they should decompose complex problems into manageable subproblems that could potentially be solved with programs or
procedures that already exist. For example, students could create an app to solve a community problem that connects to an online database through an
application programming interface (API).
Practices 5

3. Evaluate whether it is appropriate and feasible to solve a problem computationally.

After students have had some experience breaking problems down (P3.2) and identifying subproblems that can be solved computationally (P3.1), they
should begin to evaluate whether a computational solution is the most appropriate solution for a particular problem. For example, students might
question whether using a computer to determine whether someone is telling the truth would be advantageous. As students progress, they should
systematically evaluate the feasibility of using computational tools to solve given problems or subproblems, such as through a cost-benefit analysis.
Eventually, students should include more factors in their evaluations, such as how efficiency affects feasibility or whether a proposed approach raises
ethical concerns.

Practice 4. Developing and Using Abstractions

Overview: Abstractions are formed by identifying patterns and extracting common features from specific examples
to create generalizations. Using generalized solutions and parts of solutions designed for broad reuse simplifies the
development process by managing complexity.

By the end of Grade 12, students should be able to

1. Extract common features from a set of interrelated processes or complex phenomena.

Students at all grade levels should be able to recognize patterns. Young learners should be able to identify and describe repeated sequences in data
or code through analogy to visual patterns or physical sequences of objects. As they progress, students should identify patterns as opportunities for
abstraction, such as recognizing repeated patterns of code that could be more efficiently implemented as a loop. Eventually, students should extract
common features from more complex phenomena or processes. For example, students should be able to identify common features in multiple
segments of code and substitute a single segment that uses variables to account for the differences. In a procedure, the variables would take the
form of parameters. When working with data, students should be able to identify important aspects and find patterns in related data sets such as
crop output, fertilization methods, and climate conditions.
Practices 6

2. Evaluate existing technological functionalities and incorporate them into new designs.

At all levels, students should be able to use well-defined abstractions that hide complexity. Just as a car hides operating details, such as the mechanics
of the engine, a computer program’s “move” command relies on hidden details that cause an object to change location on the screen. As they progress,
students should incorporate predefined functions into their designs, understanding that they do not need to know the underlying implementation
details of the abstractions that they use. Eventually, students should understand the advantages of, and be comfortable using, existing functionalities
(abstractions) including technological resources created by other people, such as libraries and application programming interfaces (APIs). Students should
be able to evaluate existing abstractions to determine which should be incorporated into designs and how they should be incorporated. For example,
students could build powerful apps by incorporating existing services, such as online databases that return geolocation coordinates of street names or
food nutrition information.

3. Create modules and develop points of interaction that can apply to multiple situations and reduce complexity.

After students have had some experience identifying patterns (P4.1), decomposing problems (P3.2), using abstractions (P4.2), and taking advantage of
existing resources (P4.2), they should begin to develop their own abstractions. As they progress, students should take advantage of opportunities to
develop generalizable modules. For example, students could write more efficient programs by designing procedures that are used multiple times in the
program. These procedures can be generalized by defining parameters that create different outputs for a wide range of inputs. Later on, students should
be able to design systems of interacting modules, each with a well-defined role, that coordinate to accomplish a common goal. Within an object-oriented
programming context, module design may include defining the interactions among objects. At this stage, these modules, which combine both data and
procedures, can be designed and documented for reuse in other programs. Additionally, students can design points of interaction, such as a simple user
interface, either text or graphical, that reduces the complexity of a solution and hides lower-level implementation details.

4. Model phenomena and processes and simulate systems to understand and evaluate potential outcomes.

Students at all grade levels should be able to represent patterns, processes, or phenomena. With guidance, young students can draw pictures to
describe a simple pattern, such as sunrise and sunset, or show the stages in a process, such as brushing your teeth. They can also create an animation
to model a phenomenon, such as evaporation. As they progress, students should understand that computers can model real-world phenomena, and
they should use existing computer simulations to learn about real-world systems. For example, they may use a preprogrammed model to explore how
parameters affect a system, such as how rapidly a disease spreads. Older students should model phenomena as systems, with rules governing the
interactions within the system. Students should analyze and evaluate these models against real-world observations. For example, students might create
a simple producer–consumer ecosystem model using a programming tool. Eventually, they could progress to creating more complex and realistic
interactions between species, such as predation, competition, or symbiosis, and evaluate the model based on data gathered from nature.
Practices 7

Practice 5. Creating Computational Artifacts

Overview: The process of developing computational artifacts embraces both creative expression and the
exploration of ideas to create prototypes and solve computational problems. Students create artifacts that are
personally relevant or beneficial to their community and beyond. Computational artifacts can be created by
combining and modifying existing artifacts or by developing new artifacts. Examples of computational artifacts
include programs, simulations, visualizations, digital animations, robotic systems, and apps.

By the end of Grade 12, students should be able to

1. Plan the development of a computational artifact using an iterative process that includes reflection on and modification of the plan, taking into account
key features, time and resource constraints, and user expectations.

At any grade level, students should participate in project planning and the creation of brainstorming documents. The youngest students may do so with
the help of teachers. With scaffolding, students should gain greater independence and sophistication in the planning, design, and evaluation of artifacts.
As learning progresses, students should systematically plan the development of a program or artifact and intentionally apply computational techniques,
such as decomposition and abstraction, along with knowledge about existing approaches to artifact design. Students should be capable of reflecting on
and, if necessary, modifying the plan to accommodate end goals.

2. Create a computational artifact for practical intent, personal expression, or to address a societal issue.

Students at all grade levels should develop artifacts in response to a task or a computational problem. At the earliest grade levels, students should
be able to choose from a set of given commands to create simple animated stories or solve pre-existing problems. Younger students should focus on
artifacts of personal importance. As they progress, student expressions should become more complex and of increasingly broader significance.
Eventually, students should engage in independent, systematic use of design processes to create artifacts that solve problems with social significance
by seeking input from broad audiences.
Practices 8

3. Modify an existing artifact to improve or customize it.

At all grade levels, students should be able to examine existing artifacts to understand what they do. As they progress, students should attempt to use
existing solutions to accomplish a desired goal. For example, students could attach a programmable light sensor to a physical artifact they have created
to make it respond to light. Later on, they should modify or remix parts of existing programs to develop something new or to add more advanced
features and complexity. For example, students could modify prewritten code from a single-player game to create a two-player game with slightly
different rules.

Practice 6. Testing and Refining Computational Artifacts

Overview: Testing and refinement is the deliberate and iterative process of improving a computational artifact.
This process includes debugging (identifying and fixing errors) and comparing actual outcomes to intended
outcomes. Students also respond to the changing needs and expectations of end users and improve the
performance, reliability, usability, and accessibility of artifacts.

By the end of Grade 12, students should be able to

1. Systematically test computational artifacts by considering all scenarios and using test cases.

At any grade level, students should be able to compare results to intended outcomes. Young students should verify whether given criteria and
constraints have been met. As students progress, they should test computational artifacts by considering potential errors, such as what will happen
if a user enters invalid input. Eventually, testing should become a deliberate process that is more iterative, systematic, and proactive. Older students
should be able to anticipate errors and use that knowledge to drive development. For example, students can test their program with inputs associated
with all potential scenarios.

2. Identify and fix errors using a systematic process.

At any grade level, students should be able to identify and fix errors in programs (debugging) and use strategies to solve problems with computing
systems (troubleshooting). Young students could use trial and error to fix simple errors. For example, a student may try reordering the sequence of
commands in a program. In a hardware context, students could try to fix a device by resetting it or checking whether it is connected to a network. As
students progress, they should become more adept at debugging programs and begin to consider logic errors: cases in which a program works, but
Practices 9

not as desired. In this way, students will examine and correct their own thinking. For example, they might step through their program, line by line, to
identify a loop that does not terminate as expected. Eventually, older students should progress to using more complex strategies for identifying and
fixing errors, such as printing the value of a counter variable while a loop is running to determine how many times the loop runs.

3. Evaluate and refine a computational artifact multiple times to enhance its performance, reliability, usability, and accessibility.

After students have gained experience testing (P6.2), debugging, and revising (P6.1), they should begin to evaluate and refine their computational
artifacts. As students progress, the process of evaluation and refinement should focus on improving performance and reliability. For example, students
could observe a robot in a variety of lighting conditions to determine that a light sensor should be less sensitive. Later on, evaluation and refinement
should become an iterative process that also encompasses making artifacts more usable and accessible (P1.2). For example, students can incorporate
feedback from a variety of end users to help guide the size and placement of menus and buttons in a user interface.

Practice 7. Communicating About Computing

Overview: Communication involves personal expression and exchanging ideas with others. In computer science,
students communicate with diverse audiences about the use and effects of computation and the appropriateness
of computational choices. Students write clear comments, document their work, and communicate their ideas
through multiple forms of media. Clear communication includes using precise language and carefully considering
possible audiences.

By the end of Grade 12, students should be able to

1. Select, organize, and interpret large data sets from multiple sources to support a claim.

At any grade level, students should be able to refer to data when communicating an idea. Early on, students should, with guidance, present basic
data through the use of visual representations, such as storyboards, flowcharts, and graphs. As students progress, they should work with larger data
sets and organize the data in those larger sets to make interpreting and communicating it to others easier, such as through the creation of basic data
representations. Eventually, students should be able to select relevant data from large or complex data sets in support of a claim or to communicate
the information in a more sophisticated manner.
Practices 10

2. Describe, justify, and document computational processes and solutions using appropriate terminology consistent with the intended audience
and purpose.

At any grade level, students should be able to talk about choices they make while designing a computational artifact. Early on, they should use language
that articulates what they are doing and identifies devices and concepts they are using with correct terminology (e.g., program, input, and debug).
Younger students should identify the goals and expected outcomes of their solutions. Along the way, students should provide documentation for end
users that explains their artifacts and how they function, and they should both give and receive feedback. For example, students could provide a project
overview and ask for input from users. As students progress, they should incorporate clear comments in their product and document their process using
text, graphics, presentations, and demonstrations.

3. Articulate ideas responsibly by observing intellectual property rights and giving appropriate attribution.

All students should be able to explain the concepts of ownership and sharing. Early on, students should apply these concepts to computational ideas and
creations. They should identify instances of remixing, when ideas are borrowed and iterated upon, and give proper attribution. They should also recognize
the contributions of collaborators. Eventually, students should consider common licenses that place limitations or restrictions on the use of computational
artifacts. For example, a downloaded image may have restrictions that prohibit modification of an image or using it for commercial purposes.
11

Concepts
By the end of Grade 2

Networks and Algorithms and


Computing Systems Data and Analysis Impacts of Computing
the Internet Programming

DEVICES NETWORK COLLECTION ALGORITHMS CULTURE


People use computing COMMUNICATION AND Everyday digital devices People follow and create Computing technology has
devices to perform a ORGANIZATION collect and display data over processes as part of daily life. positively and negatively
variety of tasks accurately Computer networks can be time. The collection and use Many of these processes can changed the way people
and quickly. Computing used to connect people to of data about individuals and be expressed as algorithms live and work. Computing
devices interpret and follow other people, places, the world around them is a that computers can follow. devices can be used for
the instructions they are information, and ideas. The routine part of life and entertainment and as
given literally. influences how people live. Routines, such as morning productivity tools, and
Internet enables people to
meeting, clean-up time, and they can affect relationships
connect with others world- dismissal, are examples of
Computing devices can be Many everyday objects, and lifestyles.
wide through many different algorithms that are common in
used to do a number of things, such as cell phones, digital
such as play music, create points of connection. toys, and cars, can contain many early elementary Computing devices, such as
documents, and send pictures. tools (such as sensors) and classrooms. Other examples of fitness trackers, can motivate
Small, wireless devices, such as
Computing devices are also computers to collect and algorithms include making a more active lifestyle by
cell phones, communicate with
very precise. For example, display data from their simple foods, navigating a monitoring physical activity.
one another through a series of
computers can perform surroundings. classroom, and daily routines On the other hand, passively
intermediary connection points,
multiple complex calculations like brushing teeth. Just as consuming media from
such as cellular towers. This
much faster and with greater Crosscutting Concept: people use algorithms to computing devices may lead
coordination among many
accuracy than people. While Human–Computer Interaction complete daily routines, they to a more sedentary lifestyle.
computing devices allows a
people may diverge from can program computers to use In the past, the most popular
person to voice call a friend or Connection Within
instructions given to them, algorithms to complete form of communication was to
video chat with a family Framework: K–2.Networks
computers will follow different tasks. Algorithms are send mail via the postal
member. Details about the and the Internet.Network
instructions exactly as they are commonly implemented using service. Now, more people
connection points are not Communication and
given, even if they do not a precise language that send emails or text messages.
expected at this level. Organization
achieve the intended result. computers can interpret.
Crosscutting Concepts: Crosscutting Concept:
Crosscutting Concept: Crosscutting Concept: Human–Computer Interaction
Communication and
Human–Computer Interaction Abstraction
Coordination; Human–
Connection Within
Computer Interaction Connection Within
Connections Within Framework: K–2.Data and
Framework: K–2.Algorithms Framework: K–2.Computing Analysis.Inference and Models
Connections Within
and Programming.Control; Systems.Hardware and
Framework: K–2.Impacts of
K–2.Algorithms and Software
Computing.Social Interactions;
Programming.Modularity; K–2.Data and Analysis.
3–5.Algorithms and Collection; 3–5.Impacts of
Programming.Control Computing.Social Interactions

Table continued on next page


Concepts — By the end of Grade 2 12

Table continued from previous page

HARDWARE AND CYBERSECURITY STORAGE VARIABLES SOCIAL INTERACTIONS


SOFTWARE Connecting devices to a Computers store data that Information in the real world Computing has positively and
A computing system is network or the Internet can be retrieved later. can be represented in comput- negatively changed the way
composed of hardware and provides great benefit, care Identical copies of data can er programs. Programs store people communicate. People
software. Hardware consists must be taken to use be made and stored in and manipulate data, such as can have access to information
of physical components, authentication measures, multiple locations for a numbers, words, colors, and and each other instantly,
while software provides such as strong passwords, variety of reasons, such as to images. The type of data anywhere, and at any time,
instructions for the system. to protect devices and protect against loss. determines the actions and but they are at the risk of cyber-
These instructions are information from attributes associated with it. bullying and reduced privacy.
represented in a form that a unauthorized access. For example, pictures can be
computer can understand. stored on a cell phone and Different actions are available Online communication facilitates
Authentication is the ability to viewed later, or progress for different kinds of informa- positive interactions, such as
Examples of hardware include verify the identity of a person in a game can be saved tion. For example, sprites sharing ideas with many people,
screens to display information or entity. Usernames and and continued later. The (character images) can be but the public and anonymous
and buttons, keys, or dials to passwords, such as those on advantage of recording data moved and turned, numbers nature of online communication
enter information. Software computing devices or Wi-Fi digitally, such as in images can be added or subtracted, also allows intimidating and
applications are programs with networks, provide a way of or a spreadsheet, versus on a and pictures can be recolored inappropriate behavior in the
specific purposes, such as a authenticating a user’s identity. physical space, such as a or cropped. form of cyberbullying. Privacy
web browser or game. A Because computers make whiteboard, is that old data should be considered when
person may use a mouse guessing weak passwords (states of data collected over Crosscutting Concept: posting information online;
(hardware) to click on a button easy, strong passwords have time) can be easily retrieved, Abstraction such information can persist
displayed in a web browser characteristics that make them copied, and stored in multiple for a long time and be
more time-intensive to break. places. This is why personal Connection Within Framework: accessed by others, even
(software) to navigate to a
information put online can K–2.Data and Analysis.Storage unintended viewers.
new web page. Computing
systems convert instructions, Crosscutting Concepts: persist for a long time.
such as “print,” “save,” Privacy and Security; Understanding local versus CONTROL Crosscutting Concepts:
or “crop,” into a special Communication and online storage is not expected Human–Computer Interaction;
Coordination at this level. Computers follow precise Privacy and Security
language that the computer sequences of instructions
can understand. At this level,
Connection Within Crosscutting Concepts: that automate tasks. Connections Within Framework:
understanding that computer
information is encoded is Framework: K–2.Impacts System Relationships; Privacy Program execution can K–2.Data and Analysis.Storage;
of Computing.Safety, Law, and Security also be nonsequential by K–2.Data and Analysis.
appropriate, but the explicit
and Ethics repeating patterns of Visualization and Transformation
understanding of “bits” is
Connections Within instructions and using
reserved for later grade levels.
Framework: K–2.Impacts events to initiate instructions.
of Computing.Social SAFETY, LAW, AND ETHICS
Crosscutting Concept:
Interactions; K–2.Algorithms Computers follow instructions People use computing
Communication and
Coordination and Programming.Variables literally. Examples of sequences technology in ways that can
of instructions include steps for help or hurt themselves or
Connections Within VISUALIZATION AND drawing a shape or moving a others. Harmful behaviors,
Framework: K–2.Algorithms character across the screen. An such as sharing private
TRANSFORMATION event, such as the press of a information and interacting
and Programming.
Algorithms; K–2.Algorithms Data can be displayed for button, can trigger an action. with strangers, should be
and Programming.Control communication in many ways. Simple loops can be used to recognized and avoided.
People use computers to repeat instructions. At this level,
transform data into new forms, distinguishing different types of
such as graphs and charts. loops is not expected.

Table continued on next page


Concepts — By the end of Grade 2 13

Table continued from previous page

TROUBLESHOOTING Examples of displays include Crosscutting Concept: Using computers comes with a
Computing systems might picture graphs, bar charts, or Abstraction level of responsibility, such as
histograms. A data table that not sharing login information,
not work as expected Connections Within
records a tally of students’ keeping passwords private, and
because of hardware or Framework: K–2.Computing
favorite colors can be displayed logging off when finished. Rules
software problems. Clearly as a chart on a computer. Systems.Devices; K–2. guiding interactions in the world,
describing a problem is the Computing Systems.Hardware such as “stranger danger,” apply
first step toward finding a Crosscutting Concept: and Software to online environments as well.
solution. Abstraction
Crosscutting Concept: Privacy
Problems with computing Connection Within MODULARITY
and Security
systems have different causes, Framework: K–2.Impacts of Complex tasks can be
such as hardware settings, Computing.Social Interactions broken down into simpler Connection Within Framework:
programming errors, or faulty instructions, some of which K–2.Networks and the Internet.
connections to other devices. can be broken down even Cybersecurity
Developmentally appropriate INFERENCE AND MODELS
further. Likewise, instructions
ways to solve problems Data can be used to make can be combined to
include debugging simple inferences or predictions accomplish complex tasks.
programs and seeking help by about the world. Inferences,
clearly describing a problem statements about something Decomposition is the act of
(for example, “The computer that cannot be readily breaking down tasks into
won’t turn on,” “The pointer observed, are often based simpler tasks. An example of
on the screen won’t move,” on observed data. Predic- decomposition is preparing for
or “I lost the web page.”) tions, statements about a party: it involves inviting
Knowing how to diagnose or guests, making food, and
future events, are based on
troubleshoot a problem with a setting the table. These tasks
patterns in data and can be
computing system is not can be broken down further.
expected. made by looking at data
visualizations, such as charts For example, setting the table
and graphs. involves laying a tablecloth,
Crosscutting Concept: System folding napkins, and placing
Relationships
Observations of people’s utensils and plates on the
clothing (jackets and coats) table. Another example is
Connection Within
can be used to make an breaking down the steps to
Framework: 3–5.Algorithms
inference about the weather draw a polygon.
and Programming.Program
Development (it is cold outside). Patterns in
past data can be identified Composition, on the other
and extrapolated to make hand, is the combination of
predictions. For example, a smaller tasks into more
person’s lunch menu selection complex tasks. To build a city,
can be predicted by using people build several houses, a
data on past lunch selections. school, a store, etc. To create a
group art project, people can
Crosscutting Concept: paint or draw their favorite
Abstraction ocean animal, then combine
them to create an ecosystem.
Connection Within
Framework: K–2.Impacts of
Computing.Culture

Table continued on next page


Concepts — By the end of Grade 2 14

Table continued from previous page

Crosscutting Concept: System


Relationships

Connection Within
Framework: K–2.Computing
Systems.Devices

PROGRAM
DEVELOPMENT
People develop programs
collaboratively and for a
purpose, such as expressing
ideas or addressing problems.

People work together to plan,


create, and test programs
within a context that is relevant
to the programmer and users.
Programming is used as a tool
to create products that reflect
a wide range of interests, such
as video games, interactive art
projects, and digital stories.

Crosscutting Concept:
Human–Computer Interaction

Connection Within
Framework: 3–5.Impacts of
Computing.Culture
15

By the end of Grade 5

Networks and Algorithms and


Computing Systems Data and Analysis Impacts of Computing
the Internet Programming

DEVICES NETWORK COLLECTION ALGORITHMS CULTURE


Computing devices may COMMUNICATION AND People select digital tools for Different algorithms can The development and modifi-
be connected to other ORGANIZATION the collection of data based achieve the same result. cation of computing technol-
devices or components to Information needs a physical on what is being observed Some algorithms are more ogy is driven by people’s
extend their capabilities, or wireless path to travel to and how the data will be appropriate for a specific needs and wants and can
such as sensing and sending be sent and received, and used. For example, a digital context than others. affect groups differently.
information. Connections some paths are better than thermometer is used to Computing technologies
can take many forms, such measure temperature Different algorithms can be influence, and are influenced
others. Information is
as physical or wireless. and a GPS sensor is used to used to tie shoes or decide by, cultural practices.
broken into smaller pieces, which path to take on the way
Together, devices and called packets, that are track locations.
components form a home from school. While the New computing technology is
sent independently and end results may be similar,
system of interdependent There is a wide array of digital created and existing technolo-
reassembled at the they may not be the same: in gies are modified to increase
parts that interact for a data collection tools; however,
destination. Routers and only some are appropriate for the example of going home, their benefits (for example,
common purpose. switches are used to properly certain types of data. Tools are some paths could be faster, Internet search recommenda-
send packets across paths chosen based upon the type slower, or more direct, tions), decrease their risks (for
Computing devices often
to their destinations. of measurement they use as depending on varying factors, example, autonomous cars),
depend on other devices or
components. For example, a well as the type of data people such as available time or the and meet societal demands
There are physical paths for wish to observe. Data scien- presence of obstacles (for (for example, smartphone
robot depends on a physically communicating information,
attached light sensor to tists use the term observation example, a barking dog). apps). Increased Internet
such as ethernet cables, and to describe data collection, Algorithms can be expressed access and speed have
detect changes in brightness, wireless paths, such as Wi-Fi.
whereas the light sensor whether or not a human is in noncomputer languages, allowed people to share
Often, information travels on a involved in the collection. including natural language, cultural information but have
depends on the robot for combination of physical and
power. A smartphone can flowcharts, and pseudocode. also affected the practice of
wireless paths; for example, Crosscutting Concept: traditional cultural customs.
use wirelessly connected wireless paths originate from a Abstraction Crosscutting Concept:
headphones to send audio physical connection point. The Abstraction Crosscutting Concepts:
information, and the choice of device and type of
headphones are useless Connections Within Human–Computer Interaction;
connection will affect the path Framework: 3–5.Algorithms Connection Within System Relationships
without a music source. information travels and the Framework: 3–5.Data and
and Programming.Variables;
potential bandwidth (the 3–5.Algorithms and Analysis.Collection Connections Within
Crosscutting Concepts:
capacity to transmit data or Programming.Algorithms Framework: K–2.Algorithms
Communication and
bits in a given timeframe). and Programming.Program
Coordination; System VARIABLES
Packets and packet switching Development;
Relationships
(the method used to send STORAGE Programming languages 6–8.Computing Systems.
packets) are the foundation for Different software tools used provide variables, which are Devices; 6–8.Algorithms
Connection Within
Framework: 3–5.Networks further understanding of to access data may store the used to store and modify and Programming.Program
and the Internet.Network Internet concepts. At this level, data differently. The type of data. The data type deter- Development
Communication and the priority is understanding data being stored and the mines the values and
Organization the flow of information, rather operations that can be
performed on that data.

Table continued on next page


Concepts — By the end of Grade 5 16

Table continued from previous page

HARDWARE AND than details of how routers and level of detail represented by Variables are the vehicle SOCIAL INTERACTIONS
SOFTWARE switches work and how to that data affect the storage through which computer Computing technology
compare paths. requirements. programs store different types
Hardware and software work allows for local and global
of data. At this level, under-
together as a system to Crosscutting Concept: collaboration. By facilitating
Music, images, video, and text standing how to use variables
accomplish tasks, such as Communication and is sufficient, without a fuller communication and innova-
require different amounts of
sending, receiving, process- Coordination storage. Video will often understanding of the technical tion, computing influences
ing, and storing units of require more storage than aspects of variables (such as many social institutions such
information as bits. Bits serve Connections Within music or images alone identifiers and memory as family, education, religion,
as the basic unit of data in Framework: 3–5.Computing because video combines both. locations). Data types vary and the economy.
computing systems and can Systems.Devices; 3–5. For example, two pictures of by programming language,
represent a variety of Computing Systems. the same object can require but many have types for People can work in different
information. Troubleshooting different amounts of storage numbers and text. Examples places and at different times to
based upon their resolution. of operations associated with collaborate and share ideas
For example, a photo filter those types are multiplying when they use technologies
CYBERSECURITY Different software tools used
that reach across the globe.
application (software) works to access and store data may numbers and combining text.
with a camera (hardware) to Information can be add additional data about the Some visual, blocks-based These social interactions affect
produce a variety of effects protected using various data (metadata), which languages do not have how local and global groups
that change the appearance of security measures. These results in different storage explicitly declared types but interact with each other, and
an image. This image is measures can be physical requirements. An image file is still have certain operations alternatively, these interactions
transmitted and stored as bits, and/or digital. a designed representation that apply only to particular can change the nature of
or binary digits, which are of a real-world image and types of data in a program. groups. For example, a class
commonly represented as 0s An offline backup of data is can be opened by either an can discuss ideas in the same
and 1s. All information, useful in case of an online image editor or a text editor, Crosscutting Concept: school or in another nation
including instructions, is security breach. A variety of but the text editor does not Abstraction through interactive webinars.
encoded as bits. Knowledge software applications can know how to translate the data
of the inner workings of monitor and address viruses Connection Within Crosscutting Concepts:
into the image. Understanding
hardware and software, and malware and alert users to Framework: 3–5.Data and System Relationships; Human–
binary or 8-bit versus 16-bit
number systems such as binary their presence. Security Analysis.Storage Computer Interaction
representations is not
or hexadecimal, and how bits measures can be applied to a expected at this level.
network or individual devices Connection Within Framework:
are represented in physical CONTROL
on a network. Confidentiality K–2.Networks and the Internet.
media are not priorities at this Crosscutting Concept: System
refers to the protection of Control structures, including Network Communication and
level. Relationships
information from disclosure to loops, event handlers, and Organization
Crosscutting Concepts: unauthorized individuals, Connections Within conditionals, are used to
Communication and systems, or entities. Framework: 3–5.Computing specify the flow of execution. SAFETY, LAW, AND ETHICS
Coordination; Abstraction Systems.Hardware and Conditionals selectively Ethical complications arise
Crosscutting Concept: Privacy Software; 3–5.Algorithms and execute or skip instructions
Connection Within and Security from the opportunities
Programming.Variables under different conditions.
Framework: 3–5.Data and provided by computing. The
Analysis.Storage Connection Within Different types of loops are ease of sending and receiving
Framework: 3–5.Impacts VISUALIZATION AND copies of media on the
used to repeat instructions in
of Computing.Safety, Law, TRANSFORMATION multiple ways depending on Internet, such as video,
and Ethics People select aspects and the situation. Examples of photos, and music, creates the
subsets of data to be events include mouse clicks, opportunity for unauthorized
transformed, organized, typing on the keyboard, and use, such as online piracy, and
clustered, and categorized to collisions between objects. disregard of copyrights, such as
Event handlers are sets of lack of attribution.

Table continued on next page


Concepts — By the end of Grade 5 17

Table continued from previous page

TROUBLESHOOTING provide different views and commands that are tied to Online piracy, the illegal
Computing systems share communicate insights gained specific events. Conditionals copying of materials, is
from the data. represent decisions and are facilitated by the ability to
similarities, such as the use
composed of a Boolean make identical-quality copies
of power, data, and memory. condition that specifies actions
Data is often sorted or of digital media with little
Common troubleshooting based on whether the condition effort. Other topics related to
grouped to provide additional
strategies, such as checking clarity. Data points can be evaluates to true or false. copyright are plagiarism, fair
that power is available, clustered by a number of Boolean logic and operators use, and properly citing online
checking that physical and commonalities without a (e.g., AND, OR, NOT) can be sources. Knowledge of specific
wireless connections are category label. For example, a used to specify the appropriate copyright laws is not an
working, and clearing out series of days might be groups of instructions to execute expectation at this level.
the working memory by grouped by temperature, air under various conditions.
restarting programs or pressure, and humidity and Crosscutting Concepts:
Crosscutting Concepts:
devices, are effective for later categorized as fair, mild, System Relationships; Privacy
Abstraction; Communication
many systems. or extreme weather. The same and Security
and Coordination
data could be manipulated in
Although computing different ways to emphasize Connection Within
Connection Within Framework:
systems may vary, common particular aspects or parts of Framework: 3–5.Networks
K–2.Computing Systems.Devices
troubleshooting strategies can the data set. For example, and the Internet.Cybersecurity
be used on them, such as when working with a data set
checking connections and of popular songs, data could MODULARITY
power or swapping a working be shown by genre or artist. Programs can be broken down
part in place of a potentially Simple data visualizations into smaller parts to facilitate
defective part. Rebooting include graphs and charts, their design, implementation,
a machine is commonly infographics, and ratios that and review. Programs can also
effective because it resets the represent statistical be created by incorporating
computer. Because computing characteristics of the data. smaller portions of programs
devices are composed of an that have already been created.
interconnected system of Crosscutting Concepts:
hardware and software, Abstraction; Human– Decomposition facilitates
troubleshooting strategies Computer Interaction aspects of program develop-
may need to address both. ment, such as testing, by
Connection Within allowing people to focus on one
Crosscutting Concepts: Framework: 6–8.Impacts of piece at a time. Decomposition
System Relationships; Computing.Social Interactions also enables different people to
Abstraction work on different parts at the
same time. An example of
Connection Within INFERENCE AND MODELS
decomposition at this level is
Framework: 3–5.Networks The accuracy of inferences creating an animation by
and the Internet.Network and predictions is related to separating a story into different
Communication and how realistically data is scenes. For each scene, a
Organization represented. Many factors background needs to be
influence the accuracy of selected, characters placed, and
inferences and predictions, actions programmed. The
such as the amount and instructions required to program
relevance of data collected. each scene may be similar to
instructions in other programs.
Crosscutting Concepts: System
Relationships; Abstraction

Table continued on next page


Concepts — By the end of Grade 5 18

Table continued from previous page

People use data to highlight or PROGRAM DEVELOPMENT


propose cause-and-effect People develop programs
relationships and predict using an iterative process
outcomes. Basing inferences involving design, implementa-
or predictions on data does tion, and review. Design often
not guarantee their accuracy; involves reusing existing code
the data must be relevant and
or remixing other programs
of sufficient quantity. An
within a community. People
example of irrelevance is using
continuously review whether
eye color data when inferring
someone’s age. An example
programs work as expected,
of insufficient quantity is and they fix, or debug, parts
predicting the outcome of that do not. Repeating these
an election by polling only a steps enables people to refine
few people. and improve programs.

Crosscutting Concept: System Design, implementation, and


Relationships review can be further broken
down into additional stages and
may have different labels. The
design stage occurs before
writing code. This is a planning
stage in which the programmers
gather information about the
problem and sketch out a
solution. During the implementa-
tion stage, the planned design is
expressed in a programming
language (code) that can be
made to run on a computing
device. During the review stage,
the design and implementation
are checked for adherence to
program requirements, correct-
ness, and usability. This review
could lead to changes in
implementation and possibly
design, which demonstrates the
iterative nature of the process. A
community is created by people
who share and provide feedback
on one another’s creations.
Crosscutting Concepts:
Human–Computer Interaction;
System Relationships

Connection Within Framework:


K–2.Computing Systems.
Troubleshooting
19

By the end of Grade 8

Networks and Algorithms and


Computing Systems Data and Analysis Impacts of Computing
the Internet Programming

DEVICES NETWORK COLLECTION ALGORITHMS CULTURE


The interaction between COMMUNICATION AND People design algorithms Algorithms affect how people Advancements in computing
humans and computing ORGANIZATION and tools to automate the interact with computers and technology change people’s
devices presents advantages, Computers send and collection of data by the way computers respond. everyday activities. Society is
disadvantages, and receive information based computers. When data People design algorithms that faced with tradeoffs due to
unintended consequences. on a set of rules called collection is automated, data are generalizable to many the increasing globalization
The study of human– protocols. Protocols define is sampled and converted situations. Algorithms that are and automation that
computer interaction can how messages between into a form that a computer readable are easier to follow, computing brings.
improve the design of computers are structured can process. For example, test, and debug.
devices and extend the data from an analog sensor The effects of globalization,
and sent. Considerations Algorithms control what
abilities of humans. must be converted into a such as the sharing of
of security, speed, and recommendations a user may information and cultural
reliability are used to digital form. The method
Accessibility is an important get on a music-streaming practices and the resulting
determine the best path to used to automate data website, how a game responds
consideration in the design collection is influenced by cultural homogeneity, are
of any computing system. send and receive data. to finger presses on a touch- increasingly possible because
the availability of tools and screen, and how information is
For example, assistive devices of computing. Globalization,
Protocols allow devices with the intended use of the data. sent across the Internet. An
provide capabilities such as coupled with the automation of
different hardware and software algorithm that is generalizable the production of goods,
scanning written information Data can be collected from
to communicate, in the way to many situations can produce allows access to labor that is
and converting it to speech. either individual devices or
that people with different different outputs, based on a less expensive and creates jobs
The use of computing systems. The method of data
native languages may use wide range of inputs. For that can easily move across
devices also has potential collection (for example,
a common language for example, an algorithm for a national boundaries. Online
consequences, such as in the surveys versus sensor data)
business. Protocols describe smart thermostat may control piracy has increased because of
areas of privacy and security. can affect the accuracy and
established commands and the temperature based on the information access that
For example, GPS-enabled precision of the data. Some time of day, how many people
responses between computers traverses national boundaries
smartphones can provide types of data are more difficult are at home, and current
on a network, such as request- and varying legal systems.
directions to a destination yet to collect than others. For electricity consumption. The
ing data or sending an image.
unintentionally allow a person example, emotions must be testing of an algorithm requires
There are many examples of Crosscutting Concepts:
to be tracked for malicious subjectively evaluated on an the use of inputs that reflect all
protocols including TCP/IP Human–Computer Interaction;
purposes. Also, the attention individual basis and are thus possible conditions to evaluate
(Transmission Control Protocol/ System Relationships
required to follow GPS difficult to measure across a its accuracy and robustness.
Internet Protocol) and HTTP
directions can lead to accidents population. Access to tools
(Hypertext Transfer Protocol), Connection Within
due to distracted driving. may be limited by factors Crosscutting Concepts:
which serve as the foundation Framework: 6–8.Data and
for formatting and transmitting including cost, training, and Human–Computer Interaction; Analysis.Inference and Models
Crosscutting Concepts: availability. Abstraction
messages and data, including
Human–Computer Interaction;
pages on the World Wide
Privacy and Security
Web. Routers also implement Crosscutting Concept: Connections Within SOCIAL INTERACTIONS
protocols to record the fastest Human–Computer Interaction Framework: 6–8.Data and People can organize and
Connection Within Analysis.Inference and Models;
Framework: 3–5.Impacts of and most reliable paths by engage around issues and
sending small packets as tests. Connection Within 6–8.Computing Systems.
Computing.Culture Framework: 6–8.Computing Troubleshooting; 6–8.Data topics of interest through
The priority at this grade level various communication
Systems.Hardware and and Analysis.Visualization
is understanding the purpose platforms enabled by
Software and Transformation

Table continued on next page


Concepts — By the end of Grade 8 20

Table continued from previous page

HARDWARE AND of protocols, while knowing STORAGE VARIABLES computing, such as social
SOFTWARE details of how specific proto- Applications store data Programmers create networks and media outlets.
cols work is not expected. These interactions allow
Hardware and software as a representation. variables to store data
determine a computing Representations occur at values of selected types. issues to be examined using
Crosscutting Concepts: multiple viewpoints from a
system’s capability to store Communication and Coordina- multiple levels, from the A meaningful identifier is
and process information. arrangement of information assigned to each variable diverse audience.
tion; Abstraction; Privacy and
The design or selection of a Security into organized formats (such to access and perform
Social networks can play a
computing system involves as tables in software) to the operations on the value by
large role in social and political
multiple considerations and Connection Within Frame- physical storage of bits. The name. Variables enable the movements by allowing
potential tradeoffs, such work: 6–8.Data and Analysis. software tools used to access flexibility to represent individuals to share ideas and
as functionality, cost, size, Storage information translate the different situations, process opinions about common issues
speed, accessibility, and low-level representation different sets of data, and while engaging with those
aesthetics. CYBERSECURITY of bits into a form produce varying outputs. who have different opinions.
understandable by people. Computing provides a rich
The capability of a computing The information sent and At this level, students deepen environment for discourse but
system is determined by the received across networks can Computers can represent a their understanding of may result in people consider-
processor speed, storage be protected from unautho- variety of data using discrete variables, including when and ing very limited viewpoints
capacity, and data transmission rized access and modifica- values at many different levels, how to declare and name new from a limited audience.
speed, as well as other factors. tion in a variety of ways, such such as characters, numbers, variables. A variable is like a
Selecting one computing as encryption to maintain its and bits. Text is represented container with a name, in Crosscutting Concepts:
system over another involves confidentiality and restricted using character encoding which the contents may System Relationships; Human–
balancing a number of access to maintain its standards like UNICODE, change, but the name Computer Interaction
tradeoffs. For example, integrity. Security measures which represent text as (identifier) does not. The
selecting a faster computer to safeguard online informa- numbers. All numbers and identifier makes keeping track Connections Within
with more memory involves tion proactively address the other types of data are of the data that is stored Framework: 3–5.Data and
the tradeoffs of speed and threat of breaches to encoded and stored as bits on easier, especially if the data Analysis.Visualization and
cost. Choosing one operating personal and private data. a physical medium. Lossy and changes. Naming conventions Transformation; 9–12.Data
system over another involves lossless data formats are used for identifiers, and thoughtful and Analysis.Visualization and
the tradeoff of capability and The integrity of information to store different levels of choices of identifiers, improve Transformation
compatibility, such as which involves ensuring its detail, but whenever digital program readability.
apps can be installed or which consistency, accuracy, and data is used to represent
analog measurements, such as The term variable is used SAFETY, LAW, AND
devices can be connected. trustworthiness. For example,
Designing a robot requires HTTPS (Hypertext Transfer temperature or sound, differently in programming ETHICS
choosing both hardware and Protocol Secure) is an example information is lost. than the way it is commonly There are tradeoffs between
software and may involve a of a security measure to protect Representations, or file used in mathematics: a allowing information
tradeoff between the potential data transmissions. It provides formats, can contain metadata program variable refers to a to be public and keeping
for customization and ease of a more secure browser that is not always visible to the location in which a value is information private and
use. The use of a device that connection than HTTP average user. There are privacy stored, and the name used to
secure. People can be
connects wirelessly through a (Hypertext Transfer Protocol) implications when files access the value is called the
identifier. A program variable tricked into revealing
Bluetooth connection versus a because it encrypts data being contain metadata, such as the
is assigned a value, and that personal information when
device that connects physically sent between websites. location where a photograph
value may change throughout more public information is
through a USB connection At this level, understanding was taken.
the execution of the program. available about them online.
involves a tradeoff between the difference between
mobility and the need for an HTTP and HTTPS, but not Crosscutting Concept: Mathematicians typically do
additional power source for how the technologies work, Abstraction not make a distinction
the wireless device. is important. between a variable and the
variable name. A mathematics

Table continued on next page


Concepts — By the end of Grade 8 21

Table continued from previous page

Crosscutting Concepts: Crosscutting Concept: Privacy Connections Within variable often represents a Social engineering is based on
System Relationships; Commu- and Security Framework: 6–8.Algorithms set of values for which the tricking people into breaking
nication and Coordination and Programming.Variables; statement containing the security procedures and can
Connection Within 6–8.Networks and the variable is true. be thwarted by being aware
Connection Within Framework: 6–8.Impacts of Internet.Network Communica- of various kinds of attacks,
Framework: 6–8.Data and Computing.Safety, Law, and tion and Organization Crosscutting Concept: such as emails with false
Analysis.Collection Ethics Abstraction information and phishing.
Security attacks often start with
VISUALIZATION AND Connection Within Framework:
TROUBLESHOOTING personal information that is
TRANSFORMATION 6–8.Data and Analysis.Storage publicly available online. All
Comprehensive Data can be transformed to users should be aware of
troubleshooting requires the personal information,
remove errors, highlight or CONTROL
knowledge of how expose relationships, and/or especially financial informa-
computing devices and Programmers select and tion, that is stored on the
make it easier for computers
components work and combine control structures, websites they use. Protecting
to process.
interact. A systematic such as loops, event handlers, personal online information
process will identify the The cleaning of data is an and conditionals, to create requires authentication
source of a problem, important transformation for more complex program measures that can often make
whether within a device reducing noise and errors. An behavior. it harder for authorized users
or in a larger system of example of noise would be the to access information.
first few seconds of a sample Conditional statements can
connected devices.
in which an audio sensor have varying levels of complexi- Crosscutting Concepts:
Just as pilots use checklists to collects extraneous sound ty, including compound and Privacy and Security;
troubleshoot problems with created by the user position- nested conditionals. Compound Communication and
aircraft systems, people can ing the sensor. Errors in survey conditionals combine two or Coordination
use a similar, structured process data are cleaned up to remove more conditions in a logical
to troubleshoot problems with spurious or inappropriate relationship, and nesting Connection Within
computing systems and ensure responses. An example of a conditionals within one another Framework: 6–8.Networks and
that potential solutions are not transformation that highlights allows the result of one condi- the Internet.Cybersecurity
overlooked. Because a a relationship is representing tional to lead to another being
computing device may interact two groups (such as males and evaluated. An example of a
with interconnected devices females) as percentages of a nested conditional structure is
within a system, problems may whole instead of as individual deciding what to do based on
not be due to the specific counts. Computational the weather outside. If it is
computing device itself biologists use compression sunny outside, I will further
but to devices connected algorithms to make extremely decide if I want to ride my bike
to it. Examples of system large data sets of genetic or go running, but if it is not
components that may need information more manageable sunny outside, I will decide
troubleshooting are physical and the analysis more efficient. whether to read a book or
and wireless connections, watch TV. Different types of
peripheral equipment, and Crosscutting Concept: control structures can be
network hardware. Strategies Abstraction combined with one another,
for troubleshooting a such as loops and conditionals.
computing system and Connection Within Different types of programming
debugging a program include Framework: 6–8.Algorithms languages implement control
some problem-solving steps and Programming.Algorithms structures in different ways. For
that are similar. example, functional program-
ming languages

Table continued on next page


Concepts — By the end of Grade 8 22

Table continued from previous page

Crosscutting Concepts: INFERENCE AND MODELS implement repetition using


System Relationships; Computer models can be recursive function calls instead
Abstraction of loops. At this level,
used to simulate events,
understanding implementation
Connection Within examine theories and
in multiple languages is
Framework: 6–8.Algorithms inferences, or make not essential.
and Programming.Algorithms predictions with either
few or millions of data Crosscutting Concept:
points. Computer models Abstraction
are abstractions that
represent phenomena and
use data and algorithms to MODULARITY
emphasize key features and Programs use procedures
relationships within a to organize code, hide
system. As more data is implementation details, and
automatically collected, make code easier to reuse.
models can be refined. Procedures can be repurposed
in new programs. Defining
Very large data sets require a parameters for procedures
model for analysis; they are can generalize behavior and
too large to be analyzed by increase reusability.
examining all of the records.
While individual users are A procedure is a module (a
online, shopping websites and group of instructions within a
online advertisements use program) that performs a
personal data they generate, particular task. In this framework,
compared to millions of other procedure is used as a general
users, to predict what they term that may refer to an actual
would like and make procedure or a method,
recommendations. A function, or similar concept in
video-streaming website may other programming languages.
recommend videos based on Procedures are invoked to
models generated from repeat groups of instructions.
other users and based upon For example, a procedure, such
their personal habits and as one to draw a circle, involves
preferences. The data that is many instructions, but all of
collected about an individual them can be invoked with
and potential inferences made one instruction, such as “draw-
from that data can have Circle.” Procedures that are
implications for privacy. defined with parameters are
generalizable to many
Crosscutting Concepts: Privacy situations and will produce
and Security; Abstraction different outputs based
on a wide range of inputs
Connections Within Frame- (arguments).
work: 6–8.Algorithms and
Programming.Algorithms; 6–8. Crosscutting Concepts:
Impacts of Computing.Culture Abstraction; System Relationships

Table continued on next page


Concepts — By the end of Grade 8 23

Table continued from previous page

PROGRAM DEVELOPMENT
People design meaningful
solutions for others by
defining a problem’s criteria
and constraints, carefully
considering the diverse needs
and wants of the community,
and testing whether criteria
and constraints were met.

Development teams that


employ user-centered design
create solutions that can
have a large societal impact,
such as an app that allows
people with speech
difficulties to translate
hard-to-understand
pronunciation into
understandable language.
Use cases and test cases are
created and analyzed to better
meet the needs of users and to
evaluate whether criteria and
constraints are met. An example
of a design constraint is that
mobile applications must be
optimized for small screens and
limited battery life.

Crosscutting Concepts:
Human–Computer Interaction;
Abstraction

Connection Within Framework:


3–5.Impacts of Computing.
Culture
24

By the end of Grade 12


Networks and Algorithms and
Computing Systems Data and Analysis Impacts of Computing
the Internet Programming

DEVICES NETWORK COLLECTION ALGORITHMS CULTURE


Computing devices are often COMMUNICATION AND Data is constantly collected People evaluate and select The design and use of
integrated with other ORGANIZATION or generated through algorithms based on perfor- computing technologies
systems, including biological, Network topology is automated processes that mance, reusability, and ease and artifacts can improve,
mechanical, and social determined, in part, by how are not always evident, of implementation. Knowl- worsen, or maintain
systems. These devices can many devices can be raising privacy concerns. The edge of common algorithms inequitable access to
share data with one another. supported. Each device is different collection methods improves how people information and opportunities.
The usability, dependability, assigned an address that and tools that are used develop software, secure
security, and accessibility of influence the amount and data, and store information. While many people have
uniquely identifies it on the
these devices, and the quality of the data that is direct access to computing
network. The scalability and throughout their day, many
systems they are integrated observed and recorded. Some algorithms may be easier
reliability of the Internet are others are still underserved or
with, are important to implement in a particular
enabled by the hierarchy and programming language, work simply do not have access.
considerations in their Data can be collected and
redundancy in networks. faster, require less memory to Some of these challenges are
design as they evolve. aggregated across millions of
people, even when they are store data, and be applicable related to the design of
Large-scale coordination computing technologies, as in
A medical device can be not actively engaging with or in a wider variety of situations
occurs among many different the case of technologies that
embedded inside a person to physically near the data than other algorithms.
machines across multiple are difficult for senior citizens
monitor and regulate his or her collection devices. This Algorithms used to search and
paths every time a web page and people with physical
health, a hearing aid (a type of automated and nonevident sort data are common in a
is opened or an image is disabilities to use. Other equity
assistive device) can filter out collection can raise privacy variety of software applications.
viewed online. Devices on deficits, such as minimal
certain frequencies and concerns, such as social media Encryption algorithms are
the Internet are assigned an exposure to computing, access
magnify others, a monitoring sites mining an account even used to secure data, and
Internet Protocol (IP) to education, and training
device installed in a motor when the user is not online. compression algorithms make
address to allow them to opportunities, are related to
vehicle can track a person’s Other examples include data storage more efficient.
communicate. The design larger, systemic problems in
driving patterns and habits, surveillance video used in a At this level, analysis may
decisions that directed the society.
and a facial recognition device store to track customers for involve simple calculations
coordination among systems
can be integrated into a security or information about of steps. Analysis using
composing the Internet also Crosscutting Concepts:
security system to identify purchase habits or the sophisticated mathematical
allowed for scalability and Human–Computer Interaction;
a person. The devices monitoring of road traffic to notation to classify algorithm
reliability. Scalability is the System Relationships
embedded in everyday change signals in real time to performance, such as Big-O
capability of a network to
objects, vehicles, and improve road efficiency notation, is not expected.
handle a growing amount of Connection Within Framework:
buildings allow them to collect work or its potential to be without drivers being aware.
Methods and devices for Crosscutting Concepts: 9–12.Computing Systems.
and exchange data, creating a enlarged to accommodate
collecting data can differ by Abstraction; Privacy and Devices
network (e.g., Internet of that growth.
Things). The creation of the amount of storage Security
integrated or embedded Crosscutting Concepts: required, level of detail SOCIAL INTERACTIONS
collected, and sampling Connections Within
systems is not an expectation Communication and Many aspects of society,
rates. For example, ultrasonic Framework: 9–12.Data and
at this level. Coordination; Abstraction; especially careers, have been
range finders are good at Analysis.Storage; 9–12.
System Relationships Networks and the Internet. affected by the degree of
long distances and are very
Cybersecurity communication afforded by

Table continued on next page


Concepts — By the end of Grade 12 25

Table continued from previous page

Crosscutting Concepts: Connections Within Frame- accurate, as compared to infra- VARIABLES computing. The increased
System Relationships; Human– work: 9–12.Computing red range finders, which are Data structures are used to connectivity between people
Computer Interaction; Privacy Systems.Devices; 9–12. better for short distances. in different cultures and in
manage program complexity.
and Security Computing Systems.Hardware Computer models and different career fields has
Programmers choose data
and Software; 9–12.Impacts of simulations produce large changed the nature and
Connections Within Computing.Social Interactions amounts of data used in structures based on function-
ality, storage, and perfor- content of many careers.
Framework: 9–12.Networks analysis.
and the Internet.Network mance tradeoffs.
CYBERSECURITY Careers have evolved, and
Communication and Organiza- Crosscutting Concept: Privacy new careers have emerged.
tion; 9–12.Data and Analysis. Network security depends and Security A list is a common type of data
structure that is used to For example, social media
Collection; 9–12.Impacts of on a combination of hard- managers take advantage of
Computing.Culture ware, software, and practices Connections Within facilitate the efficient storage,
ordering, and retrieval of social media platforms to
that control access to data Framework: 9–12.Computing guide the presence of a
Systems.Devices; 9–12. values and various other
HARDWARE AND and systems. The needs of product or company and
Impacts of Computing.Safety, operations on its contents.
users and the sensitivity of increase interaction with their
SOFTWARE Law, and Ethics Tradeoffs are associated with
data determine the level of choosing different types of audience. Global connectivity
Levels of interaction exist security implemented. has also changed how teams
lists. Knowledge of advanced
between the hardware, STORAGE in different fields, such as
data structures, such as stacks,
software, and user of a Security measures may include computer science and biology,
Data can be composed of queues, trees, and hash tables,
computing system. The most physical security tokens, is not expected. User-defined work together. For example,
common levels of software two-factor authentication, and multiple data elements that
types and object-oriented the online genetic database
that a user interacts with biometric verification, but relate to one another. For made available by the Human
example, population data programming are optional
include system software every security measure Genome Project, the algo-
may contain information concepts at this level.
and applications. System involves tradeoffs between the rithms required to analyze the
software controls the flow accessibility and security of the about age, gender, and data, and the ability for
Crosscutting Concepts:
of information between system. Potential security height. People make choices scientists around the world to
Abstraction; System Relation-
hardware components used problems, such as deni- about how data elements are ships share information have
for input, output, storage, al-of-service attacks, ransom- organized and where data is accelerated the pace of
and processing. ware, viruses, worms, spyware, stored. These choices affect Connection Within medical discoveries and led to
and phishing, exemplify why cost, speed, reliability, Framework: 6–8.Computing the new field of computational
At its most basic level, a sensitive data should be accessibility, privacy, and Systems.Hardware and biology.
computer is composed of securely stored and transmit- integrity. Software
physical hardware and ted. The timely and reliable Crosscutting Concepts:
electrical impulses. Multiple access to data and information A data model combines data System Relationships; Human–
services by authorized users, elements and describes the CONTROL Computer Interaction
layers of software are built
upon the hardware and referred to as availability, is relationships among the Programmers consider
ensured through adequate elements. Data models tradeoffs related to imple- Connection Within Frame-
interact with the layers above
bandwidth, backups, and represent choices made about mentation, readability, and work: 9–12.Networks and the
and below them to reduce
other measures. which data elements are program performance when Internet.Network Communica-
complexity. System software
available and feasible to selecting and combining tion and Organization
manages a computing device’s
Crosscutting Concepts: collect. Storing data locally
resources so that software can control structures.
Privacy and Security; System may increase security but
interact with hardware. For SAFETY, LAW, AND
Relationships; Human– decrease accessibility. Storing Implementation includes the
example, text editing software
Computer Interaction data on a cloud-based, ETHICS
interacts with the operating choice of programming
system to receive input from redundant storage system may language, which affects the Laws govern many aspects of
Connection Within increase accessibility but computing, such as privacy,
the keyboard, convert the time and effort required to
Framework: 9–12.Algorithms reduce security, as it can be data, property, information,
input to bits for storage, and create a program. Readability
and Programming.Algorithms and identity. These laws can
refers to how clear the

Table continued on next page


Concepts — By the end of Grade 12 26

Table continued from previous page

interpret the bits as readable accessed online easily, even by program is to other program- have beneficial and harmful
text to display on the monitor. unauthorized users. Data mers and can be improved effects, such as expediting or
System software is used on redundancies and backups are through documentation. The delaying advancements in
many different types of useful for restoring data when discussion of performance is computing and protecting or
devices, such as smart TVs, integrity is compromised. limited to a theoretical infringing upon people’s
assistive devices, virtual understanding of execution rights. International differ-
components, cloud compo- Crosscutting Concepts: time and storage require- ences in laws and ethics have
nents, and drones. Knowledge System Relationships; Privacy ments; a quantitative analysis implications for computing.
of specific, advanced terms for and Security; Communication is not expected. Control
computer architecture, such as and Coordination structures at this level may Legal issues in computing,
BIOS, kernel, or bus, is not include conditional state- such as those related to the
expected at this level. Connection Within ments, loops, event handlers, use of the Internet, cover
Framework: 9–12.Algorithms and recursion. Recursion is a many areas of law, reflect an
Crosscutting Concepts: and Programming.Algorithms control technique in which a evolving technological field,
Abstraction; Communication procedure calls itself and is and can involve tradeoffs. For
and Coordination; System VISUALIZATION AND appropriate when problems examples, laws that mandate
Relationships can be expressed in terms of
TRANSFORMATION the blocking of some file-shar-
smaller versions of themselves. ing websites may reduce
Connections Within People transform, generalize, Recursion is an optional online piracy but can restrict
Framework: 9–12.Networks and simplify, and present large concept at this level. the right to freedom of
the Internet.Network Communi- data sets in different ways to information. Firewalls can be
cation and Organization; 9–12. influence how other people Crosscutting Concepts: used to block harmful viruses
Algorithms and Programming. interpret and understand Abstraction; System and malware but can also be
Variables; 9–12.Algorithms and the underlying information. Relationships used for media censorship.
Programming.Modularity Examples include Access to certain websites, like
visualization, aggregation, MODULARITY social networking sites, may
TROUBLESHOOTING rearrangement, and
Complex programs are vary depending on a nation’s
Troubleshooting complex application of mathematical laws and may be blocked for
designed as systems of
problems involves the use of operations. political purposes.
interacting modules,
multiple sources when each with a specific role, Crosscutting Concepts:
Visualizations, such as
researching, evaluating, and infographics, can obscure data coordinating for a common System Relationships; Privacy
implementing potential and positively or negatively overall purpose. These and Security; Abstraction
solutions. Troubleshooting influence people’s views of the modules can be procedures
also relies on experience, data. People use software tools within a program; Connection Within
such as when people or programming to create combinations of data and Framework: 9–12.Data and
recognize that a problem is powerful, interactive data procedures; or independent, Analysis.Collection
similar to one they have seen visualizations and perform a but interrelated, programs.
before or adapt solutions range of mathematical Modules allow for better
that have worked in the past. operations to transform and management of
analyze data. Examples of complex tasks.
Troubleshooting information mathematical operations
may come from external include those related to Software applications require a
sources, such as user manuals, aggregation, such as summing sophisticated approach to
online technical forums, or and averaging. The same data design that uses a systems
manufacturer websites. set can be visualized or perspective. For example,
Distinguishing between transformed to support object-oriented programming
multiple sides of an issue. decomposes programs into

Table continued on next page


Concepts — By the end of Grade 12 27

Table continued from previous page

reliable and unreliable sources Crosscutting Concepts: modules called objects that
is important. Examples of Abstraction; Human– pair data with methods
complex troubleshooting Computer Interaction (variables with procedures).
strategies include resolving The focus at this level is
connectivity problems, Connection Within understanding a program as a
adjusting system Framework: 6–8.Impacts of system with relationships
configurations and settings, Computing.Social Interactions between modules. The choice
ensuring hardware and of implementation, such as
software compatibility, and INFERENCE AND MODELS programming language or
transferring data from one paradigm, may vary.
device to another. The accuracy of predictions
or inferences depends upon Crosscutting Concepts:
Crosscutting Concepts: the limitations of the System Relationships;
Abstraction; System computer model and the Abstraction
Relationships data the model is built upon.
The amount, quality, and Connection Within
Connection Within diversity of data and the Framework: 9–12.Computing
Framework: 9–12.Algorithms features chosen can affect Systems.Hardware and
and Programming.Program the quality of a model and Software
Development ability to understand a
system. Predictions or PROGRAM
inferences are tested to DEVELOPMENT
validate models.
Diverse teams can develop
Large data sets are used to programs with a broad
make models used for impact through careful
inference or predictions, such review and by drawing on
as forecasting earthquakes, the strengths of members in
traffic patterns, or the results different roles. Design
of car crashes. Larger quanti- decisions often involve
ties and higher quality of tradeoffs. The development
collected data will tend to of complex programs is
improve the accuracy of aided by resources such as
models. For example, using libraries and tools to edit
data from 1,000 car crashes and manage parts of the
would generally yield a more program. Systematic analysis
accurate model than using is critical for identifying the
data from 100 crashes. effects of lingering bugs.
Additionally, car crashes
provide a wide variety of data As programs grow more
points, such as impact speed, complex, the choice of
car make and model, and resources that aid program
passenger type, and this data development becomes
is useful in the development of increasingly important. These
injury prevention measures. resources include libraries,
integrated development
Crosscutting Concepts: environments, and debugging
Abstraction; Privacy and Security

Table continued on next page


Concepts — By the end of Grade 12 28

Table continued from previous page

tools. Systematic analysis


includes the testing of
program performance and
functionality, followed by
end-user testing. A common
tradeoff in program
development is sometimes
referred to as “Fast/Good/
Cheap: Pick Two”: one can
develop software quickly, with
high quality, or with little use
of resources (for example,
money or number of people),
but the project manager may
choose only two of the
three criteria.

Crosscutting Concepts:
Human–Computer Interaction;
System Relationships;
Abstraction

Connection Within
Framework: 9–12.Computing
Systems.Troubleshooting

Table continued on next page

You might also like