Create the gui components using code

Assignment Help JAVA Programming
Reference no: EM131483818

Assessment Task

In this assignment, you are required to write a Java Application that uses an interactive Graphical User Interface (GUI) based on the JFrame class using SWING GUI components. You will also be designing and implementing the software solution using appropriate data structures and application of classes, inheritance, polymorphism, and exception handling. The case study for developing a solution is given below.

Year 11 and 12 students study subjects generally known as Authority subjects or Authority registered subjects. There are many assessments for these subjects in different formats and the grade of these assessments are summative contributing to a student's final result. Entrance to further studies are based on this result and therefore, grades of assessments are critically monitored by students, and their parents. Your task is to develop a Java Application for the parents and their year 11/12 kids to monitor academic performance easily. The java application should allow the user to enter student details, and assessments for each subject. Once the assessment results are available the user should be able to set the grade for the assessment including explanatory notes. User should be able to view the subjects enrolled, all assessments for a chosen subject, and all marked assignments with their grades.

A. Graphical User Interface

The application should contain a GUI as shown below. The GUI components should consist of the following panels.
1. A top panel that contains two (2) Text Fields, three Combo Boxes (drop down list), five Labels.
2. A middle panel that contains a Text area to display the Assessment list for a subject or assessment details for a chosen assessment.
3. A bottom panel that contains seven Buttons which are "Create Student", "Load Assessments", "Display Assessments", "Set Grade", "Display Grade" and "Quit".

The functions of the seven buttons are described below.

1. Create Student
Initially the ‘Create Student' button remains disabled. The user enters the Student Name and Year Level using the fields on the GUI. This creates a student object. Once the student object is created three core subjects of English, Mathematics B, and Biology, and the chosen elective subjects of, Business and Communication Technologies, and Religion and Ethics are added to the student object. This is done to simplify the process of going through adding each subject.

2. Load Assessments
Initially the ‘Load Assessments' Button remains disabled as shown in Figure 1. This will be enabled after the ‘Create Student' button is clicked creating a student object. The ‘Load Assessments' Button can be used to read the data file which contains the Assessment List for all the subjects. After loading the file, the loaded Assessment details are added to the corresponding subjects. The first field in each assessment item in the file is the subject name and this should be used to correctly add the assessments to the corresponding subjects. The ‘Load Assessments' Button should also populate the Combo Boxes for Subjects, Assessments, and Achievements with corresponding set of values.

Table 1 Example Assessment Details

Description

Value

Subject

English

Assessment Id

11.1

type

Multimedia presentation

topic

interior monologue 3-4 mins Australian Identity

format

speaking

Due date

Wed 9 - Wed 16 March 2017

Note: Use the given data file named COIT20256Ass1Data.csv available in the Unit website and it contains the set of data required.

3. Display Assessments
This should display all the assessment details of a chosen subject in the Text Area as shown in Figure 4. The last value ‘false' indicates the assessment item is not yet graded. You can use ‘not graded' instead of false which may be more meaningful.

4. Set Grade
Clicking on the "Set Grade" button allows the user to enter the Achievements for a chosen Assessment Item. The grading contains levels of achievements, knowledge, and skill. These values are given in the following Table 2. Once the user selects the achievements level using the Combo Box, corresponding levels of knowledge and skill should be added.

5. Display Grade
This can be sued to display the grades of various assessments set already in the TextArea as shown in Figure 5.

6. Clear Display
User clicks this button to clear the TextArea, TextFields and set the ComboBoxes to the default value.

7. Exit
This should allow the user to quit the application.

B. Data Structures

The relationships between classes is shown in Figure 6.

You can use the classes given below as a guideline for your design.

1. Student Class
This is to store the student details of name, year level, and subjects enrolled. A student class can have an ArrayList of Subjects. Use String data type for name and year level.
2. Subject class
The purpose of this class is to store the subject name, and the list of Assessments for that subject. Use String data type for subject name, and an ArrayList for Assessments.
3. Assessment
Include appropriate fields to store:
Assessment Id, Assessment type, topic, format, dueDate and graded which takes a Boolean value to indicate it is graded or not;
4. Marked Assessment
This class extends the Assessment class. This class should have a member fields to store the grading values once the assessment is graded using the Set Grade Button. These values are given in Table 2.

5. GUI Components class
a) This class should have the GUI components listed above.
b) It should have the methods to set up the GUI components and the event handling methods.
c) This class should have a method to read data from the file and load data structures appropriately.
d) This also contains the main method.
8. Software Tools for Building the Application

