Assignment 1: Insurance Agent App: Part 1
Due Week 6 and worth 180 points
This assignment consists of two (2) sections:
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:
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.
Section 1 and Section 2 will be graded based on the following:
Additionally you must:
Assignment 2: Insurance Agent App: Part 2
Due Week 10 and worth 180 points
This assignment consists of two (2) sections:
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:
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.
Section 1 and Section 2 will be graded based on the following:
Additionally you must: