Project Submission Guidelines

CSC 161 - Imperative Problem Solving and Data Structures - Weinman



Summary:
We provide details on the policies for submitting module projects.

Contents

1  Collaboration
2  Headers
    2.1  Identification
    2.2  Academic Honesty Certification
3  Format
4  Testing
5  Submission

1  Collaboration

You will begin module projects in class using assigned partners; projects must be completed and submitted with these assigned partners.
Working with a partner will help ensure you can take some advantage of the principle that "Given enough eyeballs, all bugs are shallow."1 Working with an assigned partner will increase the chances of being exposed to different ways of thinking and problem solving as well as help you practice the skills you'll need in the work world, where you typically do not get to choose your coworkers.
Everyone whose name appears on a submitted group lab report has the responsibility to ensure everyone fully understands the submission.
Other discussions must respect the course academic honesty policy and guidelines on allowable help from peer educators.

2  Headers

The very beginning of each and every project file should contain the lines with the following information. Even if the text file is commentary the same (C-style comment) format must be used.

2.1  Identification

/***********************************************************************
 * Names:   (identify all group members)
 * Project: Title
 ***********************************************************************/
The project title must exactly match that give on the corresponding web page.

2.2  Academic Honesty Certification

/* *********************************************************************
 * Academic honesty certification:
 *   Written/online sources used:
 *     [include textbook(s), CSC 161 labs or readings;
 *      use complete citations for Web or other written sources;
 *      write none if no sources used]
 *   Help obtained
 *     [indicate names of instructor, class mentors
 *      or evening tutors, consulted according to class policy;
 *      write none if none of these sources used]
 *   Our initials below confirms that the above list of sources
 *   is complete AND that I/we have not talked to anyone else
 *   (e.g., CSC 161 students) about the solution to this problem
 *
 *   Initials:  ABC, DEF
 ***********************************************************************/

3  Format

Submissions must be in plain text files (note: source code is a text file), rather than special word processing or other document formats (e.g., .doc, .pdf).
Commentary
Commentary regarding testing should be given in a separate file, not included within the complete program. (Note: Opening a file in Emacs with a .txt extension is generally a good way to author such a file, as Emacs will automatically wrap lines sensibly.) The commentary should describe how one knows a program is correct (cf. 4). As with any writing, this commentary should be logically structured and carefully written.
Code
A complete program should be given as a single entity (file), unless otherwise specified in the instructions.

4  Testing

Projects require more formal testing as outlined in the rubric. Unless special instructions are given, projects involve the use of robots, and often the result of the program cannot be copied into a testing commentary. However, tests can be described. To generate a transcript of compilation and relevant test or demonstration runs for inclusion in your work, use the script command and paste the resulting file at the end of your commentary.
IMPORTANT REMINDER: Including script-based transcripts (or simply pasting text copied directly from the terminal window) are subject to the syllbus academic honesty policy (based on the student handbook):
Any program results or output must be faithfully recorded, not forged. (A thoughtful explanation of unexpected behavior can often be a worthwhile submission and is much better than the alternative.)

5  Submission

Submit your files to the corresponding assignment on PioneerWeb by the deadline. Attach each file containing your answers (cf. 3) to upload. Type the complete e-mail addresses of all the individuals named on the lab into the Comments box. For example
starjane17@grinnell.edu, cooljoe17@grinnell.edu
(This will enable the graders to provide responses easily.)
Only one submission per project group is required. However, all group members are jointly responsible for ensuring a submission is made. For example, if your partner told you he would submit the project but he forgets to do so, all group members will incur late penalties. For this reason, I recommend submitting work while you are sitting together.

Acknowledgments

This is a derivative work of Detailed Coursework Instructions by Henry Walker; used under a CC-BY-NC-SA 4.0 license.

References

[KP]
Brian W. Kernighan and Rob Pike. The Practice of Programming. Addison-Wesley, 1999.
[SW]
William Strunk, Jr. and E.B. White. The Elements of Style. 1959.
Copyright ©2015 Jerod Weinman. This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 4.0 International License.

Footnotes:

1This principle is dubbed Linus's Law by Eric S. Raymond in The Cathedral and the Bazaar, O'Reilly Media, 1999, p. 30.