100 "CS 367, Spring 2011 Programming Assignment 2" "P2" "gradeReport.html" 0 0 late "Late Days" "See grading notes for instructions" 1 10 late1 "1 day late penalty" 1 20 late2 "2 days late penalty" 1 30 late3 "3 days late penalty" 0 0 handin "Hand In" 1 1 xtra "Extra file(s) such as .class file(s) (in future, send email to Beck to have them removed)" 1 1 readme "README file not turned in for one or both partners" 0 51 de "MessageSequenceEditor class" "Deduct all points at this level if class missing" 1 40 dex1 "Does not compile due to major or many minor errors" 1 10 dex2 "Does not compile due to minor error(s), which we fixed (-2/error)" 1 3 degen1 "Format of output incorrect" "This covers the command prompt and non-message displays like 'no messages'. Take into consideration issues of spelling, capitalization, and spaces. Deduct 1 pt if command prompt is incorrect; deduct 1 pt if non-message displays like 'no messages' are incorrect in 3 or fewer locations; deduct 2 pts if non-message displays like 'no messages' are incorrect in 4 or more locations." 1 4 decla "Command-line arguments" 2 4 decla1 "Doesn't use command-line arguments; always does console input" 2 4 decla2 "Doesn't use command-line arguments; always does file input" 2 1 decla3 "Doesn't give message if more than one command-line argument is given" 2 1 decla4 "Doesn't give message if input file does not exist" "Either 'Problem with input file!' or 'problem with input file' is ok" 2 2 decla5 "Name of input file hard-coded" 2 1 decla6 "User input not echoed when reading from input file" 1 5 deval "Validate input" 2 1 deval2 "Doesn't recognize invalid character command" "Use this for things like 'k' or '$', not for capitalization issue" 2 3 deval4 "Validation of extra info missing for one or more commands" "For the s, l, a, f, r, i, and j commands deduct if program doesn't recognize missing extra info as invalid. Deduct 1 pt per command up to a max of 3" 2 2 deval5 "Validation of j command incorrect" "For example, doesn't allow 0 or crashes if non-integer is given" 2 1 deval6 "Doesn't display 'invalid command'" 1 5 decc "Current context" 2 1 decc1 "Incorrect if only one item in message sequence" 2 1 decc2 "Incorrect if two items in message sequence" 2 2 decc3 "Incorrect if three or more items in message sequence" 2 1 decc4 "Format of current context incorrect" "E.g., the way the current message is indicated is not correct, no indentation" 2 1 decc5 "To avoid duplicating code, code to display current context should be made into a method" 1 2 des "Operation: s filename - Provided code modified and no longer works correctly" 1 2 del "Operation: l filename - Provided code modified and no longer works correctly" 1 2 ded "Operation: d - Provided code modified and no longer works correctly" 1 2 den "Operation: n" 2 2 denx "Not implemented" 2 1 den1 "Doesn't display 'no messages' if message sequence is empty" 2 1 den2 "Doesn't display current context" 2 1 den3 "Incorrect" "Only deduct if incorrect LinkedCircularSequence code is used, not for the underlying correctness of the LinkedCircularSequence" 1 2 dep "Operation: p" 2 2 depx "Not implemented" 2 1 dep1 "Doesn't display 'no messages' if message sequence is empty" 2 1 dep2 "Doesn't display current context" 2 1 dep3 "Incorrect" "Only deduct if incorrect LinkedCircularSequence code is used, not for the underlying correctness of the LinkedCircularSequence" 1 3 dej "Operation: j N" 2 3 dejx "Not implemented" 2 1 dej1 "Doesn't display 'no messages' if message sequence is empty" 2 1 dej2 "Doesn't display current context" 2 1 dej3 "Doesn't jump forward correctly" "Only deduct if incorrect LinkedCircularSequence code is used, not for the underlying correctness of the LinkedCircularSequence" 2 1 dej3 "Doesn't jump backward correctly" "Only deduct if incorrect LinkedCircularSequence code is used, not for the underlying correctness of the LinkedCircularSequence" 1 3 dea "Operation: a msg" 2 3 deax "Not implemented" 2 1 dea1 "Doesn't display current context" 2 2 dea2 "Incorrect" "Only deduct if incorrect LinkedCircularSequence code is used, not for the underlying correctness of the LinkedCircularSequence" 1 2 dei "Operation: i msg" 2 2 deix "Not implemented" 2 1 dei1 "Doesn't display current context" 2 1 dei2 "Incorrect" "Only deduct if incorrect LinkedCircularSequence code is used, not for the underlying correctness of the LinkedCircularSequence" 1 3 dec "Operation: c" 2 3 decx "Not implemented" 2 1 dec1 "Doesn't display 'no messages' if message sequence is empty" 2 1 dec2 "Doesn't replace current contents of message buffer" "E.g., appends" 2 1 dec3 "Changes message sequence" 2 1 dec4 "Displays information if message sequence if not empty" "should not display anything if sequence is not emtpy" 1 4 dev "Operation: v" 2 4 devx "Not implemented" 2 1 dev1 "Doesn't display 'nothing to paste' if message buffer is empty" 2 1 dev2 "Doesn't insert new message before the current message" 2 1 dev3 "Doesn't display current context" 2 1 dev4 "Doesn't allow contents of message buffer to be pasted more than once" "E.g., empties message buffer after pasting" 2 2 dev5 "Incorrect" "Deduct up to 2 points for errors not covered above" 1 4 dex "Operation: x" 2 4 dexx "Not implemented" 2 1 dex1 "Doesn't display 'no messages' if message sequence is empty" 2 1 dec6 "Doesn't replace current contents of message buffer" "E.g., appends" 2 1 dex2 "Doesn't display current context" "Current context should be displayed only if message sequence does not become empty as a result of removing" 2 1 dex3 "Doesn't make the message after the removed message the current message" 2 1 dex4 "Doesn't display 'no messages' if deleting results in an empty sequence" 2 1 dex5 "Incorrect" "Only deduct if incorrect LinkedCircularSequence code is used, not for the underlying correctness of the LinkedCircularSequence" 1 5 def "Operation: f string" 2 5 defx "Not implemented" 2 1 def1 "Doesn't display 'no messages' if message sequence is empty" 2 1 def2 "Doesn't display current context" 2 1 def3 "Doesn't display 'not found' if message is not found" 2 1 def4 "Doesn't start searching with message after the current message" "The current message should be the very last message checked" 2 2 def5 "Incorrect" "Only deduct up to 2 pts if incorrect LinkedCircularSequence code is used (for example, current doesn not changed correctly if message is found), not for the underlying correctness of the LinkedCircularSequence" 1 3 der "Operation: r msg" 2 3 derx "Not implemented" 2 1 der1 "Doesn't display 'no messages' if message sequence is empty" 2 1 der2 "Doesn't display current context" 2 2 der3 "Incorrect" "Only deduct up to 2 pts if incorrect LinkedCircularSequence code is used (for example, current gets changed as a result of this command), not for the underlying correctness of the LinkedCircularSequence" 0 26 ml "LinkedCircularSequence class" "Deduct all points at this level if class missing" 1 20 mlx1 "Does not compile due to major or many minor errors" 1 6 mlx2 "Does not compile due to minor error(s), which we fixed (-2/error)" 1 2 mlinter "Doesn't implement CircularSequenceADT interface" 1 4 mlgen "General" 2 2 mlgen1 "Public method(s) added to LinkedCircularSequence class" "Deduct if they end up using this method in their MessageSequenceEditor class" 2 1 mlgen2 "Local variables made into data members" "For example, have an Iterator data member or DblListnode data member that is just a temporary variable" 2 1 mlgen3 "Not generic" "E.g., specialized to contain just String" 1 1 mlctor "Constructor missing/incorrect" 1 3 mlgetC "getCurrent" 2 2 mlgetCx "Not implemented" 2 1 mlgetC1 "Doesn't throw EmptySequenceException if sequence is empty" 2 2 mlgetC2 "Returns the list node instead of the list node's data" 1 3 mladdB "insert" 2 3 mladdBx "Not implemented" 2 2 mladdB1 "Item added incorrectly" "For example, the pointers get messed up or the item is added after the current item; don't deduct here if only the current pointer is incorrect (deduct below)" 2 1 mladdB2 "New item did not become the current item" 1 1 mlempty "isEmpty missing/incorrect" 1 1 mliter "iterator missing / incorrect" 1 2 mlnext "next" 2 2 mlnextx "Not implemented" 2 1 mlnext1 "Doesn't throw EmptySequenceException if sequence is empty" 2 1 mlnext2 "Incorrect" 1 2 mlprev "previous missing/incorrect" 2 2 mlprevx "Not implemented" 2 1 mlprev1 "Doesn't throw EmptySequenceException if sequence is empty" 2 1 mlprev2 "Incorrect" 1 4 mlremC "removeCurrent" 2 4 mlremCx "Not implemented" 2 1 mlremC1 "Doesn't throw EmptyLoopException if sequence is empty" 2 2 mlremC2 "Item removed incorrectly" "For example, the pointers get messed up; don't deduct here if only the current pointer is incorrect (deduct below)" 2 1 mlremC3 "Item after removed item did not become the current item" 2 1 mlremC4 "Returns list node instead of list node's data" 1 2 mlsize "size" 2 2 mlsize1 "Not implemented" 2 2 mlsize2 "Size not correctly updated when items are added/removed" "Deduct 1 pt if not updated correctly in removeCurrent; deduct deduct 1 pt if not updated correctly in insert" 0 3 ele "EmptySequenceException class" 1 3 elex1 "Not submitted / doesn't compile" 1 1 ele1 "Not an unchecked exception" "Must extend RuntimeException (or some subclass of RuntimeException)" 1 2 ele2 "Incorrect" "Use this for errors that do not fall under the previous category. Note: body of class can be { }" 0 10 mli "LinkedCircularSequenceIterator class" 1 10 mlix "Not submitted / doesn't complile" 1 2 mligen "Doesn't implement Iterator interface" 1 2 mlictor "Constructor" "OK if public" 2 2 mlictorx "Not implemented" 2 1 mlictori "Incorrect" 1 2 mlihasN "hasNext" 2 2 mlihasNx "Not implemented" 2 1 mlihasN1 "Doesn't correctly identify when beginning of list is reached" 1 3 mlinext "next" 2 3 mlinextx "Not implemented" 2 1 mlinext1 "Doesn't throw NoSuchElementException if there are no more elements" 2 2 mlinext2 "Returns a list node instead of the list node's data" 1 1 mlirem "remove" 2 1 mliremx "Missing" 2 1 mlirem1 "Doesn't throw UnsupportedOperationException" 0 10 style_doc "Style and Documentation" "see grading notes for comments to add" 1 10 docx "No documentation" 1 3 file1 "File name not the same as the class name (-1 per file)" 1 3 file2 "File name is incorrect (-1 per file)" 1 1 style1 "Bad Style: line up braces" 1 1 style2 "Bad Style: use vertical whitespace" 1 1 style3 "Bad Style: use horizontal whitespace" 1 1 style4 "Bad Style: indent to show level of nesting" 1 1 style5 "Bad Style: lines must not exceed 80 columns" "Don't deduct if 5 or fewer lines exceed 80 columns; in that case add the comment 'Warning: some lines are longer than 80 characters'" 1 1 style6 "Bad Style: follow naming conventions" 1 1 style7 "Bad Style: use descriptive names" 1 2 style8 "Bad Style: data members should be private" 1 1 comment1 "Bad Commenting: each file requires a header comment" 1 1 comment2 "Bad Commenting: each class/method requires javadoc-style comments" 1 1 comment3 "Bad Commenting: use comments in method bodies"