class logo

CS 122 - Final Project Proposal

A big part of this class is the final project. I want everyone to succeed, so I want to get a proposal from you early on so I can give you feedback.

Write a brief summary of your project. If your project is complicated, this might take more than a page, but for most of you I'm guessing that it could be no more than a couple of paragraphs.

Your proposal should be detailed enough that I can tell what you are going to build. If you are going to do an adventure game, your proposal should discuss how all the details of the game are going to work.

The best project ideas are ones that you're already interested in. I've had some students mention some projects they are working on that would be perfect candidates. If you're interested in the project you are going to not only do a better job, but you'll also have way more fun with it.

Note I will continue to post more ideas and details on this page until the proposal is due. I originally split the list up into easier and harder ideas, but I realized that pretty much any idea can be done in greater detail to make it harder or can be simplified to make it easier, so now it is just one big list.

A fancier math quiz
One of our exercises was to do a math quiz. Make a fancier version of that. It should include a variety of question types and give detailed feedback to the user on how they did, including which type of problem they did best at and which type they need the most work on.

Stock analyzer
Given a data file of historical prices for a Stock, do some analysis of the stock's trends. (Note that there is plenty of room for this project -- all projects really -- to grow into a plenty complicated project). You can download historical stock prices from many places online including yahoo.com.

A Scratch Adventure Game
Use scratch to implement an adventure game where the player travels around a maze finding treasure and defeating enemies.

Simon Memory Game
Implement the simon memory game. In this game, there are 4 buttons that are highlighted in some order. The user must click the buttons in the same order. Each time the pattern is repeated for the user, it is extended by one so that it gets longer and longer.

A drawing program
Allow the user to select basic tools (point, line, circle, square) and draw an image in a window.

Simulate queueing strategies
Imagine your typical grocery store. Usually there is a separate line for each clerk, but what if there were just one big line, and the first person in line went to the next available teller. Would the average wait time be longer or shorter? What about the maximum wait time, or the minimum wait time. Note, you'll probably need some help to get started with this project, but it is actually a fun one.

Tic Tac Toe
Implement the game of tic tac toe using python and the graphics library. Have the user play against the computer.

Submit your Final Project Proposal

This assignment is due Tuesday, August 5th, at 7:00 am

Use this form to submit your final project proposal.

Student number (no dashes):
This is the 9-digit number on your student body card. It probably starts 950 or 951 and it looks something like this: 950123456. This number is used to identify your submission so please enter it carefully.
Name (first and last):
Email address:
Notes about this assignment:
Use the notes field to mention anything that didn't go in the proposal
Your final project proposal