CMPSCI 187: Programming With Data Structures
David Mix Barrington and Mark Corner
Course Requirements and Grading
Your grade in CMPSCI 187 will be based on the following:
- Midterm Exams (12%):
There will be two midterm exams each counting 12% of your grade, on
Tuesday 30 September and Thursday 30 October.
Each exam will be 7-9 p.m. in rooms to be chosen by the University.
We will write an exam intended
to be finished in an hour, and give you two hours to finish it.
(Over the years
students have accused Dave, at least, of overestimating what they
ought to be able to finish in an hour.)
- Final Exam (35%):This will be during the May
final exam period
as scheduled by the University, and will be cumulative, though with greater
emphasis on the last third of the course. You will have two
hours. This exam will count for 35% of your final grade. (In past terms
Dave has had variable credit for the final, but not here.)
- Programming Assignments (25%): There will be five
assignments over the term, the first four counting 5% of your grade
and the last 10%. (That totals 30%, not 25% -- you may drop your lowest
program grade unless it is the double-sized one, which you may count as 5%.)
These are to be handed in as Eclipse files using Moodle
in a manner to be described later.
- Discussions (8%): Attendance at the Wednesday discussion sections
is required and this portion of the course grade will be based on your
attendance and participation. Participation will be measured
by group responses to
in-class writing assignments.
You normally submit answers in pairs, with the rule that you may not have the
same partner twice over the semester. These will be graded "check" (B)
or "check-plus" (A), and all but the lowest two of these
will count for 8% of your
- Moodle Quizzes (4%): These multiple-choice quizzes will be due about
once per week and will be taken online using Moodle. We will drop the lowest
- Clicker Questions (4%): In each lecture after the first two, there
will be five multiple-choice questions to be answered during lecture using the
iClicker system. You are responsible for getting and registering a clicker
device. (We may be able to use the iClicker Go system which allows you to
enter answers on a phone -- details to come.) The lowest four of these scores
will be dropped.
Academic Honesty Policy
All work submitted must be your own in presentation. How much
outside help is allowed depends on the course component.
- The exams are
closed-book and no outside help is allowed. Any cheating on an exam
is grounds for an F in the course.
- With programming assignments
the rule is a bit harder to specify.
You may discuss programming with other students, in
fact I encourage this as a learning experience. But again, the writeup must
be your work. Copying is not allowed, and collaboration so close that it
looks like copying is not allowed. (In general, if I
get two identical
programs we will accept neither of them (i.e., both get F's)
and I will report this action to the Academic Honesty Board.)
Defining plagiarism is somewhat harder in the case of code, as
large segments of a Java program may be completely standard. But we
watch for copying from web sources and from each other, and there
are ways of detecting this. In addition, the exams will assume that
you are familiar with the details of the completed assignments, so
that these will be much more difficult if you have not actually
written the desired programs yourself.
A good practice is to divide
your work into an "ideas phase" where you collaborate and a "writeup phase"
where you work alone -- enter the writeup phase with notes, but not written
- If you make use of a printed or on-line source for any assignment, other
than specific course materials such as the textbook or web site, please
mention it in your writeup. Of course copying a solution to a problem from
the web is cheating, and this is easier for us to detect than you might think.
Last modified 18 August 2012