# Lesson 10: Project - Make a Library Part 3

## Overview

Students complete their library project, finalizing their code and writing written responses explaining the way one of the functions in their library works.

## Purpose

This lesson wraps up this quick project but also gives students a chance to practice responding to questions that appear in the Create PT. This lesson and project should therefore serve as a cap on students' study of procedural abstraction and if you are teaching this class as an AP, prepare them for the Create Task that they will complete in the following unit.

## Objectives

### Students will be able to:

• Debug a library of functions based on testing and classmate feedback
• Explain the purpose and functionality of a function they developed
• Explain two different calls to a function they developed

## Preparation

Heads Up! Please make a copy of any documents you plan to share with students.

Forum

# Teaching Guide

## Lesson Modifications

Attention, teachers! If you are teaching virtually or in a socially-distanced classroom, please read the full lesson plan below, then click here to access the modifications.

## Warm Up (2 mins)

Remarks

Today is your final day to work on your library. Based on the feedback you received from your classmates and the tests that you wrote, you should know where you need to improve your functions. Today you'll also need to finish a set of written response questions about one of your functions expxlaining how it works and describing two different calls to that function with different arguments.

Let's get to it!

## Activity (40 mins)

Teaching Tip

Scheduling Time: Depending on where students are in the process of developing their libraries they may need to program a little more prior to starting their free response answers. Remind students that in order to finish their responses they only need to have written a single function that has a parameter, return value, loop, and conditional. As soon as students have completed a function like that they should move to free response answers. They can subsequently come back to finish developing the rest of their libraries.

Step 7 - Acknowledge Collaborators / Sources - 2 mins: If students worked in pairs or imported some code from elsewhere they should acknowledge the sources of that code.

Step 8 - Free Response - 20 mins: With students quickly review the questions students need to answer about one of the functions in their library. These questions are taken nearly exactly from the Create PT and should help students prepare to independently answer these questions when they complete that task.

Work Time - 18 mins: Students should work on their free response answers early in the lesson. Once they've finished working on their responses they can go back to their project to make any final edits to their project code. Encourage students to review the Scoring Guidelines to make sure they're not missing anything in their projects.

## Wrap Up (3 mins)

Submit Projects: At the end of the lesson students should submit their projects in Code Studio and submit their completed project guides, including free response questions.

### Assessment

Rubric: Evaluate the projects using the provided rubric in the Project Guide

## Standards Alignment

#### CSTA K-12 Computer Science Standards (2017)

AP - Algorithms & Programming
• 2-AP-14 - Create procedures with parameters to organize code and make it easier to reuse.
• 3A-AP-18 - Create artifacts by using procedures within a program, combinations of data and procedures, or independent but interrelated programs.
• 3B-AP-14 - Construct solutions to problems using student-created components, such as procedures, modules and/or objects.
• 3B-AP-16 - Demonstrate code reuse by creating programming solutions using libraries and APIs.

#### CSP2021

CRD-2 - Developers create and innovate using an iterative design process
CRD-2.H - Acknowledge code segments used from other sources.
• CRD-2.H.1 - It is important to acknowledge any code segments that were developed collaboratively or by another source.
• CRD-2.H.2 - Acknowledgement of code segment(s) written by someone else and used in a program can be in the program documentation. The acknowledgement should include the origin or original author’s name.