COMP 310
Fall 2014

Final Project

Home  Info  Owlspace   Java Resources  Eclipse Resources  Piazza

The final project combines the technologies developed in the Ballworld and Chat App systems.

Minimum requirements:

Final project specifications and requirements


Common Code

The common code is available by setting your svn:externals for your src folder to:

common -- This will not be available until the API is finalized.  Use the ChatApp common package in the mean time.



You will need to add the World Wind Java libraries to get map functionality.   CAREFULLY follow ALL the directions on the Java Resources page on adding libraries.   The respository for this year's WWJ libraries is

For teams where one person is using a 32-bit configuration and one person is using a 64-bit configuration, setting svn:ignore to not commit the project's .classpath file to SVN will help keep teammates from trashing each other's build configurations.    See the Subclipse web page for directions on how to do this.

Note: you may need to add the JUnit 4 library in order to support the unit tests that are included with the provided code.   Do this if you get errors in the test code packages.   Simply right click the project in Eclipse, and select Build Path/Add Libraries... then select JUnit and then the JUnit 4 system on the following window.


NASA WorldWind Demo

A simple demo of WorldWind Java (WWJ) SDK and the Comp310-provided simplifying libraries is available by checking out the following project:

Note that the above project is set to use 64-bit libraries, so if you are using a 32-bit system or a 64-bit Linux system, you will need to switch the libraries to their appropriate values.   See the Java Resources page on adding libraries.


Milestone requirements:

Package Naming Convention: To avoid name clashes, all implementation code written by a team should be under a package named: "netID1_netID2" where netID1 is the person who owns the repository.

Milestone 1:

For this milestone, you and your partner, if you have one, need to show that you have a well-thought out, coherent design ready for implementation.

The SVN commit that is closest to but not past the Milestone 1 deadline will be considered your Milestone 1 submission and must contain at least the following:

  1. Prose description of how your game will work, including typical game play with winning and losing.    (30 pts)

  2. UML diagram of the interfaces and implementing classes  (5 pts)

  3. A prose description of how your design will implement the required common API as well as any features specific to your implementation.   The above UML diagram may be imbedded in this document if desired (recommended!).  (20 pts) 

  4. Javadocs for the classes and interfaces in the UML diagram.   A minimum detail level of class/interface and method descriptions is required.   Descriptions of fields and input parameters is recommended but not required.   The Javadocs should be in the form of HTML web pages so they can be easily read, not just the comments in the code.   (15 pts)

  5. The submitted code should have a minimum functionality of being able to connect to other users and display a map plus any agreed upon functionality as detailed in the Piazza discussions, if any.  (15 pts)

  6. Attendance (See below) (10 pts)

  7. (5 pts discretionary)

Milestone 2:

For this milestone, you will submit your fully operational code plus full documentation.  The submission requirements are:

  1. Documentation:  (25 pts total)

    1. Fully detailed and accurate UML diagram and operational description from Milestone 1 with any changes and additions as were done since then.  (5 pts)

    2. Full Javadocs, this time including descriptions for all methods with input parameters and all fields.  (5 pts)

    3. A user's manual that describes at least:    (15 pts sub-total)

      1. How to start the program, both the program itself as well as any individual games or processes. (3 pts)

      2. How to connect to other users (3 pts)

      3. How to use every feature of the program.  (6 pts)

      4. How to end and exit the program.  (3 pts)

  2. Fully operational code should be committed to the SVN turn-in repository:   (45 pts total)

  3. Attendence (see below)  (10 pts)

  4. Percentage of working projects in class (10 pts)

  5. (10 pts discretionary)


Additional Grading Information:

© 2014 by Stephen Wong