Lesson 19: End of Course Project
Overview
The next five lessons provide an opportunity for students to put their coding skills to use in a capstone project. This project will help individuals gain experience with coding and produce an exemplar to share with peers and loved ones. This is intended to be a multi-lesson or multi-week project where students spend time brainstorming, learning about the design process, building, and then presenting their final work.
In the "Explore" stage, students will play around with pre-built Artist and Sprite Lab programs for inspiration. Next, students will learn about the design process and how to implement it in their own projects. They will then be given the space to create their own project in Artist, Sprite Lab, or any other interface that you are comfortable providing. (This is likely the longest stage of the project.) Students will then revise their code after testing and peer review. Finally, students will be able to present their finished work to their classmates.
Purpose
Students may be ready to jump straight into building their projects, but this lesson will help shape their ideas into plans. This structure will keep the dreamers grounded and illuminate a path for those feeling left in the dark. Provide students with ample time to build and revise their projects. The trial and error inevitably involved in this lesson will teach problem solving and persistence.
Agenda
Day 1 - Explore Project Ideas (45 min)
Day 2 - The Design Process (45 min)
Day 3 - Build Your Project (45 min)
Day 4 (Recommended for 5th Grade) - Revise Your Project (45 min)
Day 5 & 6 - Present Your Project (45 min each)
Extension Activity
View on Code Studio
Objectives
Students will be able to:
- Learn to plan in advance for an ongoing assignment.
- Be able to explain how system limitations can affect project design.
- Describe how compromise can help keep a project on track and inspire creativity.
- Draft and implement plans to resolve any issues in their code.
- Articulate the design process and how it helped shape the finished culminating project.
Preparation
- Spend time making your own project with both the Artist and Sprite Lab. Familiarize yourself with the capabilities and limitations of each tool.
- Modify the rubric to fit your class goals and print out a copy for each student.
- Modify the project design worksheet to fit your class and print one packet for each student.
Links
Heads Up! Please make a copy of any documents you plan to share with students.
For the Teachers
- Design Process - Teacher Prep Guide
- Final Project Design - Worksheet
- CS Fundamentals Final Project - Rubric
Vocabulary
- Define - Figure out the details of the problems that you are trying to solve
- Prepare - Research, plan, and acquire materials for the activity you are about to do
- Reflect - Carefully think back on something with the intention of improving the outcome in the future
- Try - Attempt to do something
Support
Report a Bug
Teaching Guide
Day 1 - Explore Project Ideas (45 min)
Example Projects
Goal: This part of the process is an exploration. Students will sit down with a stage full of example projects to remix and learn. Not only will this give students an idea of what is possible, it will also help them see the limitations of the tool.
Give students a day to play with and remix the projects found on Code Studio. Have them use their journals (or notebook paper) to keep track of thoughts and ideas as they go.
This activity should be done in the same pairs/groups that will be working on projects together over the next several lessons.
Make sure your class understands that they will be spending the next several weeks working with projects of their own, so they should pay close attention to how these programs were written, as well as the concepts that they use.
Day 2 - The Design Process (45 min)
Define and Prepare
Goal: Students will come up with a project and plan their strategy for programming that project in a single day. Students should have a project sketch and a description by the time the day is done.
Preparing Students for the Process:
The most important responsibility you have in kicking off this segment is to help your class understand the scope of this project. Students should be clear about the various expectations over the coming weeks so that they can prepare for their review and presentations appropriately.
To help your class manage this multi-stage undertaking, they should be given both the Final Project Design - Worksheet and the CS Fundamentals Final Project - Rubric on the first day of planning. Students will then be able to follow the rubric each step of the way to predict what their project grade will be in the end.
The Final Project Design Worksheet will provide a place for students to capture relevant thoughts and processes as they go, so they are more prepared for their reviews and presentations in the end.
As the teacher, you should download a copy of the documents and decide which elements are important to you. Be sure to edit or remove anything that you do not intend to draw student focus.
Lesson Tip:
Save 5 minutes or so at the end of the day to have students trade Final Project Design Worksheets to look at each other’s work. This will help make sure that nothing is omitted or overlooked.
Define and Prepare:
Now that the class has their Final Project Design Worksheet in hand, they should start filling out the questions under Day 1.
Students will likely need to refer back to their notes from playing with the example projects, especially if they don’t have access to online Artist or Play Lab project levels while they plan.
Students should focus on defining and planning their project during Day 1, and not cross over into building until their ideas have been written up and/or drawn out.
If students get stuck, help them work through ideas by asking questions and recalling examples, rather than offering solutions.
Day 3 - Build Your Project (45 min)
Try
Goal: Students will use this day to build an initial version of their project.
Equipped with their Final Project Design Worksheet, students should head to the computers to start bringing their projects to life.
This process will come complete with plenty of trial and error. Projects are likely to become truncated versions of the original scope (if not morphed altogether). Remind students that this kind of compromise is common in software design, but they need to be sure to document the reasons for the changes in their product.
Don’t let the class forget to fill out their Final Project Design Worksheets as they go. It might be helpful to suggest that pairs/groups take a worksheet break to begin discussing these questions about halfway through their lab time. Alternatively, the navigator can keep their eyes open for pertinent answers while the driver codes.
Be sure that each team member has their own Final Project Design Worksheet, as there are questions about each student’s own individual thoughts and behaviors that need to get captured along the way.
Day 4 (Recommended for 5th Grade) - Revise Your Project (45 min)
Reflect and Try Again
Goal: Students will work with another group to give and receive feedback in an effort to make each other’s projects stronger.
Reflect:
For reflections, have each group pair up with another group to try each other’s projects. After about 10 minutes, have the groups discuss the questions in the Final Project Design Worksheet.
Encourage students to ask the questions on the FPDW and write down feedback provided by their reviewing teams so that they can refer back to it later. This portion should take approximately 15 more minutes.
Lesson Tip:
Teachers should avoid assigning the final bit of project work as homework unless they are certain that students both live within a close proximity to one another and have internet access at home.
Try Again:
With their new reflections in hand, students can head back to their machines to make a handful of edits. With just 10 minutes left, they will likely have to select only the most important feedback to incorporate.
Day 5 & 6 - Present Your Project (45 min each)
Presentations
Goal: Students will create and present their projects in an approved manner (written, oral, or using multimedia).
Lesson Tip:
If you are looking for a section of this series to assign as homework, this is it! Projects do not have to be presented in electronic form, so this is a great offline option.
Create:
Ideally, you will have class time available to give students to work on their presentations. This will allow them to incorporate rich multimedia components, like Google Slides. For other presentation ideas, visit 72 Creative Ways for Your Students to Show What They Know - Website.
Encourage students to include all of the information from Section J of the Final Project Design Worksheet into their presentation, as well as two or more questions from Section K.
Present
Students should showcase their apps first, then they can discuss the questions that they covered in their presentations.
It can be very helpful to have students sign up for a specific order in which to give their presentations, so that they are able to enjoy the demonstrations of their classmates without worrying about whether they will be called on next.
- Example projects
- 1
Student Instructions
Project Examples
You are about to start your final project. Before you begin, spend some time looking at the example projects.
Sprite Lab
Cupcake Game (Sprite Lab) | Airplane Game (Sprite Lab) |
---|---|
Try adding text or a score to this game! | Try adding text or a score to this game! |
Artist
Flowers (Artist) | Spiral (Arist) |
---|---|
Let's get creative with variables! | Let's get creative with For Loops! |
Student Instructions
You have reached the end of Course F! Choose a project to create.
Choose from the following activities:
None
None
Student Instructions
Student Instructions
Standards Alignment
View full course 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-09 - Create programs that use variables to store and modify data.
- 1B-AP-10 - Create programs that include sequences, events, loops, and conditionals.
- 1B-AP-11 - Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process.
- 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.
- 1B-AP-13 - Use an iterative process to plan the development of a program by including others' perspectives and considering user preferences.
- 1B-AP-14 - Observe intellectual property rights and give appropriate attribution when creating or remixing programs.
- 1B-AP-15 - Test and debug (identify and fix errors) a program or algorithm to ensure it runs as intended.
- 1B-AP-16 - Take on varying roles, with teacher guidance, when collaborating with peers during the design, implementation and review stages of program development.
- 1B-AP-17 - Describe choices made during program development using code comments, presentations, and demonstrations.