CPSC 441, Fall 2018
About the Final Project

As you know, this course will have a final project instead of a final exam, and the project will include a presentation. Projects can be individual or group, with two or three people in a group. Ideally, all the projects will be different, but that might not be possible. Ideally, there will be a significant number of group projects, to limit the number of presentations. The project is due at the regularly scheduled final exam period: Monday, December 17, at 8:30 AM. There will be presentations during the exam period, but we will almost certainly need to have some presentations earlier, during the last week of classes. However, even if you give your presentation early, the project itself is due at the exam period.

You will need to meet with me to get approval for your project, and I will ask for a written project description before Thanksgiving break. However, I encourage you to meet with me one or more additional times to discuss ideas, before we make a final decision about what your project will be. It is never too early to start thinking about ideas!

A project will take one of the following three forms (although I will consider exceptions if you come up with an interesting proposal that doesn't fit into any of the categories):

  1. Research Paper: Write a paper about some aspect of networking. The paper for an individual project would probably be eight to twelve pages, and should include notes and bibliography. It might be possible to have a longer paper, or several related papers, as a group project.
  2. Project and Paper: Do some network setup or configuration, or some smaller scale programming, and write a medium-length paper about that discusses what you learned and what you accomplished.
  3. Programming Project: Write a non-trivial network application or a library that implements a networking API. You might work either with a standard protocol or one of your own devising. A programming project will ordinarily also include a short paper describing what the software does and/or how it is used.

Here is a list of some possible topics. You are not restricted to choosing a topic from this list. If you find some other appropriate topic that interests you, come in and discuss it with me.