Comp527: Final Project
Contents
1. Introduction
Over this semester, we will cover a large range of material. We will discuss operating systems, networking, languages, and cryptography, crypto protocols, formal verification, and tamper-resistant hardware. You have an opportunity to choose one of the topics that you found most interesting and learn more about it yourself.
In most cases, you should find one partner who shares your interests. While some people may choose to form groups with three people, your project should be dramatically more ambitious to need such extra work. Please, no solo projects without instructor approval.
Some of you will be building systems and writing a lot of source code. Others will be examining existing systems, looking for bugs. Some of you may even choose to model a system and prove theorems about it.
Our advice: Get started early.
2. Your Project's Website
Your project needs a website. This will help you organize your thoughts and coordinate your team's efforts; it will also allow us to keep an eye on your progress (an opportunity we will take advantage of). You can use this wiki for your project, or you can create a webpage somewhere else if you prefer. Edit the FinalProjectsFall06 page and add a link to your project's page, wherever it may lie. Do this soon.
3. Milestones
The final project has a number of different milestones (due dates); these are listed on the Calendar. Please try not to be late. After each milestone, I will try to give you useful feedback to help you along. The final project counts for a substantial fraction of your course grade. Because projects will range widely in their topics, it is impossible to describe a set grading algorithm. The feedback you get at each stage may include suggestions on how you can improve your work. These suggestions are also hints about how you can improve your grade.
3.1. Proposals
Your project proposals will probably be one to two pages long. Everything you do should appear on your Web page.
If you're unsure what you want to do, there are several project ideas you might choose from, but you can certainly pursue your own ideas.
3.2. Status Reports
As you continue your work, you should keep your Web page up to date. I expect to see weekly updates to your page, describing your progress. At the November status-report deadline, you should write a page or two of text that describes how far you've gotten. If you have interesting preliminary results, this is a good place to discuss them.
3.3. Presentations
Each project group will have between 15 and 25 minutes to make an in-class presentation summarizing their work (the exact time will depend on how many groups we have). You should produce nice PowerPoint (or equivalent) slides and present a talk in the same fashion as you might do at a conference. You will also answer questions from the class. You are strongly encouraged to consult our advice on giving technical/scientific presentations.
3.4. Final writeup
This depends on the nature of your project. Generally speaking, you should write something in the fashion of a short conference paper. This would include an introduction, a brief discussion of related work, and your main contributions. You should also include a bibliography. While a real conference paper could be anywhere from 10–20 pages, your paper might be as short as 5 pages.