5.5. Quiz App¶
This lesson focuses on storing data in parallel lists, where the data at each index is related. Students create a basic quiz app with lists of pictures, questions, and answers. The programming portion of the app emphasizes iterating over a list, where the user controls moving to the next item in the list, including how to handle reaching the end of the list. This lesson reinforces the enduring understanding that data is processed to gain insight and knowledge.
Complete the activities for Mobile CSP Unit 5: Lesson 5.5 Quiz App.
- Presentation system (LCD projector/Interactive whiteboard)
- Access to computer, laptop, or Chromebook (install the Companion app on Chromebooks)
- Access to mobile device with the Companion app installed or access to the emulator installed on the computer or laptop.
- Quiz App Tutorial (video or handout)
5.5.1. Learning Activities¶
Estimated Length: 45 minutes
- Hook/Motivation (5 minutes): Fold your paper to create two columns. In column one, write down 3 test questions that you can think of to test your knowledge of App Inventor. In the right column, identify the corresponding answers to those questions. Number your questions 1, 2, 3 and number their corresponding answers 1, 2, 3.
Pair up with the person on your right. I will ask everyone to hide their answer column and ask the person on the right Question number 2 and see if they answered correctly. Now have the students switch roles. Have three teams combine their questions and answers and renumber their questions accordingly. Place name on paper and submit to teacher for credit.
Explanation: Describe the student learning goals for today’s lesson. Refer to the Learning Objectives and have students take note that in today’s lesson the use of Lists will be heavily emphasized. Have them notice how they looked up the answer to the questions they just created. Ask students for ideas on how the quiz activity can be made into an app.
- Experiences and Explorations (35 minutes): Have the students complete the Quiz tutorial on their own.
Initially lead the students through the design of the app allow faster students to follow the tutorial on their own.
Identify new variables that can hold more than one value, a List.
Have students work in pairs on the enhancements. Here are the solutions to the enhancements (also available in Unit 10 for students).
- Rethink, Reflect and/or Revise (5 minutes): Whole class discussion on how the three lists in the Quiz app are connected. Have students complete a reflection in their portfolio (this may be assigned as homework). Have students try the interactive exercises, either individually or as a class.
Other Questions to Raise in Discussion: How is information retrieved from large sets of data? Given a list of the number of people who got sick with the flu during the past year, how could you build a subset of the list to determine how many people from the flu list were from your town? What other types of information may you find in this large set of data that may be of interest?
The College Board's AP Classroom provides a question bank and Topic Questions. You may create a formative assessment quiz in AP Classroom, assign the quiz (a set of questions), and then review the results in class to identify and address any student misunderstandings.The following are suggested topic questions that you could assign once students have completed this lesson.
Suggested Topic Questions:
Assessment Opportunities and Solutions
- Note: Assessments are only available to verified educators that have joined the Teaching Mobile CSP Google group/forum in Unit 1. Please go here to sign up.
- Quiz App Solutions
- Quiz App aia file
You can examine students’ work on the interactive exercise and their reflection portfolio entries to assess their progress on the following learning objectives. If students are able to do what is listed there, they are ready to move on to the next lesson.
- Interactive Exercises:
- Portfolio Reflections:
LO X.X.X - Students should be able to ...
- In the XXX App, look for:
Differentiation: More Practice
If students are struggling with lesson concepts, have them review the following:
Students can add more questions of their own to the quiz. Ask them to think about whether or not their blocks work for any size list - 5 questions, 10 questions, 100 questions?
Background Knowledge: Lists and Arrays
- Some languages have arrays as a basic data structure. Arrays have some similarities to lists. But one big difference is that arrays are always contiguous in the computer's memory. This is not necessarily the case for lists. Also, the elements of an array are always of the same data type -- i.e, all integers or all strings or all floating point numbers or all references.
- Review the App Inventor documentation on lists.
Teaching Tips: Parallel Lists
The questions, images, and answers are in parallel lists - where data at each index in each list is related to each other. Emphasize with students how the data in each list at the same index is related to each other.
Iterating or traversing a list is a common programming operation. Use the term iteration with students and explain that it means processing (or doing something) to a list one list item at a time.
5.5.2. Professional Development Reflection¶
Discuss the following questions with other teachers in your professional development program.
- How do lists and list operations in this app exemplify the concept of data abstraction in programming?
I am confident I can teach this lesson to my students.
- 1. Strongly Agree
- 2. Agree
- 3. Neutral
- 4. Disagree
- 5. Strongly Disagree