Each student will work on a semester-long programming project that is strongly related to the materials and topics discussed in class. Projects should be done in groups of two. Please contact the instructor if you are looking for partners or ideas.
Proposal (Three Pages)
Each group will need to turn in a written proposal document that describes the project idea. Your proposal should discuss the following:
- How the project relates to the course material.
- An overview of what work must be done and how it will be divided amongst the group.
- The experiments that you will run to validate your project and what questions they will answer.
- The resources you will need to complete the project. This includes software, hardware, or data sets.
Your proposal should also provide three types of goals: 75% goals, 100% goals, and 125% goals. Think of these as the equivalent of a B grade, an A grade, and a "wow!" grade. The goals can be dependent or independent of the prior goals.
In addition to the written proposal, you will also present your project idea to the class in order to recieve feedback from your peers. This proposal should be to convince the class that your idea will pertain to the course, that you will be able to complete it, and that we will be able to evaluate it.
Final Project Report (Ten Pages)
Your updated introduction and motivation based upon feedback from your proposal and any changes you've made as a result of your research so far. A re-iteration of your proposed goals, with explicit discussion about what progress you have made to date on those goals and what your timeline is for accomplishing the rest of them by the end of the semester. A well-filled-out background and related work section citing the appropriate work from the literature. A sketch of your evaluation section outlining your evaluation plan and listing (as simple as an itemized list if you wish) the major components you plan for your evaluation.
Feel free to include additional material in your interim report: If you wish to include, e.g., your design section or preliminary results, we will give you feedback to help ensure that your final report is great.
Document Format
Both the proposal and the final report should be written using the following format guidelines:
- Double-column
- Single-spaced
- 11pt font
- Reasonable margins
I suggest that you write all of your documents using LaTeX. It is the de-facto tool in which most CS research papers are written. Although it has a bit of start up cost, it is much easier to collaboratively write complex research papers using LaTeX than with Microsoft Word. You can use the ACM SIG Proceedings Templates alternate Latex style for your papers.
Project Management
You should strongly consider using Git to perform source code control for your project and the paper you write describing it.
Acknowledgements
The above ideas are graciously borrowed from the 15-712 website from the comely Dave Andersen.