The basic goal of this project is for class members to design, construct and evaluate an interesting software system. The system should explore issues, solve problems or exploit techniques from classroom discussions or papers. Specifically, multiple of the following topics should appear in the project:
You are encouraged to propose your own project idea, and we will provide several project topic ideas (to help you brainstorm). It is more than fine for your project to span areas, combining system software issues (this class) and others like intelligent systems, theory, and programming languages. However, there must obviously be a significant 2227-related component, and all project plans must be explicitly okay'd by the instructor. A good resource to look at when deciding on a project is An Evaluation of the Ninth SOSP Submissions, or How (and How Not) to Write a Good Systems Paper (by R. Levin and D. Redell, in Operating Systems Review, vol. 17, no. 3, July 1983, pp. 35-40)
Logistically, you should work in groups of two. Use your office machines or the department's course clusters for most projects. If you need special access to particular equipment (e.g. a multiprocessor, a dedicated network switch, etc.), let me know as soon as possible. It may not be possible to accommodate all requests, but the sooner we know about them, the better chance we have of finding suitable alternatives that still let you explore the project in which you are interested.
The fraction of total project grade associated with each of the following documents is in proportion to the requested written length.
Due February 15.
(2 pages single spaced, 11
point font or larger)
Describe the project
idea/application, how it relates to the course material, what
work must be done (suggesting how it can be partitioned among
you) and what resources you will need (including software
systems you already have access to). Concentrate on convincing
us that it will pertain to the course, that you will be able to
complete it, and that we will be able to evaluate it.
Due February 29.
(2-3 pages + bibliography)
Identify work and results related to your proposed
project. Describe how your project fits within the context of
this previous work, including what your project will add to
existing understanding, what previous results your design will
leverage, and previous/alternate approaches to solving the
problem your system addresses. Cite the relevant published works
in your bibliography.
Due March 14
(5 pages)
Revise the project description scope briefly. Present a detailed
description of the software design, including module
decomposition, packages used, partitioning of work among the
group and highlighting the course material relationships. Report
logistical obstacles and your approach to overcoming
them. Construct a detailed sketch of your evaluation plan - what
hypothesis is to be tested, how will you control the test
circumstances, what workloads will you apply, why will this test
enable resolution of the hypothesis, and what and how will
specific metrics be measured. Doing this well will significantly
simplify the rest of the project, specifically the writing of
the final report.
Due April 4.
(2 pages)
This should be a status report. All obstacles should be
resolved. The evaluation plan should be finalized. Any major
changes in design should be documented. Initial data collection
and reporting is strongly encouraged.
Due April 18.
(roughly 8 slides)
Present your work at a conference-style poster session. Posters
should comprise roughly 8 slides of material, motivating your
project, explaining the overall design and implementation, and
presenting the results of your evaluation. Preparing a good
poster is challenging - it should be visually appealing, and
should allow someone visiting your poster to get a good idea of
what your project is about, even if you are not there to explain
it. At the same time, it should not be overly wordy - people
should be able to get the main idea in a few minutes without
peering at closely at tiny fonts. You should also prepare a
short (no more than 5 minutes without interruptions) talk to
present the highlights of your poster to visitors. Be prepared
to be interrupted and answer questions during this presentation
however!
Due April 21.
(12 pages)
This is a complete report. It should report goals, relationship
to the course, implementation design, evaluation methodology,
results and analysis, discussion of hypothesis outcome, most
interesting future work, and a bibliography. Submit code
electronically.
Last modified: Fri Jan 11 12:26:30 EST 2008