CSCI 250 - Programming Practicum
Spring 2012
Programming Project 3: Peer-to-Peer Networking
Overview
In this project, each team will develop a distributed peer-to-peer network
application. Multiple users, sitting at different machines, all run their
own copies of the application. In order to connect with each other, one
user must be aware of the IP address of another user. Once two users
are connected, they can share the IP addresses of other users with whom
they have a mutual connection.
Ideas
Your team's application will be oriented towards solving some particular
problem using the medium of peer-to-peer networking. What problem you will
solve will be up to each team to determine, in consultation with the
instructor. Possible ideas include:
- A multi-player game
- A file-sharing system
- A real-time social network
Developing the Features and User Interface
For your application, develop a written scenario to contextualize the
application, its features, and its user interface. Justify each feature
and user interface element in terms of the scenario that describes the target
domain.
Teams
This assignment will be completed in teams of two or three:
- Kaleigh Clary, Benjamin Smith
- Grace Dubiskas, Thierry Kimenyi, David Malick
- Kyle Wilshusen, John Nelson Huffman, Brandon McNew
Deadlines
- Friday, February 24:
- Written scenario completed
- Tentative feature list completed
- Sketch made of user interface
- Proposed division of labor ready
- 5-minute oral presentation
- Wednesday, February 29:
- Friday, March 2
- First code review due; one per person
- Wednesday, March 7
- Final system demo, during class
- Friday, March 9