Project Links
Bid 1 - The LimeWire Project
1.0 Project Preferences

Sam Sergey Bruce Curtis Total
8 8 8 9 33
2.0 Qualifications and Tradeoffs
     2.1 Strengths and Qualifications
 
We all have developed strong skills in the Java programming language and the Eclipse environment. The LimeWire code base is well organized, and appears to be built using Maven, and easliy edited using Eclipse. We have also initialized a dialog with Professor Hollaar and have already begun to look at the source code. Our team is experienced with these particular tools. Both Curtis and Bruce have taken Lee Hollaar's Digital Intellectual Property course which gives our team a greater depth of understanding into the goals and objectives of the LimeWire project.
     2.2 Tradeoffs, constraints, and special considerations
 
The code base is very large and may require a lot of time to read and comprehend. Analyzing and classifying LimeWire's questionable behavior may require a significant amount of time before refactoring the code is possible.
3.0 The LimeWire Project (Lee Hollaar, University of Utah)
     3.1 Approach
 
Task 1
Using ethereal and other networking tools:
    Identify how LimeWire deviates from gnutella protocol
    Identify what is contained in the non-standard transmission
    Identify where non-standard transmissions are being directed
    Refactor networking code to comply to gnutella protocol

Task 2
    Analyze LimeWire client and document default settings
    Clearly define functionality enabled by default (document the actual meaning of obscure or misleading settings)
    Select which default settings should be enabled/disabled for a secure LimeWire setup
    Analyze GUI code and refactor to make settings clearly visible and understandable to user
    Enable secure and sensible LimeWire defaults in client
     3.2 Implementation Considerations
 
We will need to acquire the Maven plugin for Eclipse.