Task 2 (50 marks) (Grade Processing)
In this part of your assignment you are required to produce a fully functional GUI program in accordance with the specifications mentioned below. The program will be used to determine and display the final mark of students enrolled in the “Programming in Java 2” subject. It will also have the capability to calculate and display the average mark for all students entered into the system.
Part 1 Elements of the GUI :
– An appropriate title appearing on top of the main frame of the GUI (eg. “Programming in Java 2”)
– Five text fields with appropriate labels namely “Student ID”, “Quiz”, “Assignment 1”, “Assignment 2”, and “Final Exam” to take user inputs
– One read-only text area with an appropriate label (“Results”) used to display outputs of the program
– Two buttons (“Student Mark” and “Average Mark”) used to trigger actions for calculations
– Tooltip text display for the buttons, text fields and the text area
– Three panels to be added to the main frame which will contain the other components. For example, the four text fields could be added to a panel placed to the north of the main frame, the results text area could be added to a panel to be placed to the centre of the main frame, and the two buttons could be added to a panel to be placed to the south of the main frame.
Part 2 Functionality:
– For each student, user enters “Student ID”, “Quiz”, “Assignment 1”, “Assignment 2”, and “Final Exam” marks as integers. The mark on each assessment items has to be in between 0 and 100. Input validation needs to be done on each assessment mark to make sure that the mark on each assessment is in between 0 and 100.
– User then presses the “Student Mark” button to calculate the final mark for the student. The weights on Quiz”, “Assignment 1”, “Assignment 2”, and “Final Exam” are 5%, 20%, 25% and 50%, respectively
– The button press triggers an action, which results in the calculation of the final mark in the unit. This mark is displayed in the “Results” text area with a message such as: “Final mark for 01234567: 75” where 01234567 is an 8-digit student ID
– The users of the program are allowed to enter marks for as many students as they choose
– At the end of a session, user clicks the “Average Mark” button which results in the calculation of the average mark for all students entered. This mark is displayed in the “Results” text area with a message such as: “Average mark for Java 2: 82”.
|Items||Full Marks||PS||CR (PS+)||DI (CR+)||HD (DI+)|
|Presentation||10||Very basic presentation (no screen shots are included)||
Report with few screen shots is submitted
|Report with enough screen shots is submitted||Report with enough screen shots is submitted. The discussion on each screen shot is easy to read and understand.|
|Elements of the GUI||15||Program is not running but the source code indicates the correctness||Program is running but not showing the GUI properly||Program is running but not showing all the required components of the GUI properly||Program is running and showing all the required components of the GUI properly|
|Functionality||25||Program is not running but the source code indicates the correctness||Program is running but not working properly||Program is running properly but cannot handle unexpected inputs/events||Program is running properly and not crashing because of unexpected inputs/events|
Following items are to be submitted in the Turnitin (For each task):
- Report: The report (in .doc or .pdf format) should explain how to run your program (1 or 2 page long) and any settings needed to run your program. Enough number of screenshots should be shown in the document. In case if the assignment marker fails to run your program, because of any inconvenience, these screenshots would show how the program worked on your machine/environment.
- Source code and other files: All source codes, exe file and other relevant files must have to be zipped in a folder such that unzipping would keep the file/folder structure unaffected.