last updated: Thu Dec 5 23:10:58 EST 2002 (sklar)
NOTE:
last updated: Mon Nov 18 23:17:10 EST 2002
goal.
The goal of this assignment is to complete your educational game,
including the full client and server, user and software documentation,
as well as packaging the game for installation on a Linux machine.
This assignment is worth 35 points (out of 110 this semester). Distribution of points is indicated below.
FIRST, print out the timesheet and keep track of how much time you spend doing the tasks outlined below.
1. design.(4 points)
As usual, you need to begin with a design document.
This must include a "storyboard" in which you draw the various
screens in the user-interface, including the login screen.
You must show the progression from one screen to another.
You must indicate how errors are handled, i.e., how users are notified
about errors (both system-generated and user-generated) and what
happens next in the game after an error occurs (does the game end? can
the user correct the situation?, etc.)
This documentation should be 1-2 pages.
The screen drawings can be done by hand or generated electronically.
It must be complete -- so you need to be CLEAR and CONCISE.
This portion must be turned in as hardcopy.
This section is worth 3 points:
2. write the user-interface for your game.(8 points)
Using Java, write a graphical user-interface for the client portion of
your game. This must be a Java application OR a Java applet that we
can run using appletviewer. If it is an applet, then you MUST turn in
an HTML file for invoking the applet.
hw56<cunix-id>.java
.
hw56<cunix-id>.java
and name the html file:
hw56<cunix-id>.html
3. write java software documentation
for your client.(2 points)
You need to document your Java code using javadoc.
Keep in mind the discussion from class, especially which tags are
required and which sections of code must be documented.
Put the files in a directory called "javadoc" below your working
directory.
When you run the submit script, this directory will get picked up and
submitted along with your program files.
4. connect to the server.
(8 points)
As discussed in class on Mon Nov 11, you need to modify your server
code from homework #3 so that it is a stand-alone program.
Your server should receive all communications from the Java client via
sockets.
Your server should interface with your data file(s), as done in
homework #3.
5. add the second player.
(4 points)
To finish up the game, you need to implement a second player.
This can be either (pick one):
6. write C software documentation for your server.(2 points)
You need to include a header comment at the top of each file.
You need to have a block comment at the beginning of each function.
Include the same type of information in the comments that you are
putting in your Java code documentation.
7. use configuration management.(2.5 points)
Create an RCS directory below your working directory.
Put your Java files in that directory.
Create a makefile that checks the Java files out of the RCS directory
and builds the client.
Include the automatic version tag we discussed in class and link that to the
version section of the javadoc comments.
The makefile should check the C files out of the RCS directory and
build the server.
The default target in the makefile should build both the Java client and
the C server.
Again, the submit script will pick up the RCS directory automatically.
Make sure that all your files except the makefile are checked
into RCS when you submit.
This section is worth 2.5 points:
8. create an installation package.(1 point)
You need to create an installation package for your game.
We will discuss how to do this in class on Mon Nov 25.
SEE INSTRUCTIONS posted here.
9. write user documentation.(3 points)
You need to write user documentation so that people will know how to
play your game.
Keep in mind the pointers discussed during the lecture on user documentation.
This documentation should be no more than 5 pages.
It must be complete -- so you need to be CLEAR and CONCISE.
This portion must be turned in as hardcopy.
10. submit.(0.5 points)
You need to submit your program in two ways: electronically and hard copy.
There is no partial credit here -- if you don't follow the submission
instructions, you lose all the points for this section.
SEE INSTRUCTIONS posted here.
Be sure to submit by 12NOON on MON DEC 9.
(1) Print out the homework template cover page and fill it out.
(2) Print out the timesheet and fill it out.
(3) STAPLE the cover page, timesheet and hardcopy of your
documentation together.
(4) Make sure your name and CUNIX ID are on all the papers you hand in!
(5) Bring all this to my office on MON DEC 9, before 5pm.
The Computer Science office gets locked at 5pm, so don't be late!!!