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.
- If the program always does the same activities (e.g., plays a song),
describe what the robot does and why you think this is the proper
result.
- If the robot reacts to input or its environment, describe the situations
that can occur, how you tested each circumstance, and how the robot
responded.
For example, if the robot is to move and avoid obstacles, testing
should identify that no obstacles might be present, a obstacle may
exist on the left, an obstacle on the right, or an obstacle on both
left and right. In each case, commentary should describe what tests
were run and how the robot reacted.
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.