• Computing Systems (CS)
    • Devices (D)
      • Model how abstractions hide the underlying implementation details of computing systems embedded in everyday objects.

    • Hardware & Software (HS)
      • Analyze the levels of abstraction and interactions between application software, system software, and hardware.

    • Troubleshooting (T)
      • Develop and apply criteria for the systematic discovery of errors and systematic strategies for the correction of errors in computing systems.

  • Networks & The Internet (NI)
    • Network Communication & Organization (NCO)
      • Evaluate the scalability and reliability of networks by identifying and illustrating the basic components of computer networks (e.g., routers, switches, servers, etc.) and network protocols (e.g., IP, DNS).

    • Cybersecurity (CY)
      • Compare physical and cybersecurity measures by evaluating trade-offs between the usability and security of a computing system and the risks of an attack.

      • Recommend security measures to address various scenarios based on information security principles.

      • Explain trade-offs when selecting and implementing cybersecurity recommendations from multiple perspectives, such as the user, enterprise, and government.

  • Data Analysis (DA)
    • Storage (S)
      • Convert and compare different bit representations of data types, such as characters, numbers, and images.

      • Evaluate the trade-offs in how data is organized and stored digitally.

    • Collection, Visualization, & Transformation (CVT)
      • Use tools and techniques to locate, collect, and create visualizations of small and large-scale data sets (e.g., paper surveys and online data sets).

    • Inference & Models (IM)
      • Illustrate and explain the relationships between collected data elements using computational models.

  • Algorithms & Programming (AP)
    • Algorithms (A)
      • Create a prototype that uses algorithms (e. g., searching, sorting, finding shortest distance) to provide a possible solution for a real-world problem.

    • Variables (V)
      • Demonstrate the use of lists (e.g., arrays) to simplify solutions, generalizing computational problems instead of repeatedly using simple variables.

    • Control (C)
      • Justify the selection of specific control structures (e.g., sequence, conditionals, repetition, procedures) considering program efficiencies such as readability, performance, and memory usage.

    • Modularity (M)
      • Decompose problems into procedures using systematic analysis and design.

      • Create computational artifacts by systematically organizing, manipulating and/or processing data.

    • Program Development (PD)
      • Create software that will provide solutions to a variety of users using a software development process.

      • Evaluate a variety of software licensing schemes (e.g., open source, freeware, commercial) and discuss the advantages and disadvantages of each scheme in software development.

      • While working in a team, develop, test, and refine event-based programs that solve practical problems or allow self-expression.

      • Using visual aids and documentation, illustrate the design elements and data flow (e.g., flowcharts, pseudocode) of the development of a complex program.

      • Evaluate and refine computational artifacts to make them more user-friendly, efficient and/or accessible.

  • Impacts of Computing (IC)
    • Culture (CU)
      • Evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices.

      • Test and refine computational artifacts to ensure access to a variety of user audiences.

      • Demonstrate ways a given algorithm can help solve computational problems across disciplines.

    • Social Interactions (SI)
      • Demonstrate and debate how computing increases and decreases connectivity and communication among people of various cultures.

    • Internet Safety, Law, & Ethics (SLE)
      • Describe the beneficial and harmful effects that intellectual property laws can have on innovation.

      • Describe and discuss the privacy concerns related to the large-scale collection and analysis of information about individuals (e.g., how websites collect and use data) that may not be evident to users.

      • Evaluate the social and economic consequences of how law and ethics interact with digital aspects of privacy, data, property, information, and identity.