Please enable JavaScript to use CodeHS

Kansas 9-12 Standards Mapping


Foundations of Computer Science

76 Standards in this Framework 36 Standards Mapped 47% Mapped to Course

Standard Lessons
L1.CS.D.01 Explain how abstractions hide the underlying implementation details of computing systems embedded in everyday objects.
  1. 2.8 Abstraction
L2.CS.D.02 Describe how internal and external parts of computing devices function to form a system.
L1.CS.HS.01 Compare levels of abstraction and interactions between application software, system software, and hardware layers.
  1. 4.2 Internet Hardware
L2.CS.HS.01 Categorize the roles of operating system software.
L1.CS.HS.02 Compare computer systems and determine advantages and drawbacks of each system.
L2.CS.HS.02 Compare options for building a computer systems and determine advantages and drawbacks of each piece and how it will affect the overall performance.
L1.CS.IO.01 Demonstrate efficeint use of input and output devices
L2.CS.IO.01 Demonstrate use of course specific advanced input and output devices related to field
L1.CS.T.01 Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors.
  1. 2.6 Top Down Design and Decomposition in Karel
  2. 2.16 How to Indent Your Code
  3. 2.17 Debugging Strategies
L2.CS.T.01 Illustrate ways computing systems implement logic, input, and output through hardware components.
  1. 4.2 Internet Hardware
L1.NI.NCO.01 Evaluate the scalability and reliability of networks, by describing the relationship between routers, switches, servers, topology, and addressing.
  1. 4.3 Internet Addresses
L2.NI.NCO.01 Describe the issues that impact network functionality (e.g., bandwidth, load, delay, topology).
  1. 4.3 Internet Addresses
L1.NI.NCO.02 Compare various security measures, considering tradeoffs between the usability and security of a computing system.
  1. 1.6 Privacy & Security
L2.NI.NCO.02 Give examples to illustrate how sensitive data can be affected by malware and other attacks.
  1. 1.1 What is Cybersecurity?
  2. 1.6 Privacy & Security
L1.NI.C.01 Recommend security measures to address various scenarios based on factors such as efficiency, feasibility, and ethical impacts.
  1. 1.6 Privacy & Security
L2.NI.C.01 Compare ways software developers protect devices and information from unauthorized access.
L1.NI.C.02 Explain tradeoffs when selecting and implementing cybersecurity recommendations.
L2.NI.C.02 Use encryption and decryption algorithms to transmit/ receive an encrypted message.
L1.DA.S.01 Analyze storage types and locations.
L2.DA.S.01 Translate and compare different bit representations of data types, such as characters, numbers, and images.
L1.DA.S.02 Evaluate the tradeoffs in how data elements are organized and where data is stored.
L2.DA.S.02 Analyze file systems created for keeping track of files on the hard disk.
L1.DA.C.01 Collect and analyze data.
  1. 1.8 Visualizing and Interpreting Data
L2.DA.C.01 Select data collection tools and techniques to generate data sets that support a claim or communicate information.
  1. 1.9 Data Collection & Limitations
L1.DA.VT.01 Create interactive data visualizations using software tools to help others better understand real-world phenomena.
  1. 1.8 Visualizing and Interpreting Data
  2. 1.9 Data Collection & Limitations
L2.DA.VT.01 Use data analysis tools and techniques to identify patterns in data representing complex systems.
  1. 1.8 Visualizing and Interpreting Data
  2. 1.9 Data Collection & Limitations
L1.DA.IM.01 Create computational models that represent the relationships among different elements of data collected from a phenomenon or process.
  1. 1.8 Visualizing and Interpreting Data
  2. 1.9 Data Collection & Limitations
L2.DA.IM.01 Evaluate the ability of models and simulations to test and support the refinement of hypotheses. (e.g., flocking behaviors, life cycles, etc.)
L1.AP.A.01 Create prototypes that use algorithms to solve computational problems by leveraging prior student knowledge and personal interests.
L2.AP.A.01 Describe how artificial intelligence algorithms drive many software and physical systems (e.g., digital advertising, autonomous robots, computer vision, pattern recognition, text analysis).
L1.AP.V.01 Use lists to simplify solutions, generalizing computational problems instead of repeatedly using simple variables.
  1. 9.11 Intro to Lists/Arrays
  2. 16.1 Indexing Into an Array
L2.AP.A.02 Describe how artificial intelligence drives many software and physical systems.
L1.AP.C.01 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. 2.14 Control Structures Example
  2. 7.9 While Loops
  3. 7.10 Loop and a Half
L2.AP.A.03 Critically examine and trace classic algorithms (e.g., selection sort, insertion sort, binary search, linear search).
  1. 16.2 Finding an Element in a List
L1.AP.C.02 Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
L2.AP.A.04 Implement an artificial intelligence algorithm to play a game against a human opponent or solve a problem.
  1. 8.1 Control Structures Challenges
L1.AP.C.03 Decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, and/or objects.
  1. 2.6 Top Down Design and Decomposition in Karel
L2.AP.A.05 Use and adapt classic algorithms to solve computational problems.
  1. 16.2 Finding an Element in a List
