# 47

Standards in this Framework

Standards Mapped

# 100%

Mapped to Course

Standard Lessons
CSPG.Y1.1.1
Leverage problem-solving strategies to solve problems of level-appropriate complexity. NOTE: Problem-solving strategies that encompass computational thinking include, but are not limited to, abstraction, algorithm development, decomposition, and pattern recognition.
1. 2.10 Top Down Design
2. 2.11 Abstraction
3. 2.21 Collaborative Programming
CSPG.Y1.1.2
Analyze and utilize multiple representations of problem-solving logic used to solve problems of appropriate complexity. NOTE: Representations may include, but are not limited to, backlog, decision matrix, design brief, documentation, fault tree analysis, flowchart, pseudocode, and sprints.
1. 2.22 Putting Together Control Structures
2. 12.1 Project: Guess the Word
CSPG.Y1.1.3
Analyze and utilize collaborative methods in problem solving of level-appropriate complexity. NOTE: Collaborative methods may include, but are not limited to, distributive (divide and conquer), paired programming, and redundant parallel.
1. 2.21 Collaborative Programming
CSPG.Y1.1.4
Analyze and utilize level-appropriate troubleshooting strategies for hardware and software
1. 4.1 Methodology
2. 4.2 Support Practice
CSPG.Y1.2.1
Interpret relational and logical expressions of levelappropriate complexity using comparison and Boolean operators
1. 2.18 If Statements
2. 2.19 If/ Else Statements
3. 2.20 While Loops
4. 2.22 Putting Together Control Structures
5. 6.1 Booleans
6. 6.2 If Statements
7. 6.3 Comparison Operators
8. 6.4 Logical Operators
CSPG.Y1.2.2
Classify the types of information that can be stored as variables and analyze the appropriateness of each (e.g., Booleans, characters, integers, floating points, strings)
1. 5.4 Mathematical Operators
2. 5.5 String Operators
3. 6.1 Booleans
4. 6.5 Floating Point Numbers and Rounding
CSPG.Y1.2.3
Analyze how computer science concepts relate to the field of mathematics. NOTE: Concepts may include, but are not limited to, different division methods (e.g., integer, long, modular), random number generation, domain, maximum, mean, minimum, mode, and range.
1. 5.4 Mathematical Operators
2. 6.5 Floating Point Numbers and Rounding
CSPG.Y1.2.4
Discuss and apply concepts of abstraction. NOTE: Abstraction is the process of reducing information and detail to facilitate focus on relevant concepts and functionality (displaying only essential information while hiding the details).
1. 2.11 Abstraction
CSPG.Y1.2.5
Perform operations of level-appropriate complexity with binary, decimal, and hexadecimal numbers. NOTE: Operations may include, but are not limited to, addition, subtraction, multiplication, division, and conversion.
1. 3.10 Number Systems
2. 3.11 Encoding Text with Binary
CSPG.Y1.2.6
Demonstrate operator precedence in expressions and statements. NOTE: Operators include, but are not limited to, addition, subtraction, division, modulus division, concatenation, square root, and exponentiation. Operator precedence may include, but is not limited to, inside-out, order of operations, and the understanding that the assignment statement of “x = 1” is not the same as “1 = x.”
1. 5.2 Variables and Types
2. 5.4 Mathematical Operators
CSPG.Y1.3.1
Define, store, access, and manipulate levelappropriate data (e.g., primitive, linear). NOTE: Primitive data may include, but is not limited to, Boolean, character, double, float, and integer. Linear data may include, but is not limited to, arrays, lists, strings, and vectors.
1. 5.2 Variables and Types
2. 5.5 String Operators
3. 6.1 Booleans
4. 9.1 Indexing
5. 9.2 Slicing
6. 9.3 Immutability
7. 9.4 Strings and For Loops
8. 9.5 The in Keyword
9. 9.6 String Methods
10. 10.1 Tuples
11. 10.2 Lists
12. 10.3 For Loops and Lists
13. 10.4 List Methods
CSPG.Y1.3.2
Define and discuss different examples of levelappropriate quantitative and qualitative data
1. 1.9 Data Collection & Limitations
CSPG.Y1.3.4
Analyze, utilize, and visually represent levelappropriate data. NOTE: Visual representation tools may include, but are not limited to, analytics reports, graphical representations, programming language libraries, and spreadsheets.
1. 1.8 Visualizing and Interpreting Data
2. 1.9 Data Collection & Limitations
CSPG.Y1.3.5
Perform level-appropriate data analysis using computing tools. NOTE: Analysis may include, but is not limited to, maximum values, mean values, minimum values, ranges, and string comparisons.
1. 1.8 Visualizing and Interpreting Data
2. 1.9 Data Collection & Limitations
3. 9.6 String Methods
CSPG.Y1.4.1
Identify the five pillars of cybersecurity and evaluate the relevance of each pillar to computer science concepts. NOTE: Additional concepts and key terms of the five pillars of cybersecurity (confidentiality, integrity, availability, non-repudiation, and authentication) may include, but are not limited to, access control paradigms, accountability, authorization, least-privilege, and need-to-know.
1. 1.1 What is Cybersecurity?
2. 1.2 The CIA Triad
CSPG.Y1.4.2
Research and describe different roles within the hacking community (e.g., white hat, black hat, gray hat hacking), including positive and negative motivations, significant impacts, and social stereotypes. NOTE: White hat hacking may include, but is not limited to, bug bounty programs and contracted penetration testing. A significant impact example may include, but is not limited to, Charlie Miller’s compromisation of Fiat Chrysler vehicles. Black hat hacking may include, but is not limited to, the unauthorized processes of accessing systems to destroy, compromise, or steal data and deny access to services or systems. A significant impact example may include, but is not limited to, Behzad Mesri’s alleged theft of data from Home Box Office (HBO) and subsequent ransom demands. Gray hat hacking may include, but is not limited to, unauthorized processes of accessing systems to report, correct, and draw attention to security vulnerabilities. A significant example of gray hat hacking is intentionally not included; students and teachers are encouraged to explore and discuss the nuances of “right versus wrong” and motivations within this community, including nation-state actions.
1. 1.12 Hacking Ethics
CSPG.Y1.4.3
Research and describe the impacts of ransomware, trojans, viruses, and other malware
1. 1.1 What is Cybersecurity?
2. 1.6 Privacy & Security
3. 1.12 Hacking Ethics
4. 1.13 Project: Public Service Announcement
CSPG.Y1.4.4
Explain implications related to identification and responsible reporting of a vulnerability versus exploitation
1. 1.12 Hacking Ethics
CSPG.Y1.5.1
Design and implement level-appropriate algorithms that use iteration, selection, and sequence
1. 2.4 For Loops
2. 2.16 Using i in For Loops
3. 2.17 Extended Loop Control
4. 2.20 While Loops
5. 7.1 While Loops
6. 7.2 For Loops
7. 7.3 Break and Continue
8. 7.4 Nested Control Structures
CSPG.Y1.5.2
Illustrate the flow of execution of algorithms in levelappropriate programs including branching and looping. NOTE: Illustrations may include, but are not limited to, flowcharts and pseudocode.
1. 2.22 Putting Together Control Structures
2. 7.1 While Loops
3. 7.2 For Loops
4. 7.4 Nested Control Structures
5. 12.1 Project: Guess the Word
CSPG.Y1.5.3
Evaluate the qualities of level-appropriate student created and non-student-created algorithms. NOTE: Evaluation tools may include, but are not limited to, code review and test cases. Qualities may include, but are not limited to, correctness, efficiency, exception handling, input/data/model validation, portability, readability, scalability, and usability.
1. 2.13 User Input
2. 8.5 Exceptions
CSPG.Y1.5.4
Use a systematic approach to detect and resolve errors in a given algorithm
1. 2.15 Debugging Strategies
CSPG.Y1.6.1
Create programs using procedures to solve problems of level-appropriate complexity. NOTE: “Procedures” is considered interchangeable with “functions” for meeting this standard. Problems may include, but are not limited to, encoding, encryption, finding minimum/maximum values, identifying prime numbers, searching and sorting, and solving classic computer science tasks such as The Towers of Hanoi problem.
1. 2.8 Functions
2. 8.1 Functions
3. 8.2 Functions and Parameters
4. 8.3 Namespaces in Functions
5. 8.4 Functions and Return Values
CSPG.Y1.6.2
Discuss and apply best practices of program design and format (e.g., descriptive names, documentation, indentation, user experience design, whitespace)
2. 2.7 Naming Guidelines
CSPG.Y1.6.3
Determine the scope and state of variables declared in procedures and control structures over time. NOTE: “Procedures” is considered interchangeable with “functions” for meeting this standard.
1. 2.12 Variables
2. 8.3 Namespaces in Functions
CSPG.Y1.6.4
Create programs of level-appropriate complexity that read from standard input, write to standard output, read from a file, write to a file, and append to a file. NOTE: Standard input and output is platform-specific. Standard input and output on personal computers may include, but are not limited to, a keyboard and terminal. Standard input and output on mobile application devices may include, but are not limited to, touchscreen and speakers. Standard input and output on robots may include, but are not limited to, sensors and servos.
1. 2.13 User Input
CSPG.Y1.6.5
Use a systematic approach to detect logic, runtime, and syntax errors within a program
1. 2.15 Debugging Strategies
CSPG.Y1.7.1
Identify software and hardware specific to carrying out the mission of regional industries
1. 14.1 Precision Agriculture
CSPG.Y1.7.2
Research advancing and emerging technologies (e.g., artificially intelligent agents, blockchain, extended reality, Internet of Things (IoT), machine learning, robotics)
1. 14.1 Precision Agriculture
2. 14.2 Future of Computing
CSPG.Y1.8.1
Utilize the command line to accomplish common network troubleshooting tasks at an introductory level. NOTE: Common network troubleshooting tasks may include, but are not limited to, viewing internal IP address information (e.g., ipconfig /all); viewing external IP address information using an external service (e.g., ifconfig.me, myip.com, whatsmyip.com); validating communication with a remote system (e.g., ping); tracing path of communication to a remote system (e.g., traceroute); and releasing and renewing IP addresses (e.g., ipconfig /renew).
1. 3.14 Command Line Interface
2. 3.15 Network Management
CSPG.Y1.8.2
Research and describe common networking concepts at an introductory level. NOTE: Networking concepts may include, but are not limited to, different types of networks (e.g., local area network (LAN), wide area network (WAN)); various common topologies; the role of a MAC address; local versus public IP and how they are assigned; Internet Protocol version 4 (IPv4) and Internet Protocol version 6 (IPv6) addressing schemes; role of Domain Name System (DNS); the hierarchical nature of networks; purpose of virtual private networks (VPN); signal carriers for networks (e.g., copper, fiber optic, radio); purpose of firewalls; network access roles (e.g., employee versus guest, staff versus student); role of internet service providers (ISP); wireless connectivity; client-server relationship versus peer-to-peer (P2P); role of common internet protocols; and secure versus insecure protocols.
1. 3.1 Intro to the Internet
2. 3.5 Internet Hardware
3. 3.6 Internet Addresses
4. 3.7 DNS
5. 3.8 Routing
6. 3.9 Packets and Protocols
CSPG.Y1.8.3
Research and describe modems, network interface cards, routers (e.g., consumer, industrial), switches, and wireless access points, and identify their purposes within a network
1. 3.3 Computer Organization
2. 3.5 Internet Hardware
CSPG.Y1.8.4
Describe the importance of creating and using common rules for communication and the utilization of common network protocols including the relationship between client and server. NOTE: Discussions of common rules for communications may include, but are not limited to, the Open Systems Interconnection (OSI) Model and packet communication. Common network protocols may include, but are not limited to, DNS, Hypertext Transfer Protocol (HTTP)/Secure Hypertext Transfer Protocol (HTTPS), Simple Mail Transfer Protocol (SMTP)/Post Office Protocol (POP)/Internet Message Access Protocol (IMAP), and Telnet/Secure Shell (SSH).
1. 3.6 Internet Addresses
2. 3.7 DNS
CSPG.Y1.9.1
Compare and contrast computer programming paradigms (e.g., functional, imperative, objectoriented)
1. 5.1 Printing in Python
CSPG.Y1.9.2
Research, describe, and utilize at an appropriate level: ● debugging strategies ● integrated development environments (IDE) ● source-code editors ● version control strategies
1. 2.15 Debugging Strategies
2. 5.1 Printing in Python
CSPG.Y1.9.3
Classify layers of software (e.g., applications, drivers, firmware, operating systems) utilized within various platforms (e.g., Android, ChromeOS, iOS, Linux, macOS, Windows)
1. 3.3 Computer Organization
2. 3.4 Software
CSPG.Y1.9.4
Identify and describe the purpose of hardware components within various personal computing platforms. NOTE: Hardware components include, but are not limited to, central processing units (CPU), chassis, cooling components, graphics cards, input/output devices, memory, motherboards, power supplies, and storage devices.
1. 3.3 Computer Organization
CSPG.Y1.10.1
Research and describe the risks and risk mitigation strategies associated with the utilization and implementation of social media and other digital technology implications. NOTE: Risks include, but are not limited to, cyberbullying, identity theft, impersonation, and social engineering attacks. Implications may include, but are not limited to, employability, legal, physical, psychological, and social access
1. 1.3 Digital Footprint and Reputation
2. 1.4 Cyberbullying
3. 1.5 Internet Safety
4. 1.6 Privacy & Security
5. 3.12 The Impact of the Internet
CSPG.Y1.10.3
Research and describe the potential benefits associated with the utilization and implementation of social media and other digital technologies. NOTE: Potential benefits may include, but are not limited to, brand building, crowdsourcing, personal promotion awareness, and project funding.
1. 1.11 Creative Credit & Copyright
2. 3.1 Intro to the Internet
CSPG.Y1.10.4
Research and describe the relationship between access and security (e.g., active and passive data, convenience, data mining, digital marketing, online wallets, privacy, theft of personal information)
1. 1.6 Privacy & Security
CSPG.Y1.10.6
Research the history of computing devices and their impact on society
1. 3.2 History of Computers
CSPG.Y1.10.7
Research and identify diverse careers and career opportunities (e.g., accessibility, availability, demand) that are influenced by computer science and the technical and soft skills needed for each
1. 14.3 Computer Science Careers
CSPG.Y1.11.1
Communicate basic technical information effectively to diverse audiences including, but not limited to, non-technical audience members. NOTE: Technical information may include, but is not limited to, collecting or collected data, computing hardware, cyber hygiene, networking concepts, programming paradigms, and troubleshooting concepts.
1. 1.13 Project: Public Service Announcement
CSPG.Y1.11.2
Describe and utilize the concepts of storytelling with data. NOTE: Storytelling concepts may include, but are not limited to, identifying the knowledge level of the intended audience; developing a compelling narrative; creating appealing visualizations appropriate for the intended audience and that enhance the narrative; remaining objective and avoiding biases; and avoiding the censoring of data.
1. 1.8 Visualizing and Interpreting Data
CSPG.Y1.11.3
Describe the following common types of data bias: ● confirmation bias ● confounding variables ● outliers ● overfitting/underfitting ● selection bias
1. 1.9 Data Collection & Limitations
CSPG.Y1.11.4
Compare and contrast causation and correlation
1. 1.8 Visualizing and Interpreting Data
CSPG.Y1.11.5
Compare and contrast interpreting data, inferring using data, and implicating with data
1. 1.9 Data Collection & Limitations