Matthew L. Wright
Visiting Assistant Professor, St. Olaf College

Final Project Information

CS 121 ⋅ Spring 2016

The final project of CS121 is your opportunity to apply what you have learned in this course to solve a problem of interest to you.

Choosing a Project

Choose a problem of interest to you that you can solve by writing a computer program. It is recommended that you browse this list of sample problems. (The link only works on campus.)

Here are more project ideas:

As you consider project ideas, also think about who in the class you would like to work with, since most projects will be done by a team of two or three students.

A project proposal (one proposal per team) is due on April 27. The proposal should containg a brief description of your project. It is recommended that you discuss your project idea(s) with the professor before writing your proposal.

Project Requirements

Your project must satisfy the following requirements:

  1. Your project must involve writing a Python program that goes well beyond the level of complexity of the homework problems in this course.
  2. Your code must be object-oriented, involving objects and methods that you define.
  3. Your code must be well-documented, so that a human can read it and understand what it does.
  4. You must write a "user manual" that explains what your program does and how to use it.
  5. You must give a brief presentation about your program to the class.

Project Schedule

Grading criteria

Your project will be graded out of 100 points, according to the following criteria:

In addition, self and peer evaluations may affect your project grade by up to 40% in either direction. Different people in the same group might receive different grades depending on their contributions to the project.