| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | AA | AB | AC | AD | AE | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Identifier | Standard | Framework Concept | Lessons - Unit#.Lesson# | |||||||||||||||||||||||||||
2 | CS1.a.6.h | Develop and apply criteria (e.g., power consumption, processing speed, storage space, battery life, cost, operating system) for evaluating a computer system for a given purpose (e.g., system specification needed to run a game, web browsing, graphic design, or video editing). | Computing Systems | ||||||||||||||||||||||||||||
3 | CS1.a.7.h | (+) Identify the functionality of various categories of hardware components and communication between them (e.g., physical layers, logic gates, chips, input and output devices). | Computing Systems | 2.1 | 2.2 | 2.4 | 2.6 | 2.9 | |||||||||||||||||||||||
4 | CS1.b.3.h | (+) Explain the role of operating systems (e.g., how programs are stored in memory, how data is organized and retrieved, how processes are managed and multi-tasked). | Computing Systems | 2.1 | 2.2 | 2.4 | 2.6 | 2.9 | |||||||||||||||||||||||
5 | CS2.a.4.h | Devise a systematic process to identify the source of a problem within individual and connected devices (e.g., research, investigate, problem solve). | Computing Systems | 1.5 | 1.8 | ||||||||||||||||||||||||||
6 | CS3.a.2.h | Demonstrate the role and interaction of a computer embedded within a physical system, such as a consumer electronic, biological system, or vehicle, by creating a diagram, model, simulation, or prototype. | Computing Systems | 1.1 | 2.1 | 2.2 | 2.6 | 2.9 | |||||||||||||||||||||||
7 | CS3.a.3.h | (+) Describe the steps necessary for a computer to execute high-level source code (e.g., compilation to machine language, interpretation, fetch- decode-execute cycle). | Computing Systems | 2.1 | 2.2 | 2.4 | 2.6 | 2.9 | |||||||||||||||||||||||
8 | CS4.a.2.h | Create, extend, or modify existing programs to add new features and behaviors using different forms of inputs and outputs (e.g., inputs such as sensors, mouse clicks, data sets; outputs such as text, graphics, sounds). | Computing Systems | 1.2 | 2.6 | 2.13 | |||||||||||||||||||||||||
9 | CS4.a.3.h | (+) Create a new artifact that uses a variety of forms of inputs and outputs (e.g., inputs such as sensors, mouse clicks, data sets; outputs such as text, graphics, sounds). | Computing Systems | 1.2 | |||||||||||||||||||||||||||
10 | NI1.a.6.h | Provide examples of personal data that should be kept secure and the methods by which individuals keep their private data secure. | Networks and the Internet | 3.10 | 3.11 | 4.2 | 4.3 | 4.8 | 4.9 | ||||||||||||||||||||||
11 | NI1.a.7.h | (+) Explain security issues that might lead to compromised computer programs (e.g., circular references, ambiguous program calls, lack of error checking, and field size checking). | Networks and the Internet | 3.10 | 4.5 | 4.6 | 4.8 | 4.9 | |||||||||||||||||||||||
12 | NI1.b.3.h | Compare and contrast multiple viewpoints on cybersecurity (e.g., from the perspective of security experts, privacy advocates, national security). | Networks and the Internet | 2.12 | 3.9 | 3.11 | 4.2 | 4.3 | |||||||||||||||||||||||
13 | NI1.b.4.h | Identify digital and physical strategies to secure networks and discuss the tradeoffs between ease of access and need for security. | Networks and the Internet | 3.10 | 3.11 | 4.2 | 4.3 | 4.4 | 4.5 | 4.6 | 4.8 | 4.10 | 4.11 | 4.12 | 4.13 | ||||||||||||||||
14 | NI2.a.8.h | Illustrate the basic components of computer networks (e.g., draw logical and topological diagrams of networks including routers, switches, servers, and end user devices; create model with string and paper). | Networks and the Internet | 3.1 | 3.2 | 3.3 | 3.4 | 3.5 | 3.6 | ||||||||||||||||||||||
15 | NI2.a.9.h | (+) Explain ways in which the internet is decentralized and fault- tolerant. | Networks and the Internet | 3.1 | 3.2 | 3.3 | 3.4 | 3.5 | 3.6 | ||||||||||||||||||||||
16 | NI2.a.10.h | (+) Simulate and discuss the issues (e.g., bandwidth, load, delay, topology) that impact network functionality (e.g., use free network simulators). | Networks and the Internet | 3.1 | 3.2 | 3.5 | 3.6 | 4.9 | |||||||||||||||||||||||
17 | NI2.b.3.h | Describe key protocols and underlying processes of internet-based services (e.g., http/https and Simple Mail Transfer Protocol (SMTP) or Internet Message Access Protocol (IMAP), routing protocols). | Networks and the Internet | 3.2 | 3.5 | 3.6 | |||||||||||||||||||||||||
18 | NI2.c.4.h | (+) Evaluate how the hierarchical nature of the Domain Name System helps the internet work efficiently. | Networks and the Internet | 3.6 | |||||||||||||||||||||||||||
19 | NI2.d.3.h | Write a program that performs basic encryption (e.g., shift cipher, substitution cipher). | Networks and the Internet | ||||||||||||||||||||||||||||
20 | NI2.d.4.h | (+) Explain the features of public key cryptography. | Networks and the Internet | 3.8 | |||||||||||||||||||||||||||
21 | NI2.d.5.h | (+) Explore security policies by implementing and comparing encryption and authentication strategies (e.g., secure coding, safeguarding keys). | Networks and the Internet | 3.10 | 4.8 | 4.9 | |||||||||||||||||||||||||
22 | DA1.a.4.h | Convert between binary, decimal, and hexadecimal representations of data (e.g., convert hexadecimal color codes to decimal percentages, ASCII/ Unicode representation). | Data and Analysis | ||||||||||||||||||||||||||||
23 | DA1.a.5.h | Analyze the representation tradeoffs among various forms of digital information (e.g., lossy vs. lossless compression, encrypted vs. unencrypted, various image representations). | Data and Analysis | 2.7 | |||||||||||||||||||||||||||
24 | DA1.a.6.h | (+) Discuss how data sequences (e.g., binary, hexadecimal, octal) can be interpreted in a variety of forms (e.g., instructions, numbers, text, sound, image). | Data and Analysis | 1.1 | 2.1 | 2.2 | 2.6 | 2.9 | 3.1 | ||||||||||||||||||||||
25 | DA2.a.4.h | Discuss techniques used to store, process, and retrieve different amounts of information (e.g., files, databases, data warehouses). | Data and Analysis | 2.7 | 5.8 | 6.4 | |||||||||||||||||||||||||
26 | DA2.a.5.h | (+) Use various data collection techniques for different types of computational problems (e.g., mobile device Global Positioning System (GPS), user surveys, embedded system sensors, open data sets, social media data sets). | Data and Analysis | 5.5 | 5.8 | 5.10 | |||||||||||||||||||||||||
27 | DA2.b.4.h | Apply basic techniques for locating and collecting small- and large-scale data sets (e.g., creating and distributing user surveys, accessing real-world data sets). | Data and Analysis | 5.5 | 5.8 | 5.10 | |||||||||||||||||||||||||
28 | DA3.a.6.h | Use computational tools to collect, transform, and organize data about a problem to explain to others. | Data and Analysis | 5.2 | 5.5 | 5.7 | 5.8 | 5.9 | 5.10 | 5.11 | |||||||||||||||||||||
29 | DA4.a.6.h | Create computational models that simulate real- world systems (e.g., ecosystems, epidemics, spread of ideas). | Data and Analysis | 4.8 | 5.2 | 5.5 | 5.7 | 5.8 | 5.9 | 5.10 | 5.11 | ||||||||||||||||||||
30 | DA4.a.7.h | (+) Evaluate the ability of models and simulations to formulate, refine, and test hypotheses. | Data and Analysis | 5.2 | 5.7 | 5.9 | 5.10 | 5.11 | |||||||||||||||||||||||
31 | DA4.b.1.h | (+) Use data analysis to identify significant patterns in complex systems (e.g., take existing data sets and make sense of them). | Data and Analysis | 4.8 | 4.10 | 5.2 | 5.5 | 5.7 | 5.8 | 5.9 | 5.10 | 5.11 | |||||||||||||||||||
32 | DA4.b.2.h | (+) Identify mathematical and computational patterns through modeling and simulation (e.g., regression, queueing theory, discrete event simulation). | Data and Analysis | ||||||||||||||||||||||||||||
33 | AP1.a.8.h | Analyze a problem and design and implement an algorithmic solution using sequence, selection, and iteration. | Algorithms and Programming | 2.13 | 4.9 | 4.13 | 6.11 | 6.12 | 6.13 | ||||||||||||||||||||||
34 | AP1.a.9.h | Explain and demonstrate how modeling and simulation can be used to explore natural phenomena (e.g., flocking behaviors, queueing, life cycles). | Algorithms and Programming | ||||||||||||||||||||||||||||
35 | AP1.a.10.h | (+) Provide examples of computationally solvable problems and difficult-to- solve problems. | Algorithms and Programming | ||||||||||||||||||||||||||||
36 | AP1.a.11.h | (+) Decompose a large-scale computational problem by identifying generalizable patterns and applying them in a solution. | Algorithms and Programming | 6.2 | 6.8 | 6.11 | |||||||||||||||||||||||||
37 | AP1.a.12.h | (+) Illustrate the flow of execution of a recursive algorithm. | Algorithms and Programming | ||||||||||||||||||||||||||||
38 | AP1.a.13.h | (+) Describe how parallel processing can be used to solve large computational problems (e.g., SETI at Home, FoldIt). | Algorithms and Programming | ||||||||||||||||||||||||||||
39 | AP1.a.14.h | (+) Develop and use a series of test cases to verify that a program performs according to its design specifications. | Algorithms and Programming | 6.7 | |||||||||||||||||||||||||||
40 | AP1.a.15.h | (+) Explain the value of heuristic algorithms (discovery methods) to approximate solutions for difficult-to-solve computational problems. | Algorithms and Programming | ||||||||||||||||||||||||||||
41 | AP2.a.10.h | Use user-centered research and design techniques (e.g., surveys, interviews) to create software solutions. | Algorithms and Programming | 6.2 | 6.6 | 6.12 | |||||||||||||||||||||||||
42 | AP2.a.11.h | Integrate grade-level appropriate mathematical techniques, concepts, and processes in the creation of computational artifacts. | Algorithms and Programming | 6.3 | 6.5 | 6.10 | |||||||||||||||||||||||||
43 | AP2.a.5.i | Use mathematical operations to change a value stored in a variable. | Algorithms and Programming | 6.4 | 6.6 | 6.7 | 6.8 | 6.9 | 6.11 | 6.12 | |||||||||||||||||||||
44 | AP2.a.13.h | (+) Decompose a computational problem by creating new data types, functions, or classes. | Algorithms and Programming | 6.6 | 6.7 | 6.11 | |||||||||||||||||||||||||
45 | AP2.a.14.h | (+) Develop programs for multiple computing platforms (e.g., computer desktop, web, mobile). | Algorithms and Programming | ||||||||||||||||||||||||||||
46 | AP2.a.15.h | (+) Implement an Artificial Intelligence (AI) algorithm to play a game against a human opponent or solve a problem. | Algorithms and Programming | ||||||||||||||||||||||||||||
47 | AP2.a.16.h | (+) Demonstrate code reuse by creating programming solutions using libraries and application program interfaces (APIs) (e.g., graphics libraries, maps, API). | Algorithms and Programming | 6.5 | 6.7 | 6.12 | |||||||||||||||||||||||||
48 | AP3.a.4.h | Compare and contrast various software licensing schemes (e.g., open source, freeware, commercial). | Algorithms and Programming | 1.11 | 2.12 | 3.8 | 4.3 | ||||||||||||||||||||||||
49 | AP3.b.8.h | Evaluate and analyze how algorithms have impacted our society and discuss the benefits and harmful impacts of a variety of technological innovations. | Algorithms and Programming | 1.2 | 1.4 | 1.7 | 1.12 | 2.1 | 2.4 | 2.11 | 2.13 | 3.7 | 4.1 | 4.4 | 4.7 | 4.10 | 5.3 | 5.4 | 5.5 | 5.7 | 5.9 | 6.1 | 6.10 | ||||||||
50 | AP3.b.9.h | (+) Compare a variety of programming languages and identify features that make them useful for solving different types of problems and developing different kinds of systems (e.g., declarative, logic, parallel, functional, compiled, interpreted, real- time). | Algorithms and Programming | ||||||||||||||||||||||||||||
51 | AP3.b.10.h | (+) Modify an existing program to add additional functionality and discuss intended and unintended implications (e.g., breaking other functionality). | Algorithms and Programming | 6.7 | 6.12 | ||||||||||||||||||||||||||
52 | AP3.c.3.h | (+) Describe how Artificial Intelligence (AI) drives many software and physical systems (e.g., autonomous robots, computer vision, pattern recognition, text analysis). | Algorithms and Programming | 1.1 | 1.3 | 2.8 | 3.8 | 4.2 | 4.5 | 4.8 | 4.9 | ||||||||||||||||||||
53 | AP3.c.4.h | Write appropriate documentation for programs. | Algorithms and Programming | 2.6 | 2.11 | 2.13 | 4.13 | 6.7 | |||||||||||||||||||||||
54 | AP3.c.5.h | (+) Use application programming interface (APIs) documentation resources. | Algorithms and Programming | 6.5 | |||||||||||||||||||||||||||
55 | AP3.c.6.h | Use online resources to answer technical questions. | Algorithms and Programming | 2.6 | |||||||||||||||||||||||||||
56 | AP4.a.4.h | Demonstrate the value of abstraction for managing problem complexity (e.g., using a list instead of discrete variables). | Algorithms and Programming | 2.6 | 2.9 | 3.1 | 3.6 | 4.9 | 6.2 | 6.8 | 6.11 | ||||||||||||||||||||
57 | AP4.a.5.h | Understand the notion of hierarchy and abstraction in high-level languages, translation, instruction sets, and logic circuits. | Algorithms and Programming | 2.6 | 2.9 | 3.5 | |||||||||||||||||||||||||
58 | AP4.a.6.h | Deconstruct a complex problem into simpler parts using predefined constructs (e.g., functions and parameters and/or classes). | Algorithms and Programming | 6.5 | 6.7 | 6.11 | |||||||||||||||||||||||||
59 | AP4.a.7.h | (+) Compare and contrast fundamental data structures and their uses (e.g., lists, maps, arrays, stacks, queues, trees, graphs). | Algorithms and Programming | ||||||||||||||||||||||||||||
60 | AP4.a.8.h | (+) Critically analyze and evaluate classic algorithms (e.g., sorting, searching) and use in different contexts, adapting as appropriate. | Algorithms and Programming | ||||||||||||||||||||||||||||
61 | AP4.a.9.h | (+) Discuss issues that arise when breaking large-scale problems down into parts that must be processed simultaneously on separate systems (e.g., cloud computing, parallelization, concurrency). | Algorithms and Programming | ||||||||||||||||||||||||||||
62 | AP4.a.10.h | (+) Define the functionality of an abstraction without implementing the abstraction. | Algorithms and Programming | ||||||||||||||||||||||||||||
63 | AP4.a.11.h | (+) Evaluate algorithms (e.g., sorting, searching) in terms of their efficiency, correctness, and clarity. | Algorithms and Programming | ||||||||||||||||||||||||||||
64 | AP4.a.12.h | (+) Identify programming language features that can be used to define or specify an abstraction. | Algorithms and Programming | 6.8 | 6.11 | ||||||||||||||||||||||||||
65 | AP4.a.13.h | (+) Identify abstractions used in a solution (program or software artifact) and reuse those abstractions to solve a different problem. | Algorithms and Programming | 6.11 | |||||||||||||||||||||||||||
66 | AP5.a.6.h | Design and develop a software artifact working in a team. | Algorithms and Programming | 2.6 | 2.13 | 6.3 | 6.4 | 6.5 | 6.6 | 6.7 | 6.8 | 6.9 | 6.10 | 6.11 | 6.12 | 6.13 | |||||||||||||||
67 | AP5.a.7.h | Demonstrate how diverse collaborating impacts the design and development of software products (e.g., discussing real-world examples of products that have been improved through having a diverse design team or reflecting on their own team's development experience). | Algorithms and Programming | 4.1 | 4.4 | 4.7 | 4.10 | ||||||||||||||||||||||||
68 | AP5.a.8.h | (+) Demonstrate software life cycle processes (e.g., spiral, waterfall) by participating on software project teams (e.g., community service project with real-world clients). | Algorithms and Programming | 6.2 | 6.6 | 6.7 | 6.12 | ||||||||||||||||||||||||
69 | AP5.a.9.h | (+) Use version control systems, integrated development environments (IDEs), and collaboration tools and practices (code documentation) in a group software project. | Algorithms and Programming | 4.1 | 4.4 | 4.7 | 4.10 | ||||||||||||||||||||||||
70 | AP5.b.3.h | Create design teams taking into account the strengths and perspectives of potential team members. | Algorithms and Programming | 4.1 | 4.4 | 4.7 | 4.10 | ||||||||||||||||||||||||
71 | AP6.a.4.h | Use a systematic approach and debugging tools to independently debug a program (e.g., setting breakpoints, inspecting variables with a debugger). | Algorithms and Programming | 1.5 | 1.8 | ||||||||||||||||||||||||||
72 | AP6.b.3.h | (+) Evaluate key qualities of a program (e.g., correctness, usability, readability, efficiency, portability, scalability) through a process such as a code review. | Algorithms and Programming | 2.6 | 2.11 | 2.13 | 3.1 | 4.11 | 4.13 | ||||||||||||||||||||||
73 | IC1.a.6.h | Debate the social and economic implications associated with ethical and unethical computing practices (e.g., intellectual property rights, hacktivism, software piracy, new computers shipped with malware). | Impacts of Computing | 1.2 | 1.4 | 1.7 | 1.11 | 1.12 | 2.1 | 2.4 | 2.11 | 2.12 | 2.13 | 3.7 | 3.8 | 4.1 | 4.3 | 4.4 | 4.7 | 4.10 | 5.3 | 5.4 | 5.5 | 5.7 | 5.9 | 6.1 | 6.10 | ||||
74 | IC1.a.7.h | Discuss implications of the collection and large-scale analysis of information about individuals (e.g., how businesses, social media, and government collect and use personal data). | Impacts of Computing | 1.2 | 2.12 | 2.13 | 3.11 | 4.2 | 5.3 | 5.4 | 5.5 | 5.10 | |||||||||||||||||||
75 | IC1.a.8.h | Compare and debate the positive and negative impacts of computing on behavior and culture (e.g., evolution from hitchhiking to ride-sharing apps, online accommodation rental services). | Impacts of Computing | 1.2 | 1.4 | 1.7 | 1.11 | 1.12 | 2.1 | 2.4 | 2.11 | 2.12 | 2.13 | 3.6 | 3.7 | 3.8 | 3.11 | 4.1 | 4.2 | 4.3 | 4.4 | 4.7 | 4.10 | 5.3 | 5.4 | 5.5 | 5.7 | 5.9 | 6.1 | 6.10 | |
76 | IC1.a.9.h | Describe how computation shares features with art and music by translating human intention into an artifact. | Impacts of Computing | ||||||||||||||||||||||||||||
77 | IC1.a.10.h | (+) Develop criteria to evaluate the beneficial and harmful effects of computing innovations on people and society. | Impacts of Computing | 1.2 | 1.4 | 1.7 | 1.11 | 1.12 | 2.1 | 2.4 | 2.11 | 2.12 | 2.13 | 3.7 | 3.8 | 4.1 | 4.3 | 4.10 | 5.3 | 5.4 | 5.5 | 5.7 | 5.9 | 6.1 | 6.10 | ||||||
78 | IC1.b.5.h | Evaluate the negative impacts of electronic communication on personal relationships and evaluate differences between face- to-face and electronic communication. | Impacts of Computing | ||||||||||||||||||||||||||||
79 | IC1.b.6.h | (+) Create a list of practices that individuals and organizations can use to encourage proper use of both electronic and face-to- face communication. | Impacts of Computing | ||||||||||||||||||||||||||||
80 | IC1.b.7.h | (+) Evaluate the negative impacts on societal discourse caused by social media and electronic communities. | Impacts of Computing | ||||||||||||||||||||||||||||
81 | IC2.a.3.h | (+) Evaluate the impact of equity, access, and influence on the distribution of computing resources in a global society. | Impacts of Computing | 2.12 | 3.7 | 3.8 | |||||||||||||||||||||||||
82 | IC2.b.3.h | Design a user interface (e.g., web pages, mobile applications, animations) to be more inclusive and accessible, minimizing the impact of the designer's inherent bias. | Impacts of Computing | 2.11 | 2.12 | 2.13 | 4.11 | ||||||||||||||||||||||||
83 | IC2.c.5.h | Ethically and safely select, observe, and contribute to global collaboration in the development of a computational artifact (e.g., contribute the resolution of a bug in an open-source project platform, or contribute an online article). | Impacts of Computing | ||||||||||||||||||||||||||||
84 | IC2.c.6.h | Demonstrate how computing enables new forms of experience, expression, communication, and collaboration. | Impacts of Computing | ||||||||||||||||||||||||||||
85 | IC3.a.4.h | Compare and contrast information access and distribution rights. | Impacts of Computing | ||||||||||||||||||||||||||||
86 | IC3.b.5.h | Research and understand misuses of private digital information in our society. | Impacts of Computing | 1.2 | 2.12 | 3.11 | 4.2 | 4.3 | 5.3 | 5.4 | 5.5 | ||||||||||||||||||||
87 | IC3.b.6.h | Debate laws regarding an individual’s digital privacy and be able to explain the main arguments from multiple perspectives. | Impacts of Computing | 1.2 | 2.12 | 3.9 | 3.11 | 4.2 | 4.3 | 5.3 | 5.4 | 5.5 | |||||||||||||||||||
88 | IC3.c.1.h | (+) Design and implement a study that evaluates how computation has revolutionized an aspect of our culture or predicts how an aspect might evolve (e.g., education, healthcare, art/entertainment, energy). | Impacts of Computing | 1.2 | 1.4 | 1.7 | 1.11 | 1.12 | 2.1 | 2.4 | 2.11 | 2.12 | 2.13 | 3.7 | 3.8 | 4.1 | 4.3 | 4.4 | 4.7 | 4.10 | 5.3 | 5.4 | 5.5 | 5.7 | 5.9 | 6.1 | 6.10 | ||||
89 | IC3.c.2.h | (+) Debate laws and regulations that impact the development and use of software and be able to explain the main arguments from multiple perspectives. | Impacts of Computing | 2.12 | 3.8 | 4.3 | |||||||||||||||||||||||||
90 | |||||||||||||||||||||||||||||||
91 | |||||||||||||||||||||||||||||||
92 | |||||||||||||||||||||||||||||||
93 | |||||||||||||||||||||||||||||||
94 | |||||||||||||||||||||||||||||||
95 | |||||||||||||||||||||||||||||||
96 | |||||||||||||||||||||||||||||||
97 | |||||||||||||||||||||||||||||||
98 | |||||||||||||||||||||||||||||||
99 | |||||||||||||||||||||||||||||||
100 |