Richard G Baldwin (512) 223-4758, NRG Room 4238, Baldwin@DickBaldwin.com, http://www.austincc.edu/baldwin

INEW 2338 Advanced Java Programming

General Instructions for Completing and Submitting Programming Assignments

Revised 08/21/07


General

This document may be modified as the semester progresses in order to incorporate new instructions or to clarify existing instructions.  Therefore, you should review the instructions periodically and then immediately before submitting each assignment to confirm that you are in compliance.

Read the Instructions Carefully

In addition to these instructions, a detailed set of instructions is provided in each individual assignment document.   Failure to follow all of the instructions to the letter usually results in a failing grade, normally zero.

If you have any questions regarding instructions, please ask them at least one week prior to the assignment deadline. Don't end up with a bad grade due to the fact that you didn't understand the instructions.

Every semester there are one or two students who are surprised and saddened to learn that I really do mean that you must follow the instructions and meet the specifications exactly or you won't get credit for the program.  Don't be one of those students.

Typographical Errors

If you discover any typographical errors in this document, please let me know so that I can correct the error and notify all of the students.

Your Name in the Output

Your name must appear one or more times in the output for every program.  If there is any confusion as to where your name should appear, please discuss this with me at least one week prior to the assignment deadline.

Output Format

I have provided class files for my version of every program so that you can run my version and observe its behavior.  You will need to run my version of the program and you must match the visual and operational aspects of my version in every significant way such as: shape, size, color, shading, labels, etc.  Failure to do so will result in no credit being given for the assignment.

Java Version Requirement

Your programs must be compatible with Sun's JDK 6 or later, and Sun's Servlet package, Version 2.1.1 or later.

(See Generics in J2SE 5.0 for a discussion of what constitutes J2SE 5.0.  Note, however, that this description may be somewhat dated following the release of JDK 6.)

Downloading Assignment Files

Each assignment page contains a link that allows you to download a copy of my version of the assignment program.  As explained above, you should always download and run my version of the program and compare it with your version of the program before submitting your version of the program for credit.

At the risk of being redundant, I am going to restate that the behavior of your version of the program must match the visual and operational aspects of my version of the program in every significant way such as: shape, size, color, shading, labels, etc.  In other words, your version of the program must look, feel, and behave in a manner that is identical to my version of the program.  Failure to do so will result in no credit being given for the assignment.

Independent Work

The assignments for this course are take-home assignments. You may use any reference material that you have available. However, you are instructed not to obtain assistance from anyone in order to complete the assignments.

Special Instructions Regarding the Completion and Submittal of Assignment Programs

One or more of the problems on an assignment may require you to write a Java program.

Source files and class files in a separate folder

You must submit Java source files and class files for every assignment. (It is possible that you may also be required to submit HTML files for some assignments.)  Store your completed files for each assignment on a diskette or in a directory on your hard drive (see discussion of submittal methods below).

You must store the files for each program in a folder (directory) that contains nothing but the deliverable files for that assignment.  (See the discussion of extraneous material later in this document.)

You must use Sun's Software Development Kit (JDK)

You must write your programs using the standard Java development software (JDK 6) that is available from Sun.  Do not use other compilers such as Microsoft J++, Symantec Visual Cafe, IBM Visual Age for Java, etc., for your final submittal.

(The objective of this course is to learn how to program in Java, not to learn how to drag icons around on the screen so that a high-level software development product can write your Java programs for you.)

Testing your programs

Except for those problems involving servlets and JSP, test your class files for each program (from the command-line prompt) to confirm that the program conforms to the program specifications before submitting it. 

Test your servlet programs by deploying them in the Jakarta Tomcat server to confirm that the programs conform to the program specifications before submitting them.

If your programs don't conform to the program specifications, don't bother submitting them.

NO PARTIAL CREDIT

There is no partial credit.  If you fail to follow the instructions or you submit programs that fail to meet the specifications, you will get no credit for the assignment.

