CS Discoveries 2019-2020

Standards Alignment

Unit 1 Overview

Unit 1 introduces core practices and frameworks that students will use throughout the course. By the end of the unit, students should be able to identify the defining characteristics of a computer and how it is used to solve information problems. They should be able to use a structured problem solving process to address problems and design solutions that use computing technology.

Learning Framework

Understanding Computing Devices

Students should be able to identify input, output, storage, and processing as four essential components of a computing device and explain the role that each component takes when computers are used to solve informational problems.

Models of Computing Devices:

Identify a computer as a machine that processes information and give a high level description of the input-output-storage-processing model of computing devices.

Input and Output:

Identify the inputs and outputs of common computing devices and select the inputs and outputs used to perform common computing tasks.

Storage:

Provide examples of common types of information stored on a computer and explain the need for storage as part of processing information with a computer.

Processing:

Define processing as the work done (possibly by a computer) to turn an input into an output and define an algorithm as the series of commands a computer uses to process information

The Problem Solving Process

Students should be able to define and use a structured problem solving process, identifying key components of the process and how they apply to various problems. Students should use multiple strategies to approach problems, iteratively improving on the solution through collaboration and reflection.

Use a structured problem solving process:

Given various problems, identify individual actions that would fall within each step of a structured process to solve them.

Define a problem to be solved

Assess how well defined a problem is and use strategies to define the problem more precisely

Plan a solution

Consider various approaches to solving a problem, and decide which is the most appropriate

Implement a solution

Carry out and evaluate a solution to a problem, iteratively improving on it as needed

Computing and Algorithms

Students should combine their understandings of computing and problem solving to identify and design solutions for computational problems. In doing so, they should develop algorithms that can automate the processing of information, producing a desired output from a given input.

Identify and define computational problems:

Choose problems that can be solved with computing and justify those choices.

Develop computational solutions:

Identify the inputs associated with a given problem, and define the processing and storage needed to produce the desired output.

Developing algorithms:

Develop and iteratively improve algorithms for processing information.


Download as CSV

Unit 1 - Problem Solving

Lesson 1: Intro to Problem Solving

Standards Alignment

CSTA K-12 Computer Science Standards (2017)

AP - Algorithms & Programming
  • 1B-AP-08 - Compare and refine multiple algorithms for the same task and determine which is the most appropriate.
  • 1B-AP-11 - Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process.
  • 1B-AP-16 - Take on varying roles, with teacher guidance, when collaborating with peers during the design, implementation and review stages of program development.

Lesson 2: The Problem Solving Process

Standards Alignment

CSTA K-12 Computer Science Standards (2017)

AP - Algorithms & Programming
  • 1B-AP-08 - Compare and refine multiple algorithms for the same task and determine which is the most appropriate.
  • 1B-AP-11 - Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process.

Lesson 3: Exploring Problem Solving

Standards Alignment

CSTA K-12 Computer Science Standards (2017)

AP - Algorithms & Programming
  • 1B-AP-08 - Compare and refine multiple algorithms for the same task and determine which is the most appropriate.
  • 1B-AP-11 - Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process.
  • 1B-AP-16 - Take on varying roles, with teacher guidance, when collaborating with peers during the design, implementation and review stages of program development.

Lesson 4: What is a Computer?

Standards Alignment

CSTA K-12 Computer Science Standards (2017)

CS - Computing Systems
  • 1B-CS-01 - Describe how internal and external parts of computing devices function to form a system.

Lesson 5: Input and Output

Standards Alignment

CSTA K-12 Computer Science Standards (2017)

CS - Computing Systems
  • 1B-CS-01 - Describe how internal and external parts of computing devices function to form a system.
  • 1B-CS-02 - Model how computer hardware and software work together as a system to accomplish tasks.

Lesson 6: Processing

Standards Alignment

CSTA K-12 Computer Science Standards (2017)

AP - Algorithms & Programming
  • 2-AP-10 - Use flowcharts and/or pseudocode to address complex problems as algorithms.
  • 2-AP-17 - Systematically test and refine programs using a range of test cases.
CS - Computing Systems
  • 1B-CS-01 - Describe how internal and external parts of computing devices function to form a system.
  • 1B-CS-02 - Model how computer hardware and software work together as a system to accomplish tasks.

Lesson 7: Apps and Storage

Standards Alignment

CSTA K-12 Computer Science Standards (2017)

AP - Algorithms & Programming
  • 2-AP-10 - Use flowcharts and/or pseudocode to address complex problems as algorithms.
IC - Impacts of Computing
  • 2-IC-20 - Compare tradeoffs associated with computing technologies that affect people's everyday activities and career options.

Lesson 8: Project - Propose an App

Standards Alignment

CSTA K-12 Computer Science Standards (2017)

AP - Algorithms & Programming
  • 2-AP-10 - Use flowcharts and/or pseudocode to address complex problems as algorithms.
  • 2-AP-15 - Seek and incorporate feedback from team members and users to refine a solution that meets user needs.
  • 2-AP-18 - Distribute tasks and maintain a project timeline when collaboratively developing computational artifacts.
CS - Computing Systems
  • 2-CS-02 - Design projects that combine hardware and software components to collect and exchange data.