Standards in this Framework
Standards Mapped
Mapped to Course
Standard | Lessons |
---|---|
CS.HS.1.1a
Identify and create different types of algorithms (sort, search, etc.). |
|
CS.HS.1.1b
Predict the outcome of different types of algorithms. |
|
CS.HS.1.1c
Create or adapt algorithms to solve problems for multiple purposes (e.g., personal interests, client needs). |
|
CS.HS.1.1d
Use an algorithm that involves mathematical operations and functions to solve problems. |
|
CS.HS.1.1e
Use an iterative approach to utilizing and/or developing an algorithm. |
|
CS.HS.1.1f
Recognize problems that cannot be solved computationally. |
|
CS.HS.1.1g
Identify and describe algorithms that exist within their personal lives. |
|
CS.HS.1.2a
Identify and compare different algorithms that can be used to solve the same problem. |
|
CS.HS.1.2b
Illustrate the flow of execution of an iterative algorithm (e.g., recursion). |
|
CS.HS.1.2c
Explain the value of heuristic algorithms to model ways to solve problems. |
|
CS.HS.1.2d
Adapt algorithms used in one problem to solve a related or different problem. |
|
CS.HS.1.2e
Use multiple methods to represent an algorithm (e.g., diagram, programming language, unplugged). |
|
CS.HS.1.3a
Describe pros and cons of the performance of algorithms for the same task. |
|
CS.HS.1.3b
Use an iterative approach to developing an algorithm. |
|
CS.HS.1.3c
Test and troubleshoot so that algorithms produce reasonable results. |
|
CS.HS.1.4a
Demonstrate how the process of decomposition is iterative and used to solve problems. |
|
CS.HS.1.4b
Formulate possible solutions based on the decomposition of a problem. |
|
CS.HS.1.5a
Describe how abstraction is central to computational thinking. |
|
CS.HS.1.5b
Identify and prioritize the most relevant parts of a problem while filtering out extraneous details. |
|
CS.HS.1.5c
Demonstrate different ways to represent key problem components. |
|
CS.HS.1.6a
Identify different types of data that are exchanged and produced by computers (e.g., protocols). |
|
CS.HS.1.6b
Represent data using multiple encoding schemes (e.g., RGB, Hex, HSB, ASCII, Unicode). |
|
CS.HS.1.6c
Evaluate the trade-offs for how data elements are organized and where data are stored (e.g., PNG/GIF, structured/unstructured). |
|
CS.HS.1.6d
Compare and contrast various data structures/techniques for storing and processing data (e.g., arrays, lists, tables). |
|
CS.HS.1.7a
Analyze computer programs to identify patterns within the program. |
|
CS.HS.1.7b
Provide multiple versions of data visualization in order to deepen problem analysis. |
|
CS.HS.1.7c
Interpret and analyze data to make informed decisions. |
|
CS.HS.1.8a
Analyze computer output in different forms (e.g., plain text, CSV, graphs, images). |
|
CS.HS.1.8b
Design visualizations using the appropriate tool(s) with the end user in mind. |
|
CS.HS.1.8c
Provide multiple versions of data visualization in order to deepen problem analysis. |
|
CS.HS.2.1a
Describe key protocols and underlying processes of internet-based services, (e.g., https) and discuss impact of technology change on communication protocols. |
|
CS.HS.2.1b
Illustrate and describe the basic components and various network types and topologies (e.g., personal, local, metropolitan, and wide). |
|
CS.HS.2.1c
Explain the difference between decimal, hexadecimal, octal and binary number formats and how they are used in computing environments. |
|
CS.HS.2.2a
Explain the difference between memory and disk storage, internal and external storage, Random Access Memory (RAM), flash, cloud. |
|
CS.HS.2.2b
List and explain the common working parts of a computing device. |
|
CS.HS.2.2c
Explain how to maintain safety when working on PCs, e.g., electromagnetic precautions. |
|
CS.HS.2.2d
Describe how computing devices are engineered for fault tolerance and reliability, and identify potential sources of weakness (e.g., redundant power supplies, RAID, SAN/NAS connections). |
|
CS.HS.2.3a
Identify and differentiate between different kinds of software (e.g., operating systems vs. applications) and their purposes. |
|
CS.HS.2.3b
Explain what an operating system is, and why it is important for a computer or computing device (e.g., Linux, Windows, iOS). |
|
CS.HS.2.3c
Describe how software interacts with hardware to complete tasks. |
|
CS.HS.2.4a
Explain the integration of hardware, software and network communications components to create a networked system. |
|
CS.HS.2.4b
Summarize security approaches using a systems approach perspective |
|
CS.HS.2.5a
Identify client’s problems/needs. |
|
CS.HS.2.5b
Articulate design requirements back to client. |
|
CS.HS.2.5c
Illustrate options for considerations and develop conceptual model. |
|
CS.HS.2.5d
Perform system analysis based on client considerations. |
|
CS.HS.2.6a
Identify different ways that systems might lose data or functionality. |
|
CS.HS.2.6b
Describe elements of an effective backup system. |
|
CS.HS.2.6c
Compare backup systems for computer users, or a network. |
|
CS.HS.2.6d
List the various backup methodologies (e.g., full, differential), and why one would pick one over the other, or use all. |
|
CS.HS.2.6e
Explain the ways an organization would continue to operate in light of a systems failure. |
|
CS.HS.2.7a
Identify examples of threats to systems and data. |
|
CS.HS.2.7b
Describe the process by which intruders gain entry into a production system (e.g., reconnaissance). |
|
CS.HS.2.7c
Describe and compare methods to test/validate how well systems and data are protected. |
|
CS.HS.2.7d
Investigate different career pathways relating to systems security. |
|
CS.HS.3.1a
Analyze and apply a design methodology to identify constraints and requirements of an identified problem. |
|
CS.HS.3.1b
Utilize tools and resources such as pseudocode, flowcharts, wireframes, etc., as part of the design process. |
|
CS.HS.3.1c
Determine and use graphical or text-based languages. |
|
CS.HS.3.1d
Understand and apply core programming concepts. |
|
CS.HS.3.2a
Write code per selected design. |
|
CS.HS.3.2b
Create code comments to communicate to other developers and ensure documentation of code. |
|
CS.HS.3.2c
Use various troubleshooting and debugging techniques to improve code. |
|
CS.HS.3.2d
Create appropriate variables to store and retrieve data. |
|
CS.HS.3.3a
Integrate collaborative strategies to improve programming outputs. |
|
CS.HS.3.3b
Identify and analyze a variety of collaborative tools (e.g., commenting, development repositories) in order to determine the appropriateness for intended use. |
|
CS.HS.3.3c
Identify strategies such as peer reviews to test and refine artifacts in development. |
|
CS.HS.3.3d
Determine when to use standard software tools like APIs, libraries, version control repositories, etc. |
|
CS.HS.3.4a
Understand and apply principles of client-based design. |
|
CS.HS.3.4b
Guide/advise clients on strategies and solutions best suited for their problem (i.e., type of platform). |
|
CS.HS.3.4c
Construct effective methods for gathering feedback from client. |
|
CS.HS.3.4d
Respond to feedback from clients to improve computing solutions. |
|
CS.HS.3.4e
Create and share product support documentation for potential users. |
|
CS.HS.3.4f
Articulate lessons learned as a result of the design and creation process. |
|
CS.HS.3.5a
Investigate and understand privacy, security and protection laws. |
|
CS.HS.3.5b
Articulate the importance of securing personal data information on encrypted storage systems. |
|
CS.HS.3.5c
Identify and analyze current events to ensure the safety, security and wellbeing of all potential clients and end users. |
|
CS.HS.3.5d
Identify influential computing innovations, and identify the beneficial and harmful effects they have had, or could have, on society, economy and culture. |
|
CS.HS.3.5e
Discuss and explain how diversity of design and issues of accessibility impact a wide-range of users. |
|
CS.HS.3.5f
Demonstrate ways to improve the accessibility of computational technologies and artifacts. |
|
CS.HS.3.6a
Describe how software licensing influences program development. |
|
CS.HS.3.6b
Investigate and develop solutions that discourage online software piracy. |
|
CS.HS.3.6c
Explore and integrate security measures such as encryption, authentication and verification strategies to secure developed computer programs. |
|
CS.HS.3.6d
Research and abide by intellectual property laws and patents. |
|