HW5 Advice

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

 

HW5 Grading Sheet (TO BE FILLED IN)

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.  

HW5 Guidelines

To start the coding problems in this assignment, take the following steps:

  1. In eclipse, first create a project named "cs2102homeworks" (Just a suggestion). For all Java classes that you develop for your assignment, they MUST belong to the package:

        <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).
     

  2. Copy the 'amida' project which is found in the Examples class directory into your project cs2102homeworks. By doing so, you make it easier to code the rest of the assignment.
     
  3. Create a class <userName>.hw5.Amida which implements amida.AmidaInterface. See this HW5 skeleton videofor how to get started.
     
  4. You must turn-in classes named EdgeNode, LineNode, Amida. I only expect to see a JUnit test class called AmidaTest for the Amida class.
     
  5. IT IS ESSENTIAL THAT YOU FOLLOW THESE NAMING GUIDELINES BECAUSE THE TAs ARE GOING TO HAVE TO EXECUTE/GRADE/READ 90 ASSIGNMENTS, AND THIS IS THE ONLY WAY TO AUTOMATE THE PROCESS.
     
  6. To submit hw5, first export all files in package "<userName>.hw5" to a zip file. To do this, right click on package "hw5", choose "export...", and in the pop-up window, select "zip file" as the export destination. Name this zip file as "USERNAME-hw5.zip".

    You can verify that your USERNAME-hw5.zip file is properly formatted by opening up the .zip file within WinZip or any program that reads that format. You should see within the .zip file all the Java source files that you created.
     
  7. Use the online turnin system to upload your files for you and your programming partner.

Notes

  1. Points assigned.
  2. Turnin framework done.

© 2006 George T. Heineman