CSE logo University of Washington Department of Computer Science & Engineering
 CSE 326: Data Structures, Summer 2003
  CSE Home   About Us    Search    Contact Info 

 Main page
Administrative
 Knowledge Pre and Postconditions
 Using Course Email
 Course Announcements Archive
 Course Discussion Archive
 Academic Accomodations
 Anonymous Feedback
Course Content
 Calendar & Lecture Slides
 Quiz Section
 Exam Information
 Assignments
Policies
 Grading
 Programming Guidelines
 Written HW Guidelines
 Collaboration
Computing
 Computing Info
 Turnin Info
    There will be weekly assignments, either written or programming. Expect about 7 assignments total.

All programming assignments must be written in Java. If this causes you undue hardship, please contact the instructor.

Late policy:

  • Written assignments: Due promptly at the beginning of class, late assignments will not be accepted.
  • Programming assignments: Electronic turnin will be due at 11 p.m., followed by hardcopy turnin at the next class or section. Once per quarter you may use your "late day" to buy an extra 24 hours for the electronic turnin, with hardcopy turnin at the following class or section. You must email your TA before the deadline to specify that you will be using your late day.
If you contact the instructor in advance of the deadline, we may show more flexibility given exceptional circumstances.

Course Labs: Sieg 232 and Sieg 329. Labs have NT machines with X servers to access Unix. All projects will be graded on Unix. You may use tools such as J++ on other OSs but make sure you test under Unix.

Your grade will be determined as follows (approximate):

  • Assignments: 45%
  • Midterm: 20%
  • Final: 30%
  • Participation: 5%

    If you find an error in our grading, please bring it to our attention within one week of that item being returned.

    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 students 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 326 students are program design (such as style and architecture) and analysis (the README/writeup), which is why these factors are weighed a little heavily. Also, 326 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 penalize students who "have the right idea" but couldn't get their code to compile because of a last-minute code change.

    Point Allocation

    For each of the above categories, we have the following point allocation:
    • 6 pts -- "Above and Beyond" (this category is for the one or two "superstars" in every class. This category is used so rarely that we can pretty much treat the grading scale as a 5-pt scale)
    • 5 pts -- "Excellent": no errors, hiccups, or conceptual misunderstandings whatsoever.
    • 4 pts -- "Very good": one (or two) minor error(s) or misunderstanding(s). Most grades should fall in this category.
    • 3 pts -- "Good": three or four minor errors or misunderstandings, or perhaps one major misunderstanding.
    • 2 pts -- "Fair": two or three major misunderstandings
    • 1 pt -- "Poor": major misunderstanding of underlying principles, or complete misunderstanding but significant effort.
    • 0 pts -- "Very Poor": Complete misunderstanding of underlying principles, and little to no effort.

  • CSE logo Department of Computer Science & Engineering
    University of Washington
    Box 352350
    Seattle, WA  98195-2350
    (206) 543-1695 voice, (206) 543-2969 FAX
    [comments to cse326-staff@cs.washington.edu]