Updating search results...

Middle School Computer Science

178 affiliated resources

Search Resources

View
Selected filters:
CS Discoveries 2019-2020: Problem Solving Lesson 1.2: The Problem Solving Process
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

This lesson introduces the formal problem solving process that students will use over the course of the year, Define - Prepare - Try - Reflect. The lesson begins by asking students to brainstorm all the different types of problems that they encounter in everyday life. Students are then shown the four steps of the problem solving process and work together to relate these abstract steps to their actual experiences solving problems. First students relate these steps to the aluminum boats problem from the previous lesson, then a problem they are good at solving, then a problem they want to improve at solving. At the end of the lesson the class collects a list of generally useful strategies for each step of the process to put on posters that will be used throughout the unit and year.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: Problem Solving Lesson 1.3: Exploring Problem Solving
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

In this lesson students apply the problem solving process to three different problems in order to better understand the value of each step. They will solve a word search, arrange seating for a birthday party, and plan a trip. The problems grow increasingly complex and poorly defined to highlight how the problem solving process is particularly helpful when tackling these types of problems. The lesson concludes with students reflecting on their experience with the problem solving process. They will justify the inclusion of each step and will brainstorm questions or strategies that can help them better define open-ended problems, as this is often the most critical step.

This lesson will likely take two class periods or more to complete. The first two problems may fit into a single class period but the third will need to be moved to a second day.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: Problem Solving Lesson 1.4: What is a Computer?
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

In this lesson students develop a preliminary definition of a computer. To begin the lesson, the class will brainstorm possible definitions for a computer and place the results of this brainstorm on the board. Next, students will work in groups to sort pictures into “is a computer” or “is not a computer” on poster paper. Groups will place their posters around the room and briefly explain their motivations for choosing some of their most difficult categorizations. The teacher will then introduce a definition of the computer and allow students to revise their posters according to the new definition.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: Problem Solving Lesson 1.5: Input and Output
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

In this lesson students consider a number of computing devices to determine what types of inputs and outputs they use. Groups are assigned to a computing device and based on a teacher-provided definition of input and output, list the inputs and outputs of their device. Earlier in the activity students are prompted to focus on more obvious physical inputs and outputs (e.g. a keyboard as an input or a screen as an output) but later discussions lead students to consider less obvious examples (e.g. that a touch screen is both an input and output, or the fact that the Internet can serve as both input and output). Throughout the lesson the teacher records inputs and outputs that are identified on a T-Chart at the front of the room. To conclude the lesson students examine common activities they do on a computing device and select the inputs and outputs used for that activity from the chart.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: Problem Solving Lesson 1.6: Processing
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Students complete two unplugged card sorting activities to explore the meaning of processing and its relationship to problem-solving. The first activity has few constraints and is used to introduce a high-level definition of processing. The next introduces more constraints that force students to develop an algorithm that will always successfully process the cards. Students iteratively develop, test, and share their algorithms with classmates. A wrap-up discussion has students reflect on the different types of problem-solving they used in these activities and the value of producing an algorithm to solve a problem.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: Problem Solving Lesson 1.7: Apps and Storage
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

This lesson reviews the input, output, storage, and processing aspects of a computer in a context that is relevant and familiar to students: apps. In pairs, students evaluate smartphone applications to analyze the specific problems that they were designed to solve, the inputs that they need to work, and the processing that turns those inputs into the desired output, and what information they would want to store for later. The class concludes with a discussion that connects the lesson to apps students are more familiar with.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: Problem Solving Lesson 1.8: Project - Propose an App
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

To conclude their study of the problem solving process and the input/output/store/process model of a computer, students will propose an app designed to solve a real world problem. This project will be completed across multiple days and will result in students creating a poster highlighting the features of their app that they will present to their classmates. A project guide provides step by step instructions for students and helps them organize their thoughts. The project is designed to be completed in pairs though it can be completed individually.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.11: Prototype Testing
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

The primary purpose of developing paper prototypes is that they allow for quick testing and iteration before any code is written. This lesson is focused on giving teams a chance to test their prototypes before moving to App Lab. Teams develop a plan to test with users before running prototype tests with multiple other students in the class (and potentially outside the class). In order to test the prototype with the users, the students will have to assign roles in the testing (the “narrator”, the “computer” and the “observers”) as well as have some questions prepared for the user to answer after the test is complete.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.12: Digital Design
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Having collaboratively developed a paper prototype for their apps, groups now divide and conquer to begin work on an interactive digital version based on the paper prototype. Using the drag-and-drop design mode of App Lab, students individually work through a progression of skill-building levels to learn how to build digital versions of a paper prototype. From there, each group member builds out at least one page of their app in App Lab, to be later combined into a single app.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.13: Linking Screens
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

