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

ITSE2317 Java Programming (Intermediate)

These instructions apply to classroom sections and Open Campus (PCM) sections taught by Professor Baldwin.

Instructions for Downloading and Submitting Exams

Summer 2010

Revised 05/24/10

The official web page for this course is ITSE2317.htm


General

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

Failure to comply with the instructions usually results in a failing grade for the exam, often zero.

Downloading Exam Files

Click here to download a zip file named ITSE2317Exams.zip that contains:

The downloadable zip file is password protected.  Complete the online orientation and then contact me at Baldwin@DickBaldwin.com  to obtain the password for extracting the material from the zip file.

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

Format of Downloadable Zip File

The zip file named ITSE2317Exams.zip that you will download contains three other zip files named Exam1.zip, Exam2.zip, and Exam3.zip.  As the names imply, each of these three zip files corresponds to a particular exam.  These three zip files are not protected by a password.  Only the top-level zip file named ITSE2317Exams.zip is protected by a password.

First extract all three zip files from the file named ITSE2317Exams.zip.  Then extract the contents of the zip file for a particular exam of interest into an empty folder, being careful to preserve the directory structure encapsulated in the zip file.

Each exam requires that you write five separate programs.  Each of the three zip files corresponding to a particular exam contains an HTML document (and associated image files) that constitute the programming specifications for that particular exam.  Open the HTML file in your browser to view the programming specifications for the exam.

Each of these three zip files also contains five folders, one for each problem for that particular exam, named Prob01 through Prob05.  The folder for a particular problem contains the class files for my version of the program along with any image files that are required to execute the program.  You will find instructions in the HTML exam document for executing my versions of the programs.  (In some cases, there are multimedia classpath issues involved, so be sure to read the instructions.)

Each of the five folders also contains a folder named docs.  This folder contains javadoc documentation for my version of the solution for that particular problem.  The folder named docs contains a file named index.html.  Open that file in your browser to view the documentation for that particular problem.

Special Instructions Regarding the Submittal of Programs

Every problem on an exam requires you to write a Java program.

Your name is required in the output for every program and the program specifications will indicate where your name should appear.  (If your name does not appear, I will assume that the material that you submitted does not constitute your own work and you will not get credit for the program.)

You must submit Java source files and class files for each program. Store your completed source files and class files for each program on a diskette or in a directory tree on your hard drive (see discussion of submittal methods below).

You must store the files for each program in a separate folder (directory) with the name of the folder being the same as the name of the controlling class for the program (example:  Prob01, Prob02, etc.).  If you fail to do this, I will not accept your exam and you will score zero on the exam. 