Instructor testing procedure

Except for problems involving servlets, your instructor will test your program in the following sequence.  A failure at any step in the sequence will immediately result in zero credit for the program with no further testing.  (To reiterate, there is no partial credit.)

  1. Execute your class files from a Windows command prompt (using JDK 6 or later) in the ACC laboratory to confirm proper output.  (Note that you must deliver compiled class files.  Your instructor will not compile your programs for you.)
  2. Visually confirm that your source code meets all of the written program specifications.
  3. Optionally recompile your source code and retest the class files produced by that recompilation to confirm that the source code that you submitted was actually used to produce the class files that you submitted.

In the case of servlets or JSP, your instructor will deploy your class files and/or JSP files on a Jakarta Tomcat server and access them with a browser to confirm proper output.

Make a backup copy

You should make a backup copy of your source code and class files on a separate diskette. The backup diskette should be an exact copy of the diskette or directory that you submit for credit.

Do not make any changes to the backup after you submit your completed assignment. Keep the backup until you receive your grade and any questions regarding that grade have been resolved. If any changes are made to the backup after the assignment is submitted, it will not be valid for resolving any questions which may arise regarding your grade.

Again, no partial credit

Again, at the risk of being redundant, each program will be graded either right or wrong. Partial credit will not be given for source code and class files that fail to fully conform to all of the instructions and the program specifications.

Source code or class files may be provided

Some of the programs may require you to use (without modification) a controlling class and/or other code that I have provided and to duplicate the screen output shown while meeting all other written specifications. In such cases, any modification of the code that I have provided (other than insertion of your name where indicated) will be grounds for disqualification.

You should be able to cut and paste the source code from the electronic copy of the assignment document into your Java editor.  It is strongly recommended that you cut and paste instead of retyping source code in order to avoid errors in copying the code.

Matching the required output

You must match the specified screen output in every significant way for every program. Extraneous characters on the screen, extra blank lines, missing blank lines, etc., incorrect colors, incorrect look and feel, etc., are grounds for disqualification. In other words, your output should be an exact image of the specified output and must match the output produced by my version of the program.

You cannot use my class files

In most cases, I will provide you with the set of class files that were produced by my solution to a problem so that you can run my version to observe the output.  In no case are you to use any of the class files that I provide in your solution.  (The class files that I provide will be identified by the date and time that I compiled them.)

In order to get credit for a program, you must provide source code and compiled class files of your own design for all classes required by the program other than those contained in the standard Java class libraries.

Indentation and comments

For my convenience, your source code should use an indentation scheme and comments that make it easy for me to read and understand your code.  However, this is not a requirement and your grade will not be impacted by the inclusion of indentation and comments or the lack thereof.

Be careful of printing errors

Sometimes when printing HTML files from browsers, characters will be duplicated or omitted.  This can sometimes lead to confusion.  If  you are working from a printed copy, be sure to check it against the electronic copy.

Submitting Your Assignment

The assignments usually require you to write programs and to submit the resulting source and class files.  The completed programs must satisfy the requirements described earlier in this document and the individual specifications that apply to each assignment.

Extraneous Material

Please do not submit extra files such as readme.txt files and expect me to pay attention to them. I am not interested in them, and I won't pay attention to them.

Please do not put comments/messages in your source code and expect me to pay attention to them.  I won't normally pay attention to your comments unless I have some reason to be concerned about your source code.  Even then, I will only be interested in explanatory comments.  I won't be interested in messages provided in the form of comments.

Please do not submit printed listings of your programs.  I am not interested in them, and will simply put them in the trash if I receive them.

All I expect to receive from you when you submit your assignment is the required electronic material (source files, class files, HTML files, etc.). There is no reason that you will need to communicate any information about your assignment to me when you submit it.  Any need to discuss the requirements of the assignment must be satisfied prior to your submittal of the assignment.

There are two acceptable ways for you to submit your completed assignment.

