As Computational Thinkers, students break problems into component parts, identify key pieces of information, and use that information to solve problems. Subtopics include Abstraction, Algorithms, and Programming and Development.

Click for Abstraction Resources
Click for Algorithm Resources
Click for Programming and Development Resources


Third through 5th Grade

Standards

3rd Grade

1 - Use numbers or letters to represent information in another form.

2 - Analyze a given list of sub-problems while addressing a larger problem.

4th Grade

1 - Construct a basic system of numbers, letters, or symbols to represent information as a cipher.

2 - Formulate a list of sub-problems to consider while addressing a larger problem.

5th Grade

Construct a complex system of numbers or letters to represent information.

Abstraction Resources Middle School Section

Standards

6th Grade

1 - Remove background details from an everyday process to highlight essential properties.

2 - Define a process as a function.

7th Grade

Create a function to simplify a task.

8th Grade

1 - Design a function using a programming language that demonstrates abstraction.

2 - Explain how abstraction is used in a given function.

Abstraction Resources high school section

Standards

1 - Decompose problems into component parts, extract key information, and develop descriptive models to understand the levels of abstractions in complex systems.

2 - Explain how computing systems are often integrated with other systems and embedded in ways that may not be apparent to the user.


Algorithms Resources third through fifth grade section

Standards

3rd Grade

3 - Explain that different solutions exist for the same problem or sub-problem.

4 - Examine logical reasoning to predict outcomes of an algorithm.

5 - Create an algorithm to solve a problem as a collaborative team.

6 - Describe the function of a flowchart.

4th Grade

3 - Show that different solutions exist for the same problem or sub-problem.

4 - Detect and debug logical errors in various basic algorithms.

5 - Use flowcharts to create a plan or algorithm.

6 - Define a simple pseudocode.

5th Grade

2 - Create an algorithm to solve a problem while detecting and debugging logical errors within the algorithm.

3 - Create an algorithm that is defined by simple pseudocode.

4 - Create a simple pseudocode.

5 - Develop and recommend solutions to a given problem and explain the process to an audience.

Algorithms Resources middle school section

Standards

6th Grade

3 - Create pseudocode that uses conditionals.

4 - Differentiate between flowcharts and pseudocode.

5 - Identify algorithms that make use of sequencing, selection or iteration.

7th Grade

2 - Create complex pseudocode using conditionals and Boolean statements.

3 - Create algorithms that demonstrate sequencing, selection or iteration.

4 - Design a complex algorithm that contains sequencing, selection or iteration.

8th Grade

3 - Create an algorithm using a programming language that includes the use of sequencing, selections, or iterations.

4 - Create a function to simplify a task.

Algorithms Resources high school section

Standards

3 - Differentiate between a generalized expression of an algorithm in pseudocode and its concrete implementation in a programming language.

a. Explain that some algorithms do not lead to exact solutions in a reasonable amount of time and thus approximations are acceptable.

b. Compare and contrast the difference between specific control structures such as sequential statements, conditional, iteration, and explain the benefits and drawbacks of choices made. Examples: Tradeoffs involving implementation, readability, and program performance.

c. Distinguish when a problem solution requires decisions to be made among alternatives, such as selection constructs, or when a solution needs to be iteratively processed to arrive at a result, such as iterative “loop” constructs or recursion.

d. Evaluate and select algorithms based on performance, reusability, and ease of implementation.

e. Explain how more than one algorithm may solve the same problem and yet be characterized with different priorities. Examples: All self-driving cars have a common goal of taking a passenger to a designation but may have different priorities such as safety, speed, or conservation; web search engines have their own algorithms for search with their own priorities.


Programming and development Resources K. through second grade section

Standards

Kindergarten

2 - Demonstrate use of input devices.

1st Grade

3 - Construct elements of a simple computer program in collaboration with others.

2nd Grade

3 - Construct elements of a simple computer program using basic commands.

4 - Identify bugs in basic programming.

Tools for Students

Programming and development Resources third through fifth grade section

Standards

3rd Grade

7 - Test and debug a given program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

4th Grade

7 - Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

5th Grade

6 - Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs.

7 - Identify variables.

8 - Demonstrate that programs require known starting values that may need to be updated appropriately during the execution of programs.

Programming and development Resources middle school section

Standards

6th Grade

6 - Identify steps in developing solutions to complex problems using computational thinking.

7 - Describe how automation works to increase efficiency.

8 - Create a program that initializes a variable.

7th Grade

5 - Solve a complex problem using computational thinking.

6 - Create and organize algorithms in order to automate a process efficiently.

7 - Create a program that updates the value of a variable in the program.

8 - Formulate a narrative for each step of a process and its intended result, given pseudocode or code.

8th Grade

5 - Discuss the efficiency of an algorithm or technology used to solve complex problems.

6 - Describe how algorithmic processes and automation increase efficiency.

7 - Create a program that includes selection, iteration, or abstraction, and initializes, and updates, at least two variables.

Programming and development Resources high school section

Standards

5 - Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using current events.

6 - Decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, and/or objects, with parameters, and which return a result.

7 - Compare and contrast fundamental data structures and their uses.

8 - Demonstrate code reuse by creating programming solutions using libraries and Application Programming Interfaces.

9 - Demonstrate the ability to verify the correctness of a program.

a. Develop and use a series of test cases to verify that a program performs according to its design specifications.

b. Collaborate in a code review process to identify correctness, efficiency, scalability and readability of program code.

10 - Resolve or debug errors encountered during testing using iterative design process. .

Home Button
Button for Partnership Directory page
Button for Professional Learning Opportunities
Button for Inquire and share page
Button for glossary page
Back button to D.L.C.S. Activity Resource Page