P4: Project

Assignment:

Design and implement some compiler-related programming project.

Draft proposal: February 27, 2002 (before class).
Proposal: March 18, 2002 (before class).
Presentation: Last week of class.
Demonstration: During final week.

Description:

A semester project of student's design, which is approved by instructor. While significant latitude is given to students, the subject and scope of the project must conform to certain criteria (listed below) and the whims of the instructor (not listed below).
Subject Students must be able to claim, with a straight face, that their project is related to compilers in some way. (Final determination of "related to compilers" is left to the instructor alone.) Example projects are listed below.
Scope The scope of this project must be appropriate for senior undergraduate students, the time given (5 weeks), and the group size. The instructors will assist students in scaling the project to the appropriate size.
Students are expected to work in teams of 2 or 3. Petitions to form groups larger than three people or smaller than two people will be reviewed on a case-by-case basis by the instructor.

Groups will present their project to class during the 15th week.

Projects must produce a software artifact. A research or summary paper is not an acceptable project.

Approval:

Each project must be approved by the instructor. Groups are expected to discuss their idea with the instructor. Repeated discussions are encouraged, and will result in the most favorable conditions for maximizing reward-to-work ratio.

Students will write a proposal that must be approved by the instructor. A draft proposal will be submitted prior to the proposal. The proposal serves as the "contract" between the group and the instructor.

Presentation:

Each group will give a presentation that is nominally 25 minutes long. All group members must actively participate in the presentation.

See guidelines for an effective presentation.

This constitutes 25% of the project grade.

Demonstration:

Each group will demonstrate their project to the TA. The demostration should be designed in order to show the TA the scope and quality of the work.

Groups will prepare a one-page synopsis of their project, which will be given to the TA no later than noon one working day prior to the demonstration. This synopsis will explain in detail what the system does. It will list the work that was done by the group. Additionally, it will describe the files in the turnin directory.

Example projects:

Resources:

Turnin:

A one-page synopsis of the results delivered to TA at the demonstration. This primarily consists of the status of the list of deliverables (eg, completed, partially completed, not attempted).

Copy all your source files, including a Makefile, to your turnin directory by the specified time. Do not include binaries or object files. Remember: the TA must be able to compile your project.

Grading:

The presentation is 30% of the overall project grade. The remaining 70% is based on how much was accomplish and how well. This is determined by comparing the proposal to the presentation, the demostration, and the code submitted.
vin@nd.edu
Last modified: Wed Jan 16 12:33:25 EST 2002