Standards in this Framework
Standard | Description |
---|---|
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. |