Program 4 Grading Guide
** Print out this document, fill in the top section and include this with your homework submission. **

Name

____________________________

ID __________________

Partner 

____________________________

ID __________________

Grader 

____________________________

 

Grade (correctness / style)  _______ / _______

Section Number

___________

 

Section Day:     Mon       Tues
Section Time:     10:10       1:25       2:30       3:35
Section Instructor:  ______________________

The following lists items necessary for a correct assignment. Items you missed have been crossed out on this sheet, and the item code has been written in your program at the appropriate place.

Correctness
c11 Printouts of all classes are included
c12 Test data adequately tests different voting cases

c13 Textual printout demonstrating program output of test data provided

Process
c21 Reads in input correctly
c22 Keeps on processing until there is a majority
c23 Deals with degenerate input data (cases such as a vote that does not vote for all candidates)
c24 Counts the highest preference vote for each voter for each candidate
c25 Eliminates the candidate from all ballots with the fewest highest preference votes
c26 Selects an arbitrary candidate if there is a tie for the lowest number of votes
c27 Discards or ignores a ballot if all choices are eliminated
c28 Outputs the correct winner of the election
c29 Miscellaneous

Organization and Style
s11 Assignment included with name(s), ID(s), and section info
s12 Program and output stapled together, pages separated, perforated edges removed from printout.
s13 Printouts are legible (e.g. nothing relevant cut off)
s14 Printouts of textual output and screen snapshot
s15 Appearance of program is easy to read (e.g. not cluttered or confusing, code indented well)
s16 Miscellaneous

Style
s21 Solution is not unnecessarily complicated.
s22 Commented appropriately
s23 Miscellaneous

OOP Style. Only if OO solution.

s31 Helper methods are used where appropriate to avoid redundancy
s32 All new fields and helper methods are private
s33 Generally good  OOP style followed (i.e. no irrelevant methods, classes, no unnecessary fields)
s34 Miscellaneous