Submittal Method #1 - Electronic Mail

This is the preferred method.  Encapsulate an electronic copy of your source files, class files, HTML files, etc., in a zip file and send the zip file as an attachment to an email message to  Baldwin@DickBaldwin.com not later than the deadline.

(Do not send your zip file to baldwin@austincc.edu.  If you do, your message may be marked as SPAM and discarded.)

Do not retain folder information in zip file

Include all of the files required for an assignment in a single zip file.  When you create the zip file, do not retain folder or directory information.  In other words, it should be possible for me to extract your files into any folder on my computer without creating a tree structure in the extraction process.

(As a result, you must make certain that you do not submit two or more files with the same name in the same zip file.  If you do, one of them will be destroyed when I extract the files from the zip file.)

Meeting the submittal deadline

The message containing the zip file must be in my email inbox by the deadline.  (Lost in the email system is not a valid excuse for missing a deadline.) 

I will confirm receipt of each assignment via return email within 48 hours (typically sooner during the week).

If you don't receive a confirming message within 48 hours, that probably means that I didn't receive your assignment and you should resubmit (unless the deadline has passed, in which case there is no point in resubmitting).

If I don't confirm receipt, then your assignment has not been submitted"Lost in the email" is not a valid excuse for failing to submit an assignment on time.

Be sure to save my confirmation message in case you need it later to prove receipt on my part.

The subject line is extremely important

Make the subject line of your email message read as follows:

Last name, First name, INEW2338, Assignment # nn

Otherwise, my spam blocking software will probably dump your message into the trash and I will probably never see it.  If I don't see it, you won't get credit for the assignment.

The standard for zip files

The zip file must be one that I can unzip using the WinZip program http://www.winzip.com/download.htm with no effort required on my part other than to open the file and extract the material contained therein.

There must be no requirement for any sort of special decoding.  If there is such a requirement, I will not accept the assignment and you will get no credit.

If this makes you uncomfortable ...

Although I prefer email submittals, if you have any uncertainty about zipping files, you should probably submit your assignments according to Submittal Method #2 described below.

Submittal Method #2 - Sneaker Mail

This is not the method that I prefer.  The preferred submittal method is to submit via email as described earlier in this document.  However, this is an allowable method for those who are unable to submit via email.

Those of you who live in Austin may put an electronic copy of your source files and class files on a  3.5-inch diskette (not on a CD).  Put this diskette in a large envelope (approximately 8.5" by 11" in size) and submit the envelope to me, in person, not later than the published deadline.

Make certain that your name, telephone number, and email address are on the diskette.  Make them legible.  Also make certain that your name and the name BALDWIN along with the course name, course number, and assignment number appear on the outside of the envelope.

(If you are unable to deliver the envelope to me in person, you may slide it under my door at NRG room 4238.)

Returning diskettes

If you are a classroom student, I will return your diskette or a replacement diskette to you after the test is graded.

If you are a Distance Learning student, your diskette will not be returned to you (unless you come to my office to retrieve it). However, if you remind me, I will provide you with another diskette in exchange for your diskette when you submit your assignment

Failure to Meet the Submittal Deadline

The submittal deadline for each assignment will be published each semester.  The penalty for failing to meet the submittal deadline is that you simply won't get credit for the assignment.

Before you ask, let me tell you that business travel, lost in the email, problems at work, extreme work pressures, divorce, depression, receipt of a "Dear John letter", automobile repairs, flat tires, computer problems, power failures, total eclipses, extremely high outside temperatures, high pollen count, broken lawnmowers, the Super Bowl Schedule, and other assorted and interesting excuses are not valid excuses for failing to meet the submittal deadline.  About the only excuse that I might be willing to accept would be something on the order of extended hospitalization or extended serious illness on the part of you or an immediate member of your family.  If your excuse is not on that order of magnitude, I really don't want to hear it.

-end-

File:  AsgGenInstr.htm