Java project for Computer Science class

profileziyad_s3d
csci_1250_project_4_fall_2015.pdf

CSCI-1250 Project 4

Check the course calendar in D2L for the due date

You are to write a driver program that will interact with the CustomerOrder class to process a

customer’s order. Your program is to interact with the user by getting all customer input related to the

order. It should then use the CustomerOrder class to store the information and get information back

related to the order for display to the user. Ultimately, you will be asking for the order information and

displaying their order results to the screen in the form of a bill statement as shown in the screen shot

below. While your output does not need to look exactly like what is shown, it should have the same

information and should be displayed in a neat, readable format with all currency formatted to 2 decimal

places.

Example output for a customer order once it has been processed:

What you have been given:

 UML diagram for the CustomerOrder class

 The javadocs for the CustomerOrder class

 The .class file for the CustomerOrder class (necessary to be able to interact with it since you are

not being given the CustomerOrder.java file. This file MUST be placed in your project 4 folder

with your Project4.java file in order for it to work.)

What you need to submit:

 A LastnameFirstnameProject4 folder, zipped, with the following inside:

o Project4.java, Project4.class

o CustomerOrder.class

o Javadocs for CustomerOrder and Project4.java

o CustomerOrder UML diagram modified to show your Project4 class interacting with the

CustomerOrder class

 A hard copy of your driver program source code (Project4.java)

Driver program details:

Your program should provide all input and output interaction with the user. You will prompt for the

following information:

 Customer name (last name). MUST BE AT LEAST 4 CHARACTERS LONG. Prompt should indicate

to the user that if it isn’t, they should add X’s to the end.

 Customer phone number (in the format ###-####). MUST BE IN THIS FORMAT. Prompt should

make this clear to the user.

 Number of gadgets being ordered

 Number of widgets being ordered

 Shipping option (check the javadocs for CustomerOrder to see what the available options are).

Prompt should make clear to the user their options for shipping.

 Taxable option (check the javadocs for CustomerOrder to see what the available options are).

Prompt should make clear to the user their option of tax status.

 Discount code (check the javadocs for CustomerOrder to see what the available options are).

Prompt should make clear to the user their options for a discount.

 Note: you will NOT be prompting the user for the customer number. That will be automatically

generated by the CustomerOrder class.

Once you have all of the required order information, you should store that information in an object of

the CustomerOrder class using the appropriate methods. At that point, you can begin to process the

order and display the final bill to the user. You may not do any calculations in your driver program. All

of the functionality is provided in the CustomerOrder class. You are to call the appropriate methods to

get the information that you need in order to display the bill to the customer.

Note: There is one method in the CustomerOrder class that may not be used at this point. It is the

toString method. It has been provided for functionality later on, but may not be used in this assignment.

Once the program has displayed the bill to the customer, it should ask the user if they would like to

place another order. If they answer yes, your program should repeat from the beginning. This should

continue until the user indicates that they have no more orders to place.

UML Diagram for the CustomerOrder class