Objectives:

Practice using sets, maps, and design patterns.

Scenario

An auto service shop has asked you to design a prototype system for their business. They need the system to be able to keep track of customers and their history. When the system comes up, a user should be able to search for a customer by last name (assume all last names will be unique for this project). If they are an existing customer, the program should allow the user to view their history details 1 entry at a time. If they are a new customer, the program should allow the user to enter them into the system. The shop works solely on Hondas and Nissans.

Details

Your program should have the concept of a customer class. It should contain an abstraction (Interface) for an automobile. Concrete implementations that derive from automobile should be specific to the type of cars the shop works on. In order to make your project extensible. Use a class factory for all automobile creation. A customer can have 1 or more cars that should be stored in a set. The program should use a map to store all of its customers. The key should be the customers last name and the value should be the customer object.

For this problem, do not worry about persisting data to file.

Must be a JavaFX GUI Application and with naming convention as desired and must use factory design pattern for automobile creation.

Academic Honesty!
It is not our intention to break the school's academic policy. Posted solutions are meant to be used as a reference and should not be submitted as is. We are not held liable for any misuse of the solutions. Please see the frequently asked questions page for further questions and inquiries.
Kindly complete the form. Please provide a valid email address and we will get back to you within 24 hours. Payment is through PayPal, Buy me a Coffee or Cryptocurrency. We are a nonprofit organization however we need funds to keep this organization operating and to be able to complete our research and development projects.