Unit 3, Chapter 1, Lesson 10: Practice PT – Design a Digital
To conclude their introduction to programming, students will design a program that draws a digital scene of their choosing. Students will be working in groups of 3 or 4 and will begin by identifying a scene they wish to create. They will then use Top-Down Design to identify the high-level functions necessary to create that image. The group will then assign these components to individual members of the group to program. After programming their individual portion, students will combine all of their code to compose the whole scene. The project concludes with reflection questions similar to those students will see on the AP® Performance Tasks.
Note: This is NOT the official AP Performance Task that will be submitted as part of the Advanced Placement exam; it is a practice activity intended to prepare students for some portions of their individual performance at a later time.
AP® is a trademark registered and/or owned by the College Board, which was not involved in the production of, and does not endorse, this curriculum.
Abstraction is an important tool in programming, not only because it allows individual programmers to break down complex problems, but because it enables effective forms of collaboration. Once a problem has been broken down into its component parts, teams of programmers (sometimes dozens or more) can attack individual components of that problem in parallel. This style of programming requires clear communication and a shared understanding of the high-level requirements of the software. If implemented carefully, however, it can be an effective strategy for rapidly producing large and complex pieces of software.
Students will be able to:
- Write programs that address one component of a larger programming problem and integrate with other similarly designed programs.
- Collaborate to break down a complex programming problem into its component parts.
- Use code written by other programmers to complete a larger programming task.
- Write responses to AP-style prompts
- Abstraction – a simplified representation of something more complex. Abstractions allow you to hide details to help you manage complexity, focus on relevant concepts, and reason about problems at a higher level.
- Review the programming constructs covered thus far, recall how they can be used within Top-Down Design to break down problems, and frame the coming project as a further exploration of the concept of abstraction.
- Get a copy of the following (digital copies available on code studio):
- Read Requirements
- Emphasize and call out connections to the AP Create PT: Students will be going through many of the same processes for this project as they will for the AP Create PT. The things we are not doing here are:
- student is not coming up with the idea for the project – we are framing it as Design a Digital Scene
- we are not making a video of code running
- we are ignoring the writing prompts about algorithms
- We’ll address these things later in Unit 5.
- Place Students in Groups: Groups will ideally be 3 or 4 students for this project.
A proposed schedule of the steps of this project is included below.
- Review the project guidelines and the rubric.
- Assign students to groups to follow the Group Project Planning guide.
- Groups complete the Project Description document.
- Groups break target scene into high-level functions, define their behavior and complete the Project Component Table.
- Students begin programming individual components.
- Students continue to work on programming their individual functions.
- Groups begin to recombine their functions and students begin work on their digital scenes.
- Students finalize their digital scenes.
- Students complete their reflection questions and submit their projects.
Complete Group Project Planning Guide:
- Groups should use the Activity Guide’s Group Project Planning Guide to collaboratively develop their scene description and select a target image. They will then fill in the Project Component Table with the individual components of the scene, as well as their associated function names and descriptions. Finally, they will assign each function to one of the group members.
- Start Programming–Go to code.org
- Reflection Questions: Students can complete the reflection questions using the Practice PT – Written Responses – Student AP Response Templateor simply write them into a plain text document.
- Program Code: Students should simply submit their project code through Code Studio by clicking the Submit button where they composed their project.
- Project Submission:1. Student written responses – do this in your Word Online file for this class. I will use the Design a Digital Scene – AP Rubric 2019 – AP Rubric to score it.2. Student code – You should always submit the project through Code Studio so it gets locked in. In addition, submit a PDF of your code with the abstraction you developed highlighted with a rectangle drawn around it. Use CodePrint to do this. Send it to me as an email attachment. I will use the Design a Digital Scene – Project and Programming Rubric to assess your coding skills.3. Group planning guide – Credit for completion