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

  Development of a graphical user interface

Understand actual communication with an SMTP server can be achieved using TCP Sockets and understand the development of a graphical user interface (GUI) and use of event handling.

  The game of pig

Write a program that allows a single player to practice the game (that is, there will be no opponent, just a single player). Play 5 turns in the game to get a total score for the player. Refer to the sample output below for a detailed example.

  Design a single class that expresses the commonality

Design a single class that expresses the commonality of these concepts.

  What are some debugging techniques for javascript

What are some common programming errors? How can they be prevented? What is the try catch structure, how is it useful? What are some debugging techniques for JavaScript?

  Which parts of the assignment were you not able to complete

Which parts of the assignment were you not able to complete fully? For each, explain why you were unable to complete this part and what steps you took to attempt to complete it. Give me as much detail as possible such that I may award partial cred..

  Discuss the legal ramifications of the division of condo

Discuss the legal ramifications of the division of condo, BioTech and other assets. Would it make any difference if Violet sold the property after filing for the dissolution of marriage?

  Java program to write-read data from user using i-o function

Write java program to write and read data from user using I/O functions. Describe class with data members name[20],emp_id,basic pay,net pay.calculate all the allowances.

  Write a method called add uneven arrays

Write a method called addUnevenArrays that takes two arrays, a and b, and returns a new array, c, with alength that is the maximum of the lengths of a and b. Each c[i] is the sum of the corresponding elementsof a and b if both elements exist.

  supply a student tester class that tests all methods

Implement a class Student. For the purpose of this exercise, a student has a name and a total quiz score. Supply an appropriate constructor and methods getName( ), addQuiz(int score), getTotalScore( ), and getAverageScore ( ).

  Java-s ability to derive new fonts from existing ones

Find out where on your system these font libraries are located. When you do, please specify the operating system and the location (folder/directory) where you found them. Discuss Java's ability to derive new fonts from existing ones.

  Development of a graphical user interface

To understand actual communication with an SMTP server can be achieved using TCP Sockets and understand the development of a graphical user interface (GUI) and use of event handling.

  Concept of web based information system

Design and implement a simple and small email server using the concept of web based information system

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