This curriculum follows the CSTA K - 12 Standards for Computer Science curriculum to ensure that students are meeting all of their goals from a technical standpoint. In order to teach this curriculum effectively, we use the ADDIE framework to develop the technical curriculum. However, to ensure that this program offers adequate SEL opportunities and prioritizes community development and functioning, we make use of Gunawardena's Wisdom Community methodology. This methodology establishes focus groups as a crucial methodology in order to tie together the materials effectively. This curriculum also uses Universal Design for Learning (UDL) principles to ensure that the curriculum is accessible to all students.
Standard Number
Description
Lessons
2-AP-10
Use flowcharts and/or pseudocode to address complex problems as algorithms. Students should use pseudocode and/or flowcharts to organize and sequence an algorithm that addresses a complex problem, even though they may not actually program the solutions.
2-AP-11
Create clearly named variables that represent different data types and perform operations on their values. Students should use pseudocode and/or flowcharts to organize and sequence an algorithm that addresses a complex problem, even though they may not actually program the solutions.
2-AP-12
Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals. When planning and developing programs, students should decide when and how to declare and name new variables. Students should use naming conventions to improve program readability.
2-AP-13
Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs. Control structures can be combined in many ways. Nested loops are loops placed within loops. Compound conditionals combine two or more conditions in a logical relationship (e.g., using AND, OR, and NOT), and nesting conditionals within one another allows the result of one conditional to lead to another.
2-AP-15
Seek and incorporate feedback from team members and users to refine a solution that meets user needs. Students should begin to seek diverse perspectives throughout the design process to improve their computational artifacts. Considerations of the end-user may include usability, accessibility, age-appropriate content, respectful language, user perspective, pronoun use, color contrast, and ease of use.
2-AP-17
Systematically test and refine programs using a range of test cases. Students should begin to test programs by considering potential errors, such as what will happen if a user enters invalid input (e.g., negative numbers and 0 instead of positive numbers).
2-AP-18
Distribute tasks and maintain a project timeline when collaboratively developing computational artifacts. Students should assume pre-defined roles within their teams and manage the project workflow using structured timelines. With teacher guidance, they will begin to create collective goals, expectations, and equitable workloads.