In this lesson teams combine the screens that they designed in the previous lesson into a single app, which they can then link together using code. Students learn basic event driven programming by building up the model app that they started in the previous lesson. In addition to the screen that students designed yesterday, they'll learn how to create additional screens and even import screens made by others.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.14: Testing the App
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

By the end of the previous lesson each team should have a minimum viable prototype of their app. The primary purpose of this lesson is to have the team actually test the app with other people, preferably from the target audience the app is intended for, or from different teams in the class while observers from the team will record the results on the worksheets they used in the planning phase. As with testing the paper prototypes, teams will start by planning for the specific scenarios before running and observing tests.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.15: Improving and Iterating
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Teams have at this point developed an app prototype that has gone through multiple iterations and rounds of user testing. With the information and guidance gained from the last round of user testing, each student has the opportunity to plan for and implement improvements to the team app. Depending on the time you have available, and student interest, you can run the cycle of testing and iteration as many times as you see fit.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.16: Project - App Presentation
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

At this point teams have researched a topic of personal and social importance, developed and tested both a paper prototype and a digital prototype, and iterated on the initial app to incorporate new features and bug fixes. Now is the time for them to review what they have done and pull together a coherent presentation to demonstrate their process of creation. Using the provided presentation template, teams prepare to present about their process of app development, including the problem they set out to solve, the ways in which they've incorporated feedback from testing, and their plans for the future.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.1: Analysis of Design
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

To kick off a unit devoted to group problem solving and developing products for other users, students begin by investigating the design of various teapots. Students analyze each teapot, attempting to identify how specific user needs might have informed its design. By considering these design choices, and attempting to match each teapot with a potential user, students can begin to see how taking a user-centered approach to designing products (both physical and digital) can make those products more useful and usable. To conclude the activity, students are asked to propose some changes to one of the teapots that would make it more useful or usable.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.1: Paper Prototypes
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Before starting to design apps, we need to help students to better scope their expectations. Because students will eventually be prototyping these apps in App Lab, they will be in better shape if their ideas align with the kinds of apps that are easily prototyped in App Lab. Teams start this scoping by looking through several example apps designed to demonstrate apps that can be created with App Lab. Teams then can chose one (or more) of the apps as a basis for their own. From there, teams have some time to discuss the basic functionality of their app before using 3x5 index cards to develop paper prototypes.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.2: Understanding Your User
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Designers need to understand their users’ needs in order to create useful products. This lesson encourages students to think about how to design for another person by role-playing as someone else using a user profile and reacting as that user to a series of products. Each student is assigned a user profile describing a person, which they then use to choose appropriate products, critique product design, and suggest improvements to design.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.3: User-Centered Design Micro Activity
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

This lesson guides students through an abbreviated version of the design process they will be seeing throughout this unit. Students first brainstorm a list of potential users of smart clothing. As a class, they then group these ideas into broad categories and each group will choose one category of user. Groups repeat this process to brainstorm needs or concerns of their user, eventually categorizing these needs and choosing one to focus on. Finally, students design a piece of smart clothing, using the specific needs and concerns they brainstormed to guide their decision making. At the end of the class students quickly share their decision-making process and get feedback on how well their product addresses the user need they selected.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.4: User Interfaces
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Following the mini design project, students look towards the next phase of design - prototyping a product that attempts to address user needs. In teams, students examine a paper prototype for a chat app called "Txt Ur Grndkdz". Through using this paper prototype, students get a chance to see how a simple paper prototype can be used to quickly test ideas and assumptions before we ever get to the computer. After "using" the provided prototype students begin to identify ways to improve the next iteration.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.5: Feedback and Testing
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

In this lesson students use feedback from "users" of the paper-prototyped app from the previous lesson in order to develop improvements to the user interface of that paper prototype. The lesson begins with a reflection on the fact that designers need to translate human needs with technology into changes to the user interface or experience. Students are then given a collection of feedback and requests from users of the app from the previous lesson. In groups students categorize the feedback and identify ways the needs expressed in the feedback could be met by changes to the interface of the app. Then in groups students will implement some of these changes to meet one of the needs they identified.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019
CS Discoveries 2019-2020: The Design Process Lesson 4.6: Identifying User Needs
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Up to this point students have focused on designing for users who are, to some degree, distanced from them. Whether through brainstorming, profiles, or text feedback, the connection to an end user has never been direct. This distance is designed to help students get outside their own head when thinking about users, but in order to get information more directly from an actual user, students need to rely on their classmates. In this lesson students pair up to become users (and designers) for each other, allowing everyone to directly interview their end user and ask questions to better inform their design. Each student pair interviews each other, attempting to identify a specific need that could be addressed by an app.

Subject:
Computer Science
Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
11/06/2019