Documents to be submitted as a zipped file: UML class diagram(s) - created with Violet UML, ArgoUML, or StarUML Java source file(s) with Javadoc inline comments - (Java classes created with eclipse) ECE students, please submit C/C++ source codes if you don't write in Java Supporting files if any (For example, files containing all testing data) Students are required to submit a design, all error free source files with Javadoc Inline comments, and supporting files. Lack of any of the required items will result in a really low credit or no credit 9:03 AM A . All projects will be evaluated based upon the following software development activities. Analysis: Does the software meet the exact specification /customer requirements? Does the software solve the exact problem? Design: Is the design efficient? Code: Are there errors? Are code conventions followed? Does the software use the minimum computer resource (computer memory and processing time)? Is the software reusable? Are comments completely written in Javadoc format? a. Class Javadoc comments must be included before a class header. b. Method Javadoc comments must be included before a method header. C. More inline comments (in either single line format or block format) must be included inside each method body. d. All comments must be completed in correct format such as tags, indentation etc. Debug/Testing: Are there bugs in the software? Documentation: Complete all documentations that are required. Part III: Examples on how to meet project requirements To complete a project, the following steps of a software development cycle should be followed. These steps are not pure linear but overlapped. Analysis-design-code-test/debug-documentation. 1) Read project description to understand all specifications(Analysis). 2) Create a design (an algorithm for method or a UML class diagram for a class) (Design) 3) Create Java programs that are translations of the design. (Code/Implementation) 4) Test and debug, and (test/debug) 5) Complete all required documentation. (Documentation) U 11.35 PM on Saturday Lab work: This lab is a stepping stone to project 01. The ADT Bag is a group of items, much like what you might have with a bag of groceries. The ADT Bag should have the following operations. You should use the same operation names that are shown below. create an empty bag that can hold up to 50 items, put an item at the end of the list of the bag (insert(item)), remove the last item in the bag (removelast()), remove a random item from the bag (removeRandom()), (Note: a random item is an item at a random index.) get the index of the first occurrence of an item from the bag if it is existed (get(item)), get a reference to an item at position index( get(index)), check how many items are in the bag (size()), check to see if the bag is full (isFull(), check to see if the bag is empty( isEmpty(). and completely empty the bag (makeEmpty()) ne of the above mentioned Class comments must be included right above the corresponding class header. Method comments must be included right above the corresponding a method header. All comments must be written in Javadoc format. There will be no credits if comments are not complete, and/or not written in Javadoc format. ADT Bag Test/Debug Note is required to store all testing data in a file. No credit will be given if not. It is required to use decomposition design technique. No credit will be given if not. To test ADT bag design, all operations in the design must be tested. In general, an empty ADT Bag is created, and then, the bag list with items read from a text file, invoke any operations via the list and always display the list after it is changed is not efficient to let min to do all Method main should be very small and should be the only method in the class. I should invoke a method for example, start that is decomposed into more methods for example displaylist) in a separate class. Every method should be designed as a single-minded method. For example, Class ADTHA Test contains method main; class ADT BagUtility is a helper class. Both classes are used for testing purposes puble class bhagtest public static void main Stringit Engltt public class AD Thaouality Creates a bag of items, and change items in the band isplays item publie static void start M ed list - The 1/Till the bag. / Scanner object must be used to read it into I/Itens need to be created before they are put into the 1/Display items in the bag displaylist (list) - Stores items into a bag. paras liet A reference to a bag public statie void r Scanner input- a sed lists add items into the bag and/or its from the bag All operations in ADT Bag design ut besed/tested here - Display it - para la in the bag reference to be public statie void diaplaylist T reased As item type can be designed to representam in the A g ent can be used to the Class comments must be included right above the corresponding class header. Method comments must be included right above the corresponding a method header. All comments must be written in Javadoc format. There will be no credits if comments are not complete, and/or not written in Javadoc format. ADT Bag Test/Debug: Note: It is required to store all testing data in a file. No credit will be given if not. It is required to use decomposition design technique. No credit will be given if not. To test ADT bag design, all operations in the design must be tested. In general, an empty ADT Bag is created, and then, fill the bag list with items read from a text file, invoke any operations via the list, and always display the list after it is changed. It is not efficient to let main to do all. Method main should be very small and should be the only method in the class. It should invoke a method (for example, start) that is decomposed into more methods (for example, filiist, displayList) in a separate class. Every method should be designed as a single-minded method. For example, Class ADTBagTest contains method main; class ADTBagUtility is a helper class. Both classes are used for testing purposes. Documents to be submitted as a zipped file: UML class diagram(s) - created with Violet UML, ArgoUML, or StarUML Java source file(s) with Javadoc inline comments - (Java classes created with eclipse) ECE students, please submit C/C++ source codes if you don't write in Java Supporting files if any (For example, files containing all testing data) Students are required to submit a design, all error free source files with Javadoc Inline comments, and supporting files. Lack of any of the required items will result in a really low credit or no credit 9:03 AM A . All projects will be evaluated based upon the following software development activities. Analysis: Does the software meet the exact specification /customer requirements? Does the software solve the exact problem? Design: Is the design efficient? Code: Are there errors? Are code conventions followed? Does the software use the minimum computer resource (computer memory and processing time)? Is the software reusable? Are comments completely written in Javadoc format? a. Class Javadoc comments must be included before a class header. b. Method Javadoc comments must be included before a method header. C. More inline comments (in either single line format or block format) must be included inside each method body. d. All comments must be completed in correct format such as tags, indentation etc. Debug/Testing: Are there bugs in the software? Documentation: Complete all documentations that are required. Part III: Examples on how to meet project requirements To complete a project, the following steps of a software development cycle should be followed. These steps are not pure linear but overlapped. Analysis-design-code-test/debug-documentation. 1) Read project description to understand all specifications(Analysis). 2) Create a design (an algorithm for method or a UML class diagram for a class) (Design) 3) Create Java programs that are translations of the design. (Code/Implementation) 4) Test and debug, and (test/debug) 5) Complete all required documentation. (Documentation) U 11.35 PM on Saturday Lab work: This lab is a stepping stone to project 01. The ADT Bag is a group of items, much like what you might have with a bag of groceries. The ADT Bag should have the following operations. You should use the same operation names that are shown below. create an empty bag that can hold up to 50 items, put an item at the end of the list of the bag (insert(item)), remove the last item in the bag (removelast()), remove a random item from the bag (removeRandom()), (Note: a random item is an item at a random index.) get the index of the first occurrence of an item from the bag if it is existed (get(item)), get a reference to an item at position index( get(index)), check how many items are in the bag (size()), check to see if the bag is full (isFull(), check to see if the bag is empty( isEmpty(). and completely empty the bag (makeEmpty()) ne of the above mentioned Class comments must be included right above the corresponding class header. Method comments must be included right above the corresponding a method header. All comments must be written in Javadoc format. There will be no credits if comments are not complete, and/or not written in Javadoc format. ADT Bag Test/Debug Note is required to store all testing data in a file. No credit will be given if not. It is required to use decomposition design technique. No credit will be given if not. To test ADT bag design, all operations in the design must be tested. In general, an empty ADT Bag is created, and then, the bag list with items read from a text file, invoke any operations via the list and always display the list after it is changed is not efficient to let min to do all Method main should be very small and should be the only method in the class. I should invoke a method for example, start that is decomposed into more methods for example displaylist) in a separate class. Every method should be designed as a single-minded method. For example, Class ADTHA Test contains method main; class ADT BagUtility is a helper class. Both classes are used for testing purposes puble class bhagtest public static void main Stringit Engltt public class AD Thaouality Creates a bag of items, and change items in the band isplays item publie static void start M ed list - The 1/Till the bag. / Scanner object must be used to read it into I/Itens need to be created before they are put into the 1/Display items in the bag displaylist (list) - Stores items into a bag. paras liet A reference to a bag public statie void r Scanner input- a sed lists add items into the bag and/or its from the bag All operations in ADT Bag design ut besed/tested here - Display it - para la in the bag reference to be public statie void diaplaylist T reased As item type can be designed to representam in the A g ent can be used to the Class comments must be included right above the corresponding class header. Method comments must be included right above the corresponding a method header. All comments must be written in Javadoc format. There will be no credits if comments are not complete, and/or not written in Javadoc format. ADT Bag Test/Debug: Note: It is required to store all testing data in a file. No credit will be given if not. It is required to use decomposition design technique. No credit will be given if not. To test ADT bag design, all operations in the design must be tested. In general, an empty ADT Bag is created, and then, fill the bag list with items read from a text file, invoke any operations via the list, and always display the list after it is changed. It is not efficient to let main to do all. Method main should be very small and should be the only method in the class. It should invoke a method (for example, start) that is decomposed into more methods (for example, filiist, displayList) in a separate class. Every method should be designed as a single-minded method. For example, Class ADTBagTest contains method main; class ADTBagUtility is a helper class. Both classes are used for testing purposes