I have looked at my solution. Here is a rough estimate as to the time I think it would take you to complete the similar assignment (these lines of code INCLUDES documentation):
Lines of Code | Class | Comments | Time (HH:MM) |
19 | amida.AmidaException | Already provided for you | 0:00 |
125 | amida.AmidaInterface | Already provided for you | 0:00 |
103 | amida.Edge | Already provided for you | 0:00 |
101 | amida.EdgeTest | Already provided for you | 0:00 |
74 | amida.LaunchGUI | Already provided for you [You do not need to know this material] | 0:00 |
122 | amida.gui.AmidaCanvas | Already provided for you [You do not need to know this material] | 0:00 |
196 | amida.gui.AmidaFrame | Already provided for you [You do not need to know this material] | 0:00 |
28 | EdgeNode | Core classes for this assignment. Listed in estimated order of difficulty | 0:15 |
100 | AmidaTest | Estimated | 1:30 |
223 | LineNode | 3:00 | |
314 | Amida | 5:00 | |
439 | TOTAL lines of code (Estimated) | 8:15 hours | |
369 | TOTAL lines of test cases (Estimated) | 1:30 hour |
The TA/SAs grading your assignments will be using this form to tally your results. This will clearly explain to you what is being expected of you.
Question | Points | Actual | Description | Notes |
1. 24 pts. |
+4 | Proper JavaDoc documentation, for class and individual methods | ||
+2 | Working EdgeNode class | |||
+4 | Ability to insert edge properly within the Line linked list of edges [add method] | |||
+2 | Ability to remove all edges | |||
+2 | Ability to remove specific edge at given vertical position | |||
+4 | Ability to determine if a given vertical position is too close to an existing edge | |||
+2 | Ability return the number of edges for a line emanating to the right | |||
+2 | Ability to return the nth edge on a line | |||
+2 | Ability to return the next edge (vertically) after a given vertical position. | |||
2. 44 pts. |
+4 | Proper JavaDoc documentation, for class and individual methods | ||
+2 | addLine() | |||
+2 | removeLine() | |||
+2 | numLines() | |||
+8 | addEdge() | |||
+3 | tooClose() | |||
+3 | getEdge() | |||
+3 | numEdges() | |||
+4 | removeEdge() | |||
+3 | removeAll() | |||
+10 | exitLine() | |||
3. 32 pts. |
+4 | Proper JavaDoc documentation, for class and individual methods. Yes, I know this is a JUnit test case, but I have been remiss in documenting my test cases -- NO LONGER! | ||
+5 | test cases for addLine, removeLine, numLines | |||
+8 | test cases for addEdge, getEdge, numEdges | |||
+3 | test cases for removeAll | |||
+4 | test cases for removeEdge | |||
+8 | test case for exitLine | |||
TOTAL 100 pts. |
I expect this will take you between 10 and 13 hours. |
To start the coding problems in this assignment, take the following steps:
<userName>.hw5
where <userName> is replaced by your CCC id. For example, if I were submitting
this assignment, I would use "heineman.hw5". When
you request to create a package (using the Eclipse wizard).
© 2006 George T. Heineman