JMU JMU - Department of Computer Science
Help Tools
Programming Assignment Policies


1 Collaboration

You must work on programming assignments entirely on your own. You may only request help on programming assignments from the course instructor or the lab assistant (if there is one).

The one exception to this rule involves testing. You may test code written by other students and discuss tests/testing with other students. Of course, this must be done without looking at or discussing the source code or the specifics of any algorithms and/or data structures.

You may, request help on general topics from other students and friends. However, when doing so you must never refer to the programming assignments.

2 Submission

Except when otherwise noted, this course has a "two part" submission process:
  1. You must demonstrate that your code builds and executes properly in "lab" on the day it is due.
  2. You must submit "hardcopy" of the code (properly documented) on 8.5"x11.0" paper.
Details are provided below.

2.1 Official Testing

We will meet in the lab in Room 250 (at the normal time) on days that programming assignments are due. You should come to the lab with your code fully tested.

The course instructor (and/or the lab assistant if one is available) will build (i.e., compile and/or link) and test your code with you (individually), on a first-come-first-served basis. You will not be given test cases in advance. The test cases may be provided as input to your driver or may be provided by a specialized driver (as appropriate).

Your code must build correctly and successfully pass all of the tests. If it does not, you may try to correct it in lab and have it re-tested. However, re-testing will only begin after all students have had an opportunity to be tested once. Hence, there is no guarantee that there will be time for re-testing. In addition, you will be allowed at most one re-test (i.e., two tests in total).

You are responsible for ensuring that your code compiles/links/executes on the computers in the lab. Statements like "it works on my computer at home" are irrelevant and will be ignored.

You must bring a hardcopy of the cover sheet (see below) with you and you must present it when your code is tested. The instructor/assistant will record the result(s) of the official testing process on the cover sheet.

2.2 Hardcopy Submission

You may not submit hardcopy unless and until your code has successfully passed the official tests.

You must submit a hardcopy of the code exactly as it was tested. Each hardcopy submission must have a typed coversheet that contains the assignment number and your name and email address. Each submission must be stapled. Your hardcopy must be submitted by the next class-day after the due date (e.g., the Monday immediately after the Friday due date).

All code and documentation written for the programming assignments must conform to the course style guides.

You must also keep an electronic copy of the code exactly as it was tested. You may be asked to submit this electronic copy as well.

3 Grading

Solutions to programming assignments will be graded on a 100-point scale (i.e., the minimum possible grade is 0 and the maximum possible grade is 100). Points will be deducted for a variety of reasons, including: failing the in-lab tests, failing to conform to the course style guides, failing to be properly documented, poor design, poor implementation, and inelegance.

There are several particularly important grading policies that you should be aware of:

If you violate the University's Honor Code (at any time) you will receive a grade of F for the course, other penalties may be imposed, and the violation will be reported to the Honor Council (in accordance with the Informal Resolution Procedure).

Copyright 2019