We will have approximately 3 programming assignments and 7 written
homework assignments. If you find an error in our
grading, please bring it to our attention within one week of that item
being returned.
Re-grade Policy
If you have a question about an assignment or exam that was returned
to you, please don't hesitate to ask a TA or the instructor about it
during their office hours. Learning from our mistakes is often one of
the most memorable ways of learning!
If after discussing your question with a TA or the instructor you feel
that your work was misunderstood or otherwise should be looked at
again to see if an appropriate grade was given we ask that you submit
a written re-grade request as follows:
- Along with the original paper version of the assignment you wish
to have re-graded, you must also include a written summary (which can
be neatly handwritten) describing why the work should be looked at
again.
- Submit it to the instructor or to a TA.
- Re-grade requests should be submitted within a week of when the
assignment was returned.
Note that when a written assignment, programming assignment, or test
is re-graded, the entire work will be re-graded. This means that while
it is possible to regain some points, it is also possible to lose
points.
Computing environment
Programming projects will be written in Java and we don't care what programming
environment or system you use, as long as the results compile using Sun's standard
Java
compilers (either version 5 or version 6, both of which include generics).
Grading guidelines for programming assignments
See also the "Programming Guidelines" at left.
Approximate grade breakdown:
- Program correctness, compilation -- 40% of total grade
- Architecture/design, style, commenting, documentation -- 30%
- Writeup/README -- 30%
The reason why "so few" points are allocated towards program correctness
and error-free compilation is because students who have gotten past 143
are smart enough to know how to get their code to compile and run against
the general input (although testing "boundary conditions" is a skill which
you should aim for), so program correctness and error-free
compilation is neither a fair nor discriminating measurement of project
quality.
The two biggest discriminating factors among CSE326 students are program
design (such as style and architecture) and analysis (the README/writeup),
which is why these factors are weighed more heavily. Also, CSE326 is a
course about data structures and the tradeoffs made during algorithm/data
structure design, so putting additional weight on program design, and
questions about program analysis and weighing tradeoffs is more in keeping
with the course goals.
Putting weight on the design and writeup aspects for projects is also
useful because it doesn't unfairly penalize students who "have the right idea" but
couldn't get their code to compile because of a last-minute code change.
Extra Credit:
We will keep track of any extra features you implement (the Above
and Beyond parts). Extra credit scores will be recorded separately from the
basic project grades and will be used to bump up grades at the end
of
the
quarter.