Georgia Institute of TechnologyChristina M. Gardner, PhD
Printable Version of this PageHome PageRecent ChangesSearchSign In

CS Principles - Trivia App Assignment

CS Principles - Trivia App Assignment Overview
Click on Link for full Assignment: Trivia App_v2.docx
Click here for Trivia App Starter Code CS Principles - Trivia App Starter Code
Click here for code to populate your Trivia Web Database from a CSV file: CS Principles - Trivia Database Starter
Click here for directions on how to create a Web Database using App Engine: http://appinventorapi.com/program-an-api-python/

Goal: Create a trivia app that presents 25 random multiple choice questions from 11 different categories. This database pulls the 25 random questions from a TinyWebDB and stores users high scores to the database.

Learning Objectives
Creativity
LO 1: use of computing tools and techniques to create artifacts.

Abstraction
LO 5: Describe the combination of abstractions used to represent data.
LO 7: Develop an abstraction.
LO 8: Use multiple levels of abstraction in computation.

Algorithms
LO 15: Develop an algorithm.
LO 16: Express an algorithm in a language.
LO 17: Appropriately connect problems and potential algorithmic solutions.
LO 18: Evaluate algorithms analytically and empirically.

Programming
LO 19: Explain how programs implement algorithms.
LO 20: Use abstraction to manage complexity in programs.
LO 21: Evaluate a program for correctness.
LO 22: Develop a correct program.

Computational Features of the App
  • Uses Randomization to pick the Topic and the Question
o Note: Do not assume a fixed number of questions in each category
  • Uses the the TinyWebDB you created to pull questions and categories to test your app
  • Uses the Class Web Database to to test your app if you are having difficulty with your Web Database
o TinyWebDB - http://everyday-computing123.appspot.com/
  • Updates the High Scores achieved in your app to the on the Class Web database
o TinyWebDB - http://everyday-computing123.appspot.com/
  • Uses the Timer feature
  • Uses conditionals
  • Uses iteration
  • Uses Lists or List of list to organize the trivia categories, questions, and answers
  • Local verse remote storage for real time game play

Minimal Features of your App
  • Creativity – Please add visual and auditory appeal to your app in addition to the questions so that it doesn’t look drab
  • Present your user with information about
o how much time they have left to answer a question
o A running tally of the score and the number of questions they’ve completed correctly or incorrectly.
  • Present to the user where they fit in the high scores already contributed to the database.

Collaborative Features of the App
  • Each person contributes 16 total questions to the Database
o Each person is required to contribute 10 questions to their assigned category
o Each person is required to contribute 5 questions to their secondary category
o Each person is required to contribute 1 question to the computing category

Trivia Game Play
  • 25 Multiple Choice Questions (Options: A-D)
  • Standard Points 4pts for correct answers
  • 30 seconds to answer each question before it disappears and lists the new question

Trivia App Categories
1. Animals
2. Movie Quotes
3. Music
4. Sports
5. GT Traditions and other GT Facts
6. Science
7. History
8. Food
9. TV Sows
10. Wildcard (Miscellaneous)
11. Computing

Features of the Database
  • You can design your own database format given the constraints of TinyWebDB
  • TinyWebDB allows you to store lists and lists of list.
  • Please ensure that your database stores the list of questions, possible answers, correct Answer


Last modified 29 June 2012 at 8:21 am by cmgardne