L1.AP.M.01 Create computational artifacts by systematically organizing, manipulating and/or processing data.
  1. 1.9 Data Collection & Limitations
L2.AP.A.06 Evaluate algorithms in terms of their efficiency, correctness, and clarity.
L1.AP.M.02 Systematically design and develop programs for broad audiences by incorporating feedback from users.
L2.AP.V.01 Compare and contrast simple data structures and their uses to simplify solutions, generalizing computational problems instead of repeatedly using primitive variables.
  1. 9.11 Intro to Lists/Arrays
  2. 17.1 Intro to Objects/Maps
  3. 17.2 Basics of Objects
L1.AP.PD.01 Evaluate licenses that limit or restrict use of computational artifacts when using resources such as libraries.
L2.AP.C.01 Trace the execution of repetition (e.g., loops, recursion), illustrating output and changes in values of named variables.
  1. 7.6 General For Loops
  2. 7.7 For Loop Practice
L1.AP.PD.02 Evaluate and refine computational artifacts to make them more usable and accessible.
  1. 9.3 Functions and Parameters 3
  2. 9.4 Functions and Return Values 1
L2.AP.M.01 Construct solutions to problems using student-created components, such as procedures, modules and/or objects.
  1. 9.1 Functions and Parameters 1
  2. 9.2 Functions and Parameters 2
  3. 9.4 Functions and Return Values 1
  4. 9.5 Functions and Return Values 2
L1.AP.PD.03 Design and develop computational artifacts working in team roles using collaborative tools.
  1. 3.1 Collaborative Programming
L2.AP.M.02 Analyze a large-scale computational problem and identify generalizable patterns that can be applied to a solution.
L1.AP.PD.04 Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.
  1. 2.7 Commenting Your Code
L2.AP.M.03 Demonstrate code reuse by creating programming solutions using libraries and APIs.
  1. 2.9 Super Karel
  2. 5.4 Basic Math in JavaScript
L1.IC.C.01 Evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices.
L2.AP.PD.01 Plan and develop programs for broad audiences using a software life cycle process.
L1.IC.C.02 Test and refine computational artifacts to reduce bias and equity deficits.
L2.AP.PD.02 Explain security issues that might lead to compromised computer programs.
  1. 1.6 Privacy & Security
L1.IC.C.03 Demonstrate how a given algorithm applies to problems across disciplines.
L2.AP.PD.03 Develop programs for multiple computing platforms.
L2.AP.PD.04 Use version control systems, integrated development environments (IDEs), and collaborative tools and practices (code documentation) in a group software project.
L2.IC.SI.01 Compare and contrast the benefits and drawbacks of social media.
  1. 1.3 Digital Footprint and Reputation
L1.IC.H.01 Hypothesize the impact of the innovations of computing systems for the next decade.
L2.AP.PD.05 Develop and use a series of test cases to verify that a program performs according to its design specifications.
L1.IC.SLE.01 Explain the beneficial and harmful effects that intellectual property laws can have on innovation.
  1. 1.10 Creative Credit & Copyright
L2.AP.PD.06 Modify an existing program to add additional functionality and discuss intended and unintended implications (e.g., breaking other functionality).
L1.IC.SLE.02 Explain the privacy concerns related to the collection and generation of data through automated processes (e.g., how businesses, social media, and the government collects and uses data) that may not be evident to users.
L2.AP.PD.07 Evaluate key qualities of a program through a process such as a code review.
L1.IC.SLE.03 Evaluate the social and economic implications of privacy in the context of safety, law, or ethics.
  1. 1.6 Privacy & Security
  2. 1.11 Hacking Ethics
L2.AP.PD.08 Compare multiple programming languages and discuss how their features make them suitable for solving different types of problems.
L1.IC.CP.01 Explore computing, software, and data storage systems in local industries.
L2.IC.C.01 Evaluate the beneficial and harmful effects that computational artifacts and innovations have on society.
  1. 4.7 The Impact of the Internet
L2.IC.C.02 Evaluate the impact of equity, access, and influence on the distribution of computing resources in a global society.
  1. 4.7 The Impact of the Internet
L2.IC.C.03 Design and implement a study that evaluates or predicts how computing has revolutionized an aspect of our culture and how it might evolve (e.g., education, healthcare, art/entertainment, energy).
L1.IC.SI.01 Use tools and methods for collaboration on a project to increase connectivity of people in different cultures and career fields.
L2.IC.H.01 Analyze trends of computing and how those trends have changed over time.
L2.IC.SLE.01 Debate laws and regulations that impact the development and use of software.
L2.IC.SLE.02 Determine ways to test the validity of information located online.
  1. 1.7 Information Literacy
L2.IC.SLE.03 Evaluate the social and economic consequences of how law and ethics interact with digital aspects of privacy, data, property, information, and identity.
  1. 1.5 Internet Safety
  2. 1.6 Privacy & Security
  3. 1.11 Hacking Ethics
L2.IC.CP.01 Collaborate with local industry partners to design and implement a viable mentorship.