The final version of the programs that you submit for exams, must include source code and class files compatible with the version of Sun's JDK installed in the NRG laboratory on the due date of the exam. Among other things, this means that you must use Sun's JDK 6 or later.  (Please read the Preface in my lesson entitled Generics in J2SE 5.0 to understand Sun's nomenclature regarding the different versions of Java.)

Some of the exam problems must also be compatible with Ericson's media library.  Although there is a copy of the media library on the CD in the back of the textbook, it is lacking some features and has a few known bugs.

You'll need to download the Java 1.5+ version: bookClasses10-1-07.zip.  This version has some new features as seen at New Features in 8-14-07 or later bookClasses.  For more information, see http://coweb.cc.gatech.edu/mediaComp-plan/101.

Do not use the JDK 1.0.x event model. Do not use high-level compilers and IDEs such as Microsoft J++, Symantec Visual Cafe, IBM Visual Age for Java, Eclipse, NetBeans, 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 tool can write your Java programs for you.

Test the class file for each program from the Windows command line using Sun's java.exe and javac.exe programs to confirm that the program conforms to the program specifications before submitting it. If it doesn't conform, don't bother submitting it. (There is no partial credit.)

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.

1.  Copy my compiled version of the controlling class into your directory in those cases where such copying is indicated in the program specifications.

2. Execute the class file under the Win MSDos shell (using Sun's JDK 6, or later) in the ACC laboratory to confirm proper output. 

3. Visually confirm that your source code meets all of the written program specifications.

4. Optionally recompile your source code and retest the class file produced by that compilation to confirm that the source code that you submitted was actually used to produce the class file that you submitted.

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 tree that you submit for credit. Do not make any changes to the backup after you submit your completed exam. Keep the backup until you receive your grade and any questions regarding that grade are resolved. If any changes are made to the backup after the exam is submitted, it will not be valid for resolving any questions which may arise regarding your grade.

Each program will be graded either right or wrong. Partial credit will not be given for source code and class files that do not fully conform to these instructions and the program specifications.

Some of the programs 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 test document into your Java editor (except that you may need to remove control codes inserted by my HTML editor).  It is strongly recommended that you cut and paste instead of retyping the source code in order to avoid errors in copying the code.

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, different colors for output images, etc., are grounds for disqualification. In other words, your output must be an exact image of the specified output.

In all 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 (except for the controlling class file with a name like ProbXX.class).  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 (except for the controlling class when I provide it) and except for the class files contained in the standard Java class libraries and Ericson's media library.

Your source code must use an indentation scheme and comments that makes it easy to read and understand.

Caution: 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.

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.

Submitting Your Exam

The exams 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 program.

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 in your source code and expect me to pay attention to them. I am not interested in them, and I won't pay attention to them. All I expect to receive from you when you submit your exam is the required material. There is no reason that you will need to communicate any information about your exam to me when you submit it. Any need to discuss the requirements of the exam must be satisfied prior to your submittal of the exam.

There are two acceptable ways for you to submit your completed exam, source files, and class files.

Submittal Method #1 - Sneaker Mail:
Due to the proliferation of viruses and other reasons as well, this is not my preferred approach, but it is acceptable.

Put an electronic copy of your source files and class files on a  3.5-inch diskette.  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 deadline given in the syllabus.

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 exam number appear on the outside of the envelope. (See the syllabus for information on my office hours.)

Please do not submit printed source code or any other printed material. Submit only the diskette.

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. However, if you remind me, I will provide you with another diskette in exchange for your diskette when you submit your exam

Submittal Method #2 - Electronic Mail:
This is the preferred approach.

Encapsulate an electronic copy of your source files and class files in a zip file and send the file as an attachment to an email message to Baldwin@DickBaldwin.com not later than the deadline given in the syllabus. 

The message containing the zip file must be in my email inbox by the deadline.  If you don't receive a confirming message within 48 hours, that probably means that I didn't receive it and you should resubmit.

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

Be sure to identify yourself, the class in which you are enrolled, and the number of the exam in the email message.  Also be sure that the subject line of the email message begins with the word EXAM and contains your name as well as the number of the class in which you are enrolled.

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 exam. 

Using the WinZip program, I will check the boxes labeled "Overwrite Existing Files" and "Use Folder Names" (or the corresponding boxes in the version of WinZip that I am using) before extracting all of the files in your zip file.  It is very important that the integrity of your directory tree structure be faithfully reproduced when the files are extracted. If not, and if any files are destroyed in the process, you will not get credit for the files that are destroyed.

If you have any uncertainty about zipping files, you should probably submit your exams according to Submittal Method #1 (but as an aspiring Java programmer, you really should make the effort to learn about zipping files)

In the Event of Conflict

If there is a conflict between your answer and the material in Baldwin's Java Tutorials, the material in Baldwin's Tutorials will prevail, even if your information is based on another reputable source. If you wish to challenge the material in Baldwin's Tutorials, you must provide both answers (the answer from Baldwin's Tutorial and the answer from your other source) and explain why you believe the material from the other source is the better of the two. In this case, you must also identify your other source by title, page, and paragraph number, and be prepared to present that source document to me so that I can evaluate it at my convenience.

Failure to Meet the Submittal Deadline

The submittal deadline for each exam is provided in the Syllabus each semester.  The penalty for failing to meet the submittal deadline is also explained in the Syllabus.

Before you ask, let me tell you that business travel, 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 circumstances 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: ITSE2317ExamInstructions.htm