You can build your application using the TextPad Editor or NetBeans. It is highly recommended that you create the GUI components using code rather than 'designer' and 'click and drag' of the NetBeans. This creates code which is not maintainable. Remember this is a good prototyping tool, but not recommended for coding.

Note: Commence with one class at a time, test it and then incrementally add the next.

Attachment:- Ass Data.csv

Attachment:- AssignOneSpec.rar

Reference no: EM131483818

Questions Cloud

Ticketing system for a very simple airline : Your employer has determined a market for a simple airline ticketing system for a very simple airline (Tree Top Airways - TTA).
Derive the dual problem and interpret each component : A pure monopolist on two distinct and separated final commodity markets faces prices p1 = c1 - D1x1 and p2 = c2 - D2x2, respectively, where Di are asymmetric.
Whatever is done in excel you have to do it in python : Whatever is done in excel you have to do it in python. Like you have to categorize the tweets related to app and other. It should be done by using pandas
Third-party data center hosting vendors : Each corporate facility is located near a co-location data center, where production systems are located and managed by third-party data center hosting vendors.
Create the gui components using code : Initially the ‘Create Student' button remains disabled. The user enters the Student Name and Year Level using the fields on the GUI. This creates a student object.
State the corresponding programming problem explicitly : Within the context of monopolistic and monopsonistic behavior, indicate what type of monopolist and monopsonist is represented by the following structures.
Discuss some time management challenges that you seen : Discuss some time management challenges you seem to face on a regular basis. List possible solutions, and/or ask your peers .
Explain the notion of risk premium : What are the assumptions that allow the formulation of risk analysis about output price and input quantities as a quadratic programming model?
How to obtain a measure of the risk aversion coefficient : Consider the quadratic programming formulation of output price risk. Discuss how to obtain a measure of the risk aversion coefficient.

Reviews

len1483818

5/4/2017 4:42:14 AM

let me know if you guys can do it on time other wise i will quote with someone else thanks You should submit one zip file containing the following files using the Moodle online submission system. (Note: the file names/class names could be changed to meaningful names.) • Student.java – Source code for the Student class as given above • Subject.java – Source code for the Subject class • Assessment.java – Source code for the Assessment class • MarkedAssessment.java • StudyMonitorInterface.java – Source code for the GUI components, other required methods as outlined above and the main method. • Report.docx – File containing UML class diagrams for the classes, Student, Subject, Assessment, and MarkedAssessment. Include a test plan providing test cases, test data, expected result and description of actual result. Provide few screen shots to demonstrate evidence of your testing

Write a Review

JAVA Programming Questions & Answers

  Write program to keep track of employees pays per quarter

Write a program to keep track of their employees' pays per each quarter. There are two types of employees: Managers and SalesReps.

  What are some resources to cover mental health issues

What are some resources to cover mental health issues in the criminal justice system? Provide a timeline for the resources that will cover the issue.

  Java program simulate a network

Java program simulate a network

  What are the merits and demerits of the use of mainframes

write a 200- to 300-word short-answer response to the followingwhat are the advantages and disadvantages of the use of

  Write a java program to read a number up to fifteen digits

Write a java program and pseudocode to read a number up to 15 digits long or a date (dd/mm/yyyy). The program should distinguish numbers from input date, and prints them in alphabetic spelling form.

  Recursion in binary search trees

Assignment is intended to give you practice writing recursive code that traverses a common computer programing structure: a binary search tree.

  Prepare demo program that implements all of above method

Specify, design, and implement a class that can be used in a program that simulates a combination lock.

  Task 1 create a new project in eclipsecreate a package

task 1 create a new project in eclipse.create a package called lsquopeople within this project. download the start up

  Complete the polyhedron hierarchy

Program takes three types of Polyhedra from an input file and constructs the appropriate objects - you will be completing the Polyhedron Hierarchy-specifically the Composite class.

  Write a program to find solution tocryparithmetic puzzle

Write a program (Crypta.java) that finds a solution to the cryparithmetic puzzle: TOO + TOO + TOO+ TOO = GOOD

  Create an abstract division class with fields

Create an abstract Division class with fields for a company's division name and account number, and an abstract display() method. Use a constructor in the superclass that requires values for both fields.

  Implement function boolean containsconsecutiveleftrededges

Implement the following functions- void insert(), boolean containsRightRedEdge(), boolean containsConsecutiveLeftRedEdges(), int countBlackEdgesOnLeftmostPath() and boolean sameBlackEdgesCountOnAllPaths(int count).

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd