Design and develop a console application

Assignment Help JAVA Programming
Reference no: EM13661581

Assignment Description:

For this assignment, you are required to design and develop a console (text-based) application for a small car servicing company. This application will simulate booking, tracking service jobs and vehicle modifications and processing payments.

The program must cater for each of the following requirements:

1) Add a new booking.

2) List all jobs still actively being worked on

3) List all completed jobs still requiring payment

4) List all jobs scheduled for work on a particular day

5) Accept a payment towards a completed service job

6) Report detailed status for a particular booked service

7) Exit the Program

Task Description:

1) Design.

Prior to commencing coding, you need to plan what you're going to code. Write an algorithm that describes how your program is going to work and how it links together.

2) Implementation

Develop a program for the service department staff. This needs to:

a. Use a menu to provide the user with options to access different parts of the program.

b. Include all the functionality listed under the application description and further described under functional requirements. Make sure this includes the following elements:

i. at least one array
ii. at least one example of inheritance
iii. at least one example of polymorphism
iv. at least one example of overloading

c. Keep running until the user selects a menu option to exit the program. You do not need to save any data when you exit.

You should aim to write code following high quality coding practices, including comments, trapped exceptions and exhibiting good design where code is separated into separate methods.

Functional Requirements

1) Add a new booking.

Allow the user to enter information which constitutes a booking for a client of the service department. You do not need to treat companies any differently to individual persons. The following information is required for each booking:

- The name, address and contact phone number of the client
- The number plate, make, model and year of manufacture of the vehicle
- The service date

You must also allow the user to indicate the type of booking that is being requested.

This may be a vehicle modification or a vehicle service. In the case of a vehicle modification, you must also collect payment for any parts required on the day the booking is made.

2) List all jobs still actively being worked on

This option must display a list of all the bookings (jobs) that are in progress or have been completed on the current day by the service department. Do not list jobs which are yet to start, or jobs which have been completed on a previous day. For each job that is active, simply report the name of the client, the vehicle registration, the type of service and its current status.

3) List all completed jobs still requiring payment

The user must be able to select an option to list all the jobs that have been completed but have not yet been paid in full. For each such job, list the name of the client, the type of service they booked and the amount owing. If a client has payment owing for more than one job, you may choose to either consolidate these into one entry or to display them on individual lines at your own discretion.

4) List all jobs scheduled for work on a particular day

The program must allow the user to see a list of all the services that are scheduled on a selected day. The user must be able to specify the day for which the list is to be provided.

5) Accept a payment towards a service job

Payments must be recordable against services. The user must indicate the particular job to which the payment is to be allocated (any method of doing this is acceptable). Then, if the selected job is one for which there is an amount owing, report that amount to the user, and obtain from the user the amount actually being paid right now.

If the amount entered is too much, report an error message. If the amount entered is less than the total that was owing, report the new amount owing afterwards.

Otherwise, report that no further payments are required from the client. Remember to keep track of all payments made on each day.

6) Report detailed status for a particular booked service

The program must be able to report the full details about any particular booking, by allowing the user to specify the booking for which they wish to see the details. This means you must report:

- The name, address and contact number of the client
- The type of service they booked
- The date of the service
- The vehicle registration number, make, model and year of manufacture
- The current job status (scheduled, in progress, complete, cancelled)
- The total service cost, if known
- The amount paid and amount owing.

7) Exit the Program

The program must keep running until the user selects the option to exit. You do not need to save any of the data (i.e. there is no need to use files).

3) Testing.

In your supplementary documentation, explain how you have tested your code and the results of your testing. This means writing down the inputs and actions which the marker should follow to reproduce the scenarios you used to check the program is working. Include screenshots demonstrating the results when you tested your code.

Reference no: EM13661581

Questions Cloud

What is the total number of allocated bytes : What is the total number of allocated bytes?
Discover the net gravitational force exerted by these object : Objects with masses of 135 kg and a435 kg are separated by 0.480 m. Discover the net gravitational force exerted by these objects on a 36.0 kg object placed midway among them.
Decide the orbital period of the satellite : An artificial satellite circles Earth in a circular orbit at allocation where the acceleration due to gravity is 9.00m/s2. Decide the orbital period of the satellite.
Comparing full absorption and variable costing : Comparing Full Absorption and Variable Costing
Design and develop a console application : Required to design and develop a console (text-based) application for a small car servicing company -
What is the wavelength of the scattered photon : A 6.250 keV x-ray photon strikes a carbon atom and is scattered with a Compton scattering with one of the carbon’s electrons. The energy of the scattered photon is measured to be 6.175 keV. What is the wavelength of the scattered photon? During what ..
Small current element located at the origin : A small current element located at the origin has a length of 2.00 mm and carries a current of 2.0 A in the +z direction. Discover the magnitude and direction of the magnetic field due to this current element at the point (0.0, 0.3m, 0.3m)
Container is initially evacuated : A 0.0422-m3 container is initially evacuated. Then, 7.24g of water is placed in the container, and, after some time, all of the water evaporates. If the temperature of the water vapor is 370K, what is its pressure?
Assume light with a wavelength : Assume light with a wavelength of 850nm in a vacuum is incident upon fused quartz, which has an index of refraction of 1.46. What will the wavelength of this light be inside the quartz?

Reviews

Write a Review

JAVA Programming Questions & Answers

  Write java program to accept two words as input

Write a Java program that accepts two words as input and determines if one of them is resulting from changing the order of the others' letters.

  Write a java program to perform matrix multiplication

Write a java program to perform matrix multiplication - Your code will need to be able to read in these files, place the contents of each file into separate two-dimensional arrays and then perform the needed multiplication and place the output of t..

  What are the values of these boolean expressions

Describe the steps for inserting a new item at the head of a linked list? Make sure you consider all possible incoming conditions.

  Mining information from sales data is a common task in both

mining information from sales data is a common task in both traditional and online stores. past sales information can

  Implement a class quiz

Implement a class Quiz that implements the Measurable interface.

  Implement a shopping cart class with user interface

project will be to implement a shopping cart class with user interface (UI) that contains main() in Net Beans. The UI class will be used to perform user input/output and to invoke the appropriate methods of shopping cart class. When your program star..

  Instantiate two savingsaccount objects

saver1 and saver2, with balances of $2000.00 and $3000.00, respectively (was trying to figure out the formula, what I have written so far is as follows, and I am trying to see if I missed something

  Including four sets of quadruplet andsevwn sets of triplets

Mrs. Bernard Scheinberg of Austria had sixty-nine children. Including four sets of quadruplet, sevwn sets of triplets, and sixten of twins. after Mrs. scheinberg died at the age of 56, her husband remarried. during his remaining years, he fathered an..

  Java method for radix sort in binary

java method for radix sort in binary but I want to understand how to do it so please make it as simple as possible

  Specifications of object instance variables and behaviors

Write simple, accurate object-oriented programs using primitive data types, variables, data structures, and object-oriented principles and implement classes that meet the given specifications of object instance variables and behaviors

  Quadratic that solves quadratic equations

Write a method called quadratic that solves quadratic equations and prints their roots. Recall that a quadratic equation is a polynomial equation in terms of a variable x of the form ax2 + bx + c = 0. The formula for solving a quadratic equation is ?..

  Modify each sorting algorithm

Modify each sorting algorithm so that it keeps track of the number of comparisons it performs and the number of exchanges (swaps) it performs during a single sorting operation. Keep track of these numbers using two long integer counters

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd