• Computing Systems (CS)
    • Devices (D)
      • Develop and implement a process to evaluate existing computing devices and recommend improvements to the design based on how other users interact with the device.

    • Hardware & Software (HS)
      • Design and refine projects that combine hardware and software components to collect and exchange data.

    • Troubleshooting (T)
      • Systematically identify, resolve, and document complex software and hardware problems with computing devices and their components.

  • Networks & The Internet (NI)
    • Network Communication & Organization (NCO)
      • Explain protocols and their importance to data transmission; model how packets are broken down into smaller pieces and how they are delivered.

    • Cybersecurity (CY)
      • Evaluate physical and digital procedures that could be implemented to protect electronic data/information; explain the impacts of cybersecurity threats and attacks.

      • Compare the advantages and disadvantages of methods of encryption to model the secure transmission of information.

  • Data Analysis (DA)
    • Storage (S)
      • Analyze multiple methods of representing the same data and justify the most appropriate method for representing data.

    • Collection, Visualization, & Transformation (CVT)
      • Develop, implement, and refine a process that utilizes computational tools to collect and transform data to make it more useful and reliable.

    • Inference & Models (IM)
      • Refine computational models based on the data generated by the models.

  • Algorithms & Programming (AP)
    • Algorithms (A)
      • Design algorithms in natural language, flow and control diagrams, comments within code, and/or pseudocode to solve complex problems.

    • Control (C)
      • Develop programs that utilize combinations of nested loops, compound conditionals, procedures without parameters, and the manipulation of variables representing different data types.

    • Modularity (M)
      • Decompose problems and subproblems into parts to facilitate the design, implementation, and review of complex programs.

    • Program Development (PD)
      • Seek and incorporate feedback from team members and users to refine a solution to a problem that meets the needs of different users.

      • Incorporate existing code, media, and libraries into original programs of increasing complexity and give attribution.

      • Systematically test and refine programs using a range of student created inputs.

      • Model effective communication between participants and demonstrate successful collaboration when developing computational artifacts.

      • Document text-based programs of increasing complexity in order to make them easier to follow, test, and debug.

  • Impacts of Computing (IC)
    • Culture (CU)
      • Explore careers related to the field of computer science, and explain how computing impacts innovation in various career fields.

      • Evaluate and improve the design of existing technologies to meet the needs of different users and increase accessibility and usability.

    • Social Interactions (SI)
      • Describe and use safe, appropriate, and responsible practices (i.e., netiquette) when participating in online communities and understand the impact of not using safe, appropriate, and responsible practices.

      • Communicate and publish key ideas and details individually or collaboratively in a way that informs, persuades, and/or entertains using a variety of digital tools and media-rich resources.

    • Internet Safety, Law, & Ethics (SLE)
      • Discuss the social impacts and ethical considerations associated with cybersecurity, including the positive and malicious purposes of hacking.