Solved by: AllAcademicHelp.com
COIT11134 Object Oriented Programming (T2 2018)
Assignment Item 2 – Object-Oriented Programming
Due date: Week 11 Friday (28-Sep-2018) 11:45 PM AEST ASSESSMENT
Develop a Java GUI application using more than one Java classes
Read and/or write from/to text files
Use search algorithms and/or sort algorithms
Use ArrayList or LinkedList or any other dynamic data structure
Assignment Task (Version 1.0 last updated on 27/06/2018)
ABC College offers short courses in information technology. They have around 300 students
enrolled with a team of 25 staff members. The management is implementing a trial to see
how viable outsourcing Information technology service operations will work with a centralised
call centre driven model. Students and staff need to make a call to raise any
software/hardware technology requests. This system keeps track of the requests only for the
current day and this information can be delegated to a local technician to handle each
Develop a java GUI application using swing components to implement the above
The functional requirements for the proposed system are:
1. Book job requests.
2. Edit job requests.
3. View requests ( sort/search/save to file options)
Below are the itemised prices for each request. The staff requests are expensive because
they are more time consuming and might deal with an entire course.
Request Type Student Staff
1 Software $16.99 $34.99
2 Hardware $29.99 $49.99
Example of valid ids’ S1234,S0015 T3402,T4123
Page 2 of 6
Uml class collaboration diagram
BookingFrame Swing Components Events
JFrame, JPanel formWindowActivated
Inputs :RequestNumber (Autofill) JTextField
Inputs :RequestId JTextField
Inputs :RequestType JCheckBox
Outputs : JLabel
Operations: Book, Edit, Exit JButton Click Events
EditFrame Swing Components Events
JFrame, JPanel, ButtonGroup
Inputs: RequestNumber (Autofill) JComboBox, Change Event
Inputs: RequestType JCheckBox
Inputs: RequestStatus JRadioButton
Outputs: JLabel, JTextArea
Operations:Update, Delete , Cancel, Exit JButton Click Events
ViewFrame Swing Components Events
JFrame, JPanel, ButtonGroup,
Outputs: JLabel, JTextArea
Operations: Fetch,Sort,Save,Total Exit JButton Click Events
Every New Request will be either of a StudentRequest or a StaffRequest with default values
for requestNumber set to the autofilled number, requestStatus set to true (open), openDate
set to current date, closeDate set to null, requestType is set to a number[1-3] and charge set
to 0.Charge should be computed only when requestStatus is set to false(closed).
Page 3 of 6
Uml state diagram showing flow control
JFrames should be used and can be designed graphically (drag and drop) or manually.
Bonus marks given if design is done manually using layout managers, since more effort and
learning is involved. (See marking guide)
Booking Frame sketch
When this frame is loaded and becomes visible the request number should be auto filled.
Validations for the Booking remain the same as in Assignment 1. (No marks awarded
When the Book Button is clicked:
A new instance of the relevant request must be added to the list. Request Number should be
auto filled with auto increment and should not be editable. Edit and View buttons should be
disabled if the list size is zero.
When the Edit Button is clicked a new frame should be opened.
Page 4 of 6
When the View Button is clicked a new frame should be opened.
No need to check for unique request number when adding to the list. The auto increment
feature should avoid this problem to a large extent.
Date format example below.
SimpleDateFormat DATE_FORMAT = new SimpleDateFormat(“dd-MM-yy:HH:mm”);
System.out.printf(“%s”, DATE_FORMAT.format(new Date()));
Edit Frame sketch
When this frame is loaded and becomes visible. The dropdown box must be populated with
request numbers from the list and the first number should be auto selected. All controls
should reflect changes to the request Number changes from the combo box.
When the Update Button is clicked:
Request Status if open, the close date should be null and the charge should be set to 0.0
Request Status if closed, the close date should be auto filled with current date and charge
should be calculated and set based on the request type. All these details must be shown in
the text area.
When the Delete Button is clicked:
The current selected item in the dropdown box must be removed from the list. The contents
of the drop down box should be updated. currentIndex instance variable can be used to keep
track of the current selected item from the combo box.
When the Exit Button is clicked:
The Edit frame should be disposed and Booking frame should be made visible.
Page 5 of 6
View Frame sketch
When this frame is loaded and becomes visible. The View Frame should open with text area
empty and with default selections as shown above.
When the FetchList Button is clicked:
The list items should be shown in the text area by All Requests (default) or Student Requests
or Staff Requests. Sort choices selection can be ignored here.
When the sort Button is clicked:
The items in the list are already in sorted order by request number due to auto increment.
This order will be lost when the user sorts by status and can be restored with this option.
Sort can be done on ascending order of Request Number (default) or on Request Status
using any sort algorithm (Selection/Insertion/Bubble). (No java inbuilt sort methods allowed).
When the saveToFile Button is clicked:
The contents of the list should be written to a text file named “SaveRequests.txt” in a simple
format as below. (Fields separated by a single space or a tab). Example below.
1000 S12345 closed software 22/06/2018 23/06/2018 16.99
1001 T12345 open software+hardware 18/05/2018 null 0.0
When the TotalCharge Button is clicked:
The text area should display all the closed requests along with the total charge.
When the Exit Button is clicked:
The View Frame should be disposed and Booking frame should be made visible.
What if my code is similar to other student?
All students will have the same shell (class names and method signatures) provided in
the class diagram. Your swing control names, frame layout, comments and code under
each method/listener will be different.
Page 6 of 6
The assignment must be submitted in the following form:
A zip file containing all the Java source code files. If done using NetBeans, a
zip of the entire project folder.
Report.docx (a word file containing screen shots showing various inputs, error
messages and outputs from your application program when it is run).
Assignment 2- Marking criteria
The post COIT11134 Object Oriented Programming appeared first on Essay Writing.
READY TO PLACE AN ORDER