# 68

Standards in this Framework

Standards Mapped

# 55%

Mapped to Course

Standard Lessons
CS.1.1.1
Create prototypes that use algorithms to solve computational problems by leveraging prior student knowledge and personal interests
1. 5.4 Accessor Methods
2. 5.5 Mutator Methods
3. 5.6 Writing Methods
4. 17.1 Elevens
5. 18.1 Magpie Lab
6. 20.4 Create a Negative or Positive Review
CS.1.1.2
Describe how artificial intelligence drives many software and physical systems
1. 18.1 Magpie Lab
CS.1.1.3
Implement an artificial intelligence algorithm to play a game against a human opponent or solve a problem
1. 5.7 Static Variables and Methods
2. 18.1 Magpie Lab
CS.1.1.4
Use and adapt classic algorithms to solve computational problems
1. 7.5 Searching
2. 7.6 Sorting
3. 10.2 Recursive Searching
4. 10.3 Recursive Sorting
CS.1.1.5
Develop classic algorithms in code to solve computational problems
1. 6.4 Developing Algorithms Using Arrays
2. 7.4 Developing Algorithms using ArrayLists
3. 7.5 Searching
4. 7.6 Sorting
5. 10.2 Recursive Searching
6. 10.3 Recursive Sorting
CS.1.1.6
Evaluate algorithms in terms of their efficiency, correctness, and clarity
1. 4.5 Informal Code Analysis
2. 5.8 Scope and Access
3. 7.6 Sorting
4. 10.2 Recursive Searching
5. 10.3 Recursive Sorting
CS.1.2.1
Justify the selection of specific control structures when tradeoffs involve implementation, readability, and program performance, and explain the benefits and drawbacks of choices made
1. 3.7 Comparing Objects
2. 4.1 Iteration
3. 4.2 For Loops
4. 4.3 Developing Algorithms Using Strings
5. 4.5 Informal Code Analysis
6. 10.1 Recursion
CS.1.2.2
Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions
1. 18.1 Magpie Lab
2. 20.4 Create a Negative or Positive Review
3. 21.4 Activity 4: Extending the Celebrity Class
CS.1.2.3
Illustrate the flow of execution of a recursive algorithm
CS.1.2.4
Implement conditional controls in code
1. 3.1 Boolean Expressions and if Statements
2. 3.2 if Statements and Control Flow
3. 3.3 if-else Statements
4. 3.4 else if Statements
5. 4.1 Iteration
CS.1.2.5
Implement recursive algorithms in code
1. 10.1 Recursion
2. 10.2 Recursive Searching
3. 10.3 Recursive Sorting
CS.1.3.1
Demonstrate the use of both linked lists and arrays to simplify solutions, generalizing computational problems instead of repeatedly using simple variables
1. 6.1 Array
2. 6.2 Traversing Arrays
3. 6.3 Enhanced for Loop for Arrays
CS.1.3.2
Compare and contrast fundamental data structures and their uses
1. 6.1 Array
2. 7.1 ArrayList
3. 7.4 Developing Algorithms using ArrayLists
4. 8.1 2D Arrays
5. 8.2 Traversing 2D Arrays
CS.1.3.3
Implement arrays in code
1. 6.1 Array
2. 6.2 Traversing Arrays
3. 6.3 Enhanced for Loop for Arrays
4. 6.4 Developing Algorithms Using Arrays
CS.1.3.4
Implement ArrayLists and LinkedLists in code
1. 7.1 ArrayList
2. 7.2 ArrayList Methods
3. 7.3 Traversing ArrayLists
4. 7.4 Developing Algorithms using ArrayLists
CS.1.4.1
Decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, and/or objects
1. 2.4 Calling a Void Method
2. 2.5 Calling a Void Method with Parameters
3. 2.6 Calling a Non-void Method
4. 5.4 Accessor Methods
5. 5.5 Mutator Methods
6. 5.6 Writing Methods
CS.1.4.2
Create artifacts by using procedures within a program, combinations of data and procedures, or independent but interrelated programs
1. 6.4 Developing Algorithms Using Arrays
2. 7.4 Developing Algorithms using ArrayLists
3. 8.2 Traversing 2D Arrays
CS.1.4.3
Construct solutions to problems using student-created components, such as procedures, modules and/or objects
1. 5.4 Accessor Methods
2. 5.5 Mutator Methods
3. 5.6 Writing Methods
4. 5.7 Static Variables and Methods
5. 6.4 Developing Algorithms Using Arrays
6. 7.4 Developing Algorithms using ArrayLists
7. 17.1 Elevens
8. 18.1 Magpie Lab
9. 19.1 Picture Lab
10. 20.3 Autogenerated Review
11. 20.4 Create a Negative or Positive Review
12. 22.4 Activity 4: Hiding and Revealing a Text Message
CS.1.4.4
Analyze a large-scale computational problem and identify generalizable patterns that can be applied to a solution
1. 10.1 Recursion
2. 18.1 Magpie Lab
3. 19.1 Picture Lab
4. 22.2 Activity 2: Hiding and Revealing a Picture
5. 22.4 Activity 4: Hiding and Revealing a Text Message
CS.1.4.5
Demonstrate code reuse by creating programming solutions using libraries and APIs
1. 2.9 Wrapper Classes: Integers and Doubles
2. 2.10 Using the Math Class
3. 17.1 Elevens
4. 18.1 Magpie Lab
CS.1.5.1
Systematically design and develop programs for broad audiences by incorporating feedback from users
CS.1.5.2
Evaluate licenses that limit or restrict the use of computational artifacts when using resources such as libraries
CS.1.5.3
Evaluate and refine computational artifacts to make them more usable by all and accessible to people with disabilities
CS.1.5.4
Design and develop computational artifacts while working in team roles and using collaborative tools
1. 20.1 Introduction
2. 20.2 Sentiment Value and Star Ratings
3. 20.3 Autogenerated Review
4. 21.1 Activity 1: Introduction to Celebrity
5. 21.2 Activity 2: The Celebrity Class: A Simple Version
6. 21.3 Activity 3: Putting it All Together
CS.1.5.5
Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs
CS.1.5.6
Plan and develop programs for broad audiences using a software life cycle process
CS.1.5.7
Explain security issues that might lead to compromised computer programs
CS.1.5.8
Develop programs for multiple computing platforms
CS.1.5.9
Use version control systems, integrated development environments (IDEs), and collaborative tools and practices (code documentation) in a group software project
2. 21.1 Activity 1: Introduction to Celebrity
3. 21.2 Activity 2: The Celebrity Class: A Simple Version
4. 21.3 Activity 3: Putting it All Together
5. 21.4 Activity 4: Extending the Celebrity Class
CS.1.5.10
Develop and use a series of test cases to verify that a program performs according to its design specifications
CS.1.5.11
Modify an existing program to add additional functionality and discuss intended and unintended implications, e.g., breaking other functionality
1. 5.7 Static Variables and Methods
2. 18.1 Magpie Lab
3. 19.1 Picture Lab
CS.1.5.12
Evaluate key qualities of a program through a process such as a code review
1. 7.6 Sorting
CS.1.5.13
Compare multiple programming languages and discuss how their features make them suitable for solving different types of problems
CS.2.1.1
Explain how abstractions hide the underlying implementation details of computing systems embedded in everyday objects
1. 2.9 Wrapper Classes: Integers and Doubles
2. 2.10 Using the Math Class
CS.2.2.1
Compare levels of abstraction and interactions between application software, system software, and hardware layers
CS.2.2.2
Categorize the roles of operating system software
CS.2.3.1
Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors
CS.2.3.2
Illustrate ways computing systems implement logic, input, and output through hardware components
CS.3.1.1
Translate between different bit representations of real-world phenomena, such as characters, numbers, and images, e.g., convert hexadecimal colors to decimal percentages, ASCII/Unicode representation
CS.3.1.2
Evaluate the tradeoffs in how data elements are organized and where data is stored
1. 6.1 Array
2. 7.1 ArrayList
3. 7.4 Developing Algorithms using ArrayLists
4. 8.1 2D Arrays
CS.3.1.3
Demonstrate the ability to store bit representation of real-world phenomena, characters, numbers, and images
1. 22.1 Activity 1: Exploring Color
2. 22.2 Activity 2: Hiding and Revealing a Picture
3. 22.3 Activity 3: Identifying a Hidden Picture
4. 22.4 Activity 4: Hiding and Revealing a Text Message
CS.3.2.1
Create interactive data visualizations or alternative representations using software tools to help others better understand real-world phenomena
CS.3.2.2
Use data analysis tools and techniques to identify patterns in data representing complex systems
CS.3.2.3
Select data collection tools and techniques to generate data sets that support a claim or communicate information
CS.3.3.1
Create computational models that represent the relationships among different elements of data collected from a phenomenon, process, or model
CS.3.3.2
Evaluate the ability of models and simulations to test and support the refinement of hypotheses
CS.4.1.1
Evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices
1. 5.10 Ethical and Social Implications of Computing
CS.4.1.2
Test and refine computational artifacts to reduce bias and equity deficits
CS.4.1.3
Demonstrate ways a given algorithm applies to problems across disciplines
1. 5.10 Ethical and Social Implications of Computing
CS.4.1.4
Explain the potential impacts of artificial intelligence on society
1. 5.10 Ethical and Social Implications of Computing
CS.4.1.5
Evaluate computational artifacts to maximize their beneficial effects and minimize harmful effects on society
1. 5.10 Ethical and Social Implications of Computing
CS.4.1.6
Create computational artifacts to maximize their beneficial effects and minimize harmful effects on society
CS.4.1.7
Evaluate the impact of equity, access, and influence on the distribution of computing resources in a global society
1. 5.10 Ethical and Social Implications of Computing
CS.4.1.8
Predict how computational innovations that have revolutionized aspects of our culture might evolve
1. 5.10 Ethical and Social Implications of Computing
CS.4.2.1
Use tools and methods for collaboration on a project to increase connectivity of people in different cultures and career fields
CS.4.2.2
Use tools and methods for collaboration to increase the productivity of a team
CS.4.3.1
Explain the beneficial and harmful effects that intellectual property laws can have on innovation
CS.4.3.2
Explain the privacy concerns related to the collection and generation of data through automated processes that may not be evident to users
1. 7.7 Ethical Issues Around Data Collection
CS.4.3.3
Evaluate the social and economic implications of privacy in the context of safety, law, or ethics
1. 7.7 Ethical Issues Around Data Collection
CS.4.3.4
Discuss the role of ethics in emerging technologies
1. 7.7 Ethical Issues Around Data Collection
CS.4.3.5
Debate laws and regulations that impact the development and use of software
1. 5.10 Ethical and Social Implications of Computing
2. 7.7 Ethical Issues Around Data Collection
CS.5.1.1
Evaluate the scalability and reliability of networks, by describing the relationship between routers, switches, servers, topology, and addressing
CS.5.1.2
Describe the issues that impact network functionality, e.g., bandwidth, load, delay, topology
CS.5.2.1
Illustrate how sensitive data can be affected by malware and other attacks
CS.5.2.2
Recommend security measures to address various scenarios based on factors such as efficiency, feasibility, and ethical impacts
CS.5.2.3
Compare various security measures, considering tradeoffs between the usability and security of a computing system
CS.5.2.4
Explain tradeoffs when selecting and implementing cybersecurity recommendations
CS.5.2.5
Compare ways software developers protect devices and information from unauthorized access