Computer Science Teachers Association Standards (CSTA)
Grades 3-5
Identifier | Standard | Concept | Subconcept | Related Projects |
---|---|---|---|---|
1B-CS-01 | Describe how internal and external parts of computing devices function to form a system. |
Computing Systems |
Devices |
All Projects |
1B-CS-02 | Model how computer hardware and software work together as a system to accomplish tasks. |
Computing Systems |
Hardware & Software |
All Projects |
1B-CS-03 | Determine potential solutions to solve simple hardware and software problems using common troubleshooting strategies. |
Computing Systems |
Troubleshooting |
All Projects |
1B-DA-06 | Organize and present collected data visually to highlight relationships and support a claim. |
Data Analysis |
Collection, Visualization & Transformation |
Students can use sensors to collect, visually represent, and interpret data. For example, students can plot their sensor data on a graph and propose relationships. |
1B-DA-07 | Use data to highlight or propose cause-and-effect relationships, predict outcomes, or communicate an idea. |
Data Analysis |
Inference & Models |
Energy Transformations Using Hummingbird Robotics |
1B-AP-08 | Compare and refine multiple algorithms for the same task and determine which is the most appropriate. |
Algorithms & Programming |
Algorithms |
All Projects |
1B-AP-09 | Create programs that use variables to store and modify data. |
Algorithms & Programming |
Variables |
Variables can be used to store sensor data or keep track of the score in a Hummingbird game. Intermediate: Creating a Game with Hummingbird |
1B-AP-10 | Create programs that include sequences, events, loops, and conditionals. |
Algorithms & Programming |
Control |
All Projects |
1B-AP-11 | Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process. |
Algorithms & Programming |
Modularity |
All Projects |
1B-AP-12 | Modify, remix, or incorporate portions of an existing program into one’s own work, to develop something new or add more advanced features. |
Algorithms & Programming |
Modularity |
All Projects |
1B-AP-13 | Use an iterative process to plan the development of a program by including others’ perspectives and considering user preferences. |
Algorithms & Programming |
Program Development |
Design Thinking and Robotics |
1B-AP-15 | Test and debug (identify and fix errors) a program or algorithm to ensure it runs as intended. |
Algorithms & Programming |
Program Development |
All Projects |
1B-AP-16 | Take on varying roles, with teacher guidance, when collaborating with peers during the design, implementation, and review stages of program development. |
Algorithms & Programming |
Program Development |
All Projects |
1B-AP-17 | Describe choices made during program development using code comments, presentations, and demonstrations. |
Algorithms & Programming |
Program Development |
All Projects |
1B-IC-19 | Brainstorm ways to improve the accessibility and usability of technology products for the diverse needs and wants of users. |
Impacts of Computing |
Culture |
Design Thinking and Robotics |
1B-IC-20 | Seek diverse perspectives for the purpose of improving computational artifacts. |
Impacts of Computing |
Social Interactions |
Design Thinking and Robotics |
Grades 6-8
Identifier | Standard | Concept | Subconcept | Related Projects |
---|---|---|---|---|
2-CS-02 | Design projects that combine hardware and software components to collect and exchange data. |
Computing Systems |
Hardware & Software |
Any project that uses sensors can meet this standard. All Projects |
2-CS-03 | Systematically identify and fix problems with computing devices and their components. |
Computing Systems |
Troubleshooting |
All Projects |
2-CS-08 | Collect data using computational tools and transform the data to make it more useful and reliable. |
Data & Analysis |
Collection, Visualization & Transformation |
Students can collect data with Hummingbird sensors, clean it, and present it visually. |
2-AP-10 | Use flowcharts and/or pseudocode to address complex problems as algorithms. |
Algorithms & Programming |
Algorithms |
All Projects |
2-AP-11 | Create clearly named variables that represent different data types and perform operations on their values. |
Algorithms & Programming |
Variables |
Any project can incorporate variables to meet this standard. All Projects |
2-AP-12 | Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals. |
Algorithms & Programming |
Control |
All Projects |
2-AP-13 | Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs. |
Algorithms & Programming |
Modularity |
All Projects |
2-AP-14 | Create procedures with parameters to organize code and make it easier to reuse. |
Algorithms & Programming |
Modularity |
Any project can incorporate custom blocks or procedures to meet this standard. All Projects |
2-AP-15 | Seek and incorporate feedback from team members and users to refine a solution that meets user needs. |
Algorithms & Programming |
Program Development |
Design Thinking and Robotics |
2-AP-17 | Systematically test and refine programs using a range of test cases. |
Algorithms & Programming |
Program Development |
All Projects |
2-AP-18 | Distribute tasks and maintain a project timeline when collaboratively developing computational artifacts. |
Algorithms & Programming |
Program Development |
All Projects |
2-AP-19 | Document programs in order to make them easier to follow, test, and debug. |
Algorithms & Programming |
Program Development |
All Projects |
Grades 9-10
Identifier | Standard | Concept | Subconcept | Related Projects |
---|---|---|---|---|
3A-CS-02 | Compare levels of abstraction and interactions between application software, system software, and hardware layers. |
Computing Systems |
Hardware & Software |
All Hummingbird projects can be used to discuss the interaction between the Hummingbird hardware, the software library, and the student’s program. All Projects |
3A-AP-13 | Create prototypes that use algorithms to solve computational problems by leveraging prior student knowledge and personal interests. |
Algorithms & Programming |
Algorithms |
All Projects |
3A-AP-14 | Use lists to simplify solutions, generalizing computational problems instead of repeatedly using simple variables. |
Algorithms & Programming |
Variables |
The Hummingbird sensors can be used to collect data and store it in a list for processing. |
3A-AP-15 | Justify the selection of specific control structures when tradeoffs involve implementation, readability, and program performance, and explain the benefits and drawbacks of choices made. |
Algorithms & Programming |
Control |
All Projects |
3A-AP-16 | Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions. |
Algorithms & Programming |
Control |
All Projects |
3A-AP-17 | Decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, and/or objects. |
Algorithms & Programming |
Modularity |
All Projects |
3A-AP-18 | Create artifacts by using procedures within a program, combinations of data and procedures, or independent but interrelated programs. |
Algorithms & Programming |
Modularity |
Any project can incorporate custom blocks or procedures to meet this standard. All Projects |
3A-AP-22 | Design and develop computational artifacts working in team roles using collaborative tools. |
Algorithms & Programming |
Program Development |
All Projects |
3A-AP-23 | Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs. |
Algorithms & Programming |
Program Development |
Student can document and present their design decisions for any Hummingbird project. All Projects |