CMIS147 Introduction to Programing

ebote
Project.pdf

Project

Before attempting this project, be sure you have completed all of the reading assignments, non-

graded exercises, discussions, and assignments to date.

Write a Java program that displays a menu to allow the user the following functionality:

1. Load customers’ data - prompt user for the number of customers to be loaded and then prompts for each customer's name, customer id (5 digit number), and total sales

2. Add new customer - prompts the user for customer data: customer name, customer id, and total sales

3. Display all customers - displays each customer's data to the console, one customer per line 4. Retrieve specific customer's data - prompts the user for the customer id and displays the corresponding customer's data: customer id, customer name, and total sales

5. Retrieve customers with total sales based on the range - prompts the user for the lowest and highest total sales and displays all customers with total sales in that range. Display each

customer on a separate line with all information – Customer Name, Customer ID, and Total

Sales

6. Exit Design and implementation notes:

o Each menu selection should be implemented as a separate method o Customers' data should be saved in arrays, you can allocate for a maximum of 100 elements o After completion of each selection, the program should display the menu again to allow

the user another selection until they select Exit

Make sure your Java program is using the recommended style such as:

• Javadoc comment upfront with your name as author, date, and brief purpose of the program

• Comments for variables and blocks of code to describe major functionality

• Meaningful variable names and prompts

• Identifiers are written in upper CamelCase

• Class name starts with upper case letter and variables in lower case letter

• Constants are written in All Capitals

• Use proper spacing and empty lines to make code human-readable

Capture execution:

You should capture and label screen capture associated with compiling your code and running a

test case. There should be a screenshot for the execution of each menu selection

Submission requirements

Deliverables include a Java program (.java) and a single Word (or PDF) document. The Java

and Word/PDF files should be named appropriately for the assignment (as indicated in the

Submission Requirements document.

The word (or PDF) document should include screen captures showing the successful compiling

and running of each of the test cases. Each screen capture should be properly labeled clearly

indicate what the screen capture represents.

Submit your files to the Project dropbox submission area no later than the due date listed

in the online classroom.

Grading Rubric:

The following grading rubric will be used to determine your grade:

Attribute Level (10-6 points)

Level (6-2 points)

Level 0 (0 - 2 points)

Arrays Correct or one

incorrect prompt

and captured

input in arrays

Two mistakes in

prompts and/or

capture of input

and/or arrays

Three or more missing elements

in user input and/or use of arrays

Methods Correct or one

mistake in use of

methods

Two mistakes in

implementation of

methods

Missing all or some methods

Menu Correct or one

mistake in menu

implementation

Two mistakes in

menu

implementation

Three or more mistakes or

missing menu

Load data

functionality Correct or one

mistake in

design and/or

implementation

Two mistakes in

design or

implementation

Missing or significantly

incorrect design and/or

implementation to provide the

required functionality

Add employee data

functionality Correct or one

mistake in design

and/or

implementation

Two mistakes in

design or

implementation

Missing or significantly incorrect

design and/or implementation to

provide the required functionality

Display all data

functionality Correct or one

mistake in design

and/or

implementation

Two mistakes in

design or

implementation

Missing or significantly incorrect

design and/or implementation to

provide the

required functionality

Retrieve employee

data Correct or one

mistake in

design and/or

implementation

Two mistakes in

design or

implementation

Missing or significantly incorrect

design and/or

implementation to provide the

required functionality

Retrieve employees

with salary in range

functionality

Correct or one

mistake in

design and/or

implementation

Two mistakes in

design or

implementation

Missing or significantly incorrect

design and/or

implementation to provide the

required functionality

Screenshots Correct or one

mistake in test

execution

Two

mistakes or

incomplete

execution

Missing or significantly

incorrect execution

Program documentation

and style

Correct or one

mistake in program

comments, and

identifiers

Two mistakes or

incomplete

documentation

and/or style

Missing or significantly incorrect

documentation and/or style