Assignment title: Information


COIT11134 Object Oriented Programming (T2 2016) Assignment 2 Due date: Friday of Week 10 (23 Sep 2016) 11:45 pm AEST Weighting: 20% Length: N/A Objectives • Develop a Java GUI application using layout managers • Develop an application that uses two or more classes • Read and/or write from/to text files • Use search algorithms and/or sort algorithms • Use ArrayList or LinkedList or any other data structure General In your assignment 2, you can continue to develop the Java GUI application that you have created in your assignment 1. If you would like to modify the codes that you have submitted in your assignment 1, you are free to do so. You can adopt any layout pattern as suitable to the requirements of the application in your assignment 2. Assignment Task specification CQC has decided to increase the charges for Stencil work to $30/ square meter of surface area. They have also decided to undertake concrete cylindrical foundation work too. For a cylindrical column foundation, the diameter and depth measurement are required for calculating the volume of the concrete required. In order to include these additional changes in the Java GUI application, you may need to do any or all of the following: • develop additional Java classes • extend the existing Java classes that you have developed for your assignment 1 • implement newly created interface(s) • implement generic methods and or generic classes CQC also wants to view the income generated by different employees. Hence, you need to store the details of all the concrete works performed in a file and also to provide appropriate searching facilities to display the details of concrete work(s) that have been performed by the selected (searched) employee. Hence the software application that you will develop in assignment 2 should perform the following: 1. When the application is started, it should read all the details of the completed concrete works from the existing text file ("concrete.txt") and display the latest-completed-concrete work. 2. The application should provide necessary controls to search and display the details of concrete works performed by a given/selected employee (details to be obtained/ selected from/by the user). If the search criterion is not met then an appropriate message has to be displayed. 3. The application should provide appropriate controls to obtain the data for a new concrete work; perform error checking and display the details of new concrete work. You are allowed to copy the relevant codes from your assignment 1 and use them for this purpose. 4. The application should have the facility to append/save the details of newly performed concrete work in the same text file ("concrete.txt"). You need additional controls that are required and to develop your own layout for the assignment 2. Please note that you can create the above mentioned text file through your application program for storing the concrete work data and then that file can be used by your application to read its contents during its subsequent run. Note: If you need to make suitable assumptions for the development of the above Java application, please provide them in the form of comments in the test driver file. Assignment submission 1. You have to submit your assignment using the Moodle online submission system. 2. You have to submit a zip file containing the text file "concrete.txt" and all java source code files including the test driver file (any additional library/jar files used if any).   Assignment 2 Marking criteria Item Description Maximum marks 1 GUI displays (2) details of the latest-completed contract work after reading (2) from the file "concrete.txt" without any compilation/ run time errors 2 2 Allows to search (1) and displays the details of concrete work(s) performed by the given contractor (1) 2 3 Displays appropriate message when the above search criterion is not met 1 4 GUI displays the controls for new concrete work data entry 2 5 GUI displays the controls for selection of type of concrete work (column, floor and stencil) performed in the new contract work 2 6 Calculates total charges correctly for the new concrete work 2 7 Performs input validation (1) and displays all the details of a new concrete work(2) 3 8 Displays appropriate message when there is an input error 2 9 Saves/appends the details of new contract work into the file "concrete.txt" 2 10 Quality of code (additional classes, interfaces, generic methods/generic classes, best programming practice- comments, indentation, naming and readability) 2 Less late penalty (5% per calendar day) Less Plagiarism Total 20 Note: If the program does not compile / run, partial marks may be given appropriately based on the submitted-source codes.