Question details

Assignment 1 Insurance Agent App Part 1 and 2
$ 10.00

Assignment 1: Insurance Agent App: Part 1

Due Week 6 and worth 180 points

 

This assignment consists of two (2) sections:

  • A Java program file
  • A screenshot of the driver testing and source code of the implementation

 

Label each file name according to the section of the assignment for which it is written. Put both sections together in a single zip file, and submit the file.

 

It is a common knowledge that most households, for protection against their major perils, take out insurance on their property, automobiles, travel, and so on. Insurance premiums are often paid on a monthly basis. In this assignment, you will build an interactive Java application that will help an insurance agent generate a quote for a household. Assume that the household wants to purchase property insurance, automobile insurance, and travel insurance. The Java application must generate a quote when the agent runs the application.

 

The application must contain four (4) Java classes that are stated and shown in the diagram below.

 

 

 

 

The InsuranceAgentApp class is an abstract class. The PropertyInsurance, AutomobileInsurance, , and TravelInsurance classes inherit from the InsuranceAgentApp abstract class.

 

The specifications of each class are described below. The column on the left shows the class members and the column on the right provides a description of the class members. The ‘S’ designates a static member; the ‘C’ designates a constructor, and the ‘A’ designates an abstract member. The data types of each class members are shown on the left column.

 

 

 

Class Members and Their Properties

Member’s Description

 

 

  • type is the type of insurance (e.g. “Property”).
  • Name is the name of the insured object (e.g. “Home”);  totalPremium is the static quote for all the insurances taken by the household.
  • InsuranceAgentApp(String) is the constructor that takes the type value.
  • three get methods for the three variables.
  • InsuranceAgentApp() is the empty constructor; setInsuredObjectName(), setRiskAmount(), and display() are abstract methods.              

 

 

  • riskAmount is the value of the Property being insured.
  • the static RATE is the % used to calculates the annual premium.
  • The constructor PropertyInsurance(String) takes a string which indicates the insurance type (e.g. “Property”).
  • the three get methods return values of the three variables.
  • setInsuredObjectName(), setRiskAmount(), and display() are implementations of the abstract methods.              

 

 

  • riskAmount is the value of the Automobile being insured.
  • the static RATE is the % used to calculates the annual premium.
  • The constructor AutomobileInsurance(String) takes a string which indicates the insurance type (e.g. “Automobile”).
  • the three get methods return values of the three variables.
  • setInsuredObjectName(), setRiskAmount(), and display() are implementations of the abstract methods.              

 

  • riskAmount is the value of the flight being insured; the static RATE is the % used to calculates the annual premium.
  • The constructor TravelInsurance(String) takes a string which indicates the insurance type (e.g. “Travel”).
  • the three get methods return values of the three variables.
  • setInsuredObjectName(), setRiskAmount(), and display() are implementations of the abstract methods.              
         

 

The RATEs used to calculate the premiums are:

PropertyInsurance

AutomobileInsurance

TravelInsurance

0.25%

0.75%

0.73%

 

Section 1: Java Program File

Create an interactive Java application for the insurance agent in order to generate a quote for a household. According to your design, the program must:

  • Implement all the four (4) Java classes described with the correct inheritance of abstract classes.
  • Calculate the premium and multiply the value of the object being insured by the corresponding RATE. Note: See the RATE tables above.
  • Get a quote and add all the premiums for all the objects being insured.
  • Include a driver problem to test the implementation in which it:
    • Uses the System.out.*and System.in.* methods for all the input / output.
    • Includes an object of each insurance type. Prompts the user to enter the type and riskAmount (or value of the object being insured).
    • Displays the values in each of the objects created using the display() method.
    • Displays the quote (totalPremium in the abstract InsuranceAgentApp class).

 

Section 2: Screenshot of the Driver Testing and Source Code of the Implementation

Create a screenshot of the driver testing and include a copy of source code of the implementation.

  • Submit a screenshot of the driver testing of the implementation of your Java program. Note: Go to http://www.take-a-screenshot.org/ if you need a tutorial on taking a screenshot.
  • Submit a copy of the source code of the implementation.

 

Section 1 and Section 2 will be graded based on the following:

  1. The program must compile, execute, produce correct results, and meet all of the specifications stated in Section 1.

Additionally you must:

  1. Organize the code for user readability.
  2. Organize the code for reusability.
  3. Organize the code for efficiency.
  4. Provide documentation with embedded comments for reader understanding.

 

 

Assignment 2: Insurance Agent App: Part 2

Due Week 10 and worth 180 points

 

This assignment consists of two (2) sections:

  • Java program file(s)
  • A screenshot of the executionand source code of your Java program

 

Label each file name according to the section of the assignment for which it is written. Put both sections together in a single zip file, and submit the file.

 

This assignment is a modification of Assignment 1. The main difference is that instead of using the System.in.* and System.out.* methods, your will be using the JOptionPane class for all the inputs / outputs.

 

Section 1: Java Program File(s)

Modify the Java program that you created from Assignment 1. According to your design, the program must:

  • Use the JOptionPane class to create a driver program to test your Assignment 1 InsuranceAgentApp Java application.
  • Display a new driver test program’s user interface (The interface should look like the image shown below):

InsuranceAgent

 

  • The new driver test program’s user interface from Question 1b must:
    • Include a loop to display the user interface until the user clicks the Quit button.
    • Instantiate a PropertyInsurance object and use the JOptionPane.showInputDialog() method to capture the type and riskAmountwhen the user clicks the Property button.
    • Instantiate an AutomobileInsurance object and use the JOptionPane.showInputDialog() method to capture the type and riskAmountwhen the user clicks the Automobile button.
    • Instantiate a TravelInsurance object and use the JOptionPane.showInputDialog() method to capture the type and riskAmountwhen the user clicks the Travel button.
    • Display the quote (totalPremium in the InsuranceAgentApp class) when the user clicks the “Get a Quote” button.
    • End when the user clicks the “Quit” button.

 

Section 2:  Screenshot of the Execution of the Implementation

Create a screenshot of the execution and include a copy of source code of the implementation.

  • Create a screenshot of the execution of the implementation of your Java program. Note: Go to http://www.take-a-screenshot.org/ if you need a tutorial on taking a screenshot.
  • Submit a copy of source code of the implementation.

 

Section 1 and Section 2 will be graded based on the following:

  1. The program must compile, execute, produce correct results, and meet all of the specifications stated in Section 1.

Additionally you must:

  1. Organize the code for user readability.
  2. Organize the code for reusability.
  3. Organize the code for efficiency.
  4. Provide documentation with embedded comments for reader understanding.

 

 

Available solutions