Program to create shipping company model, JAVA Programming

Assignment Help:

This assignment models a simplified delivery company. It is composed of the following departments:  receiving which contains a list of packages to be delivered, shipping which ships the packages accounting which monitors the packages delivered, packages shipped, how they are shipped, where they are delivered to and revenues.

The project simulates the processing of a given set of packages. The packages consist of either standard delivery packages or overnight packages. The vehicles consist of planes and trucks. The accounting department records the revenues and shipments.

Class Design

The application must include the classes in the class diagram below. All data members must be private.

Note: This class diagram does not include all of the methods and data members required to implement this design.

Class Descriptions

DeliveryCompany

The delivery facility consists of Receiving, Accounting and Shipping Departments. It has a function, processPackages(), which processes the packages from Receiving to Shipping and conveys information to accounting.

Receiving

The Receiving Department consists of a list of packages to be delivered. It makes available the information on each package. The transport mode, truck or plane, is determined using a lookup table based on the zone the package is to be delivered to.

Shipping

The Shipping Department ships the packages by creating a shipment object for each package. It assigns a shipping ID to each package.

Accounting

The Accounting Department tabulates the number of packages shipped by zone and mode of transport and the total revenue.  

Package Class Hierarchy

The package class hierarchy consists of the base class Package and two derived classes: StandardPackage and OvernightPackage. The base class contains an ID, addressee name, zone to be mailed to, weight, and a cost parameter. The derived classes calculate costs based on the cost parameter stored in the base class. The overnight package rate is a flat fee as a function of the zone and the standard package rate is a function of the weight and the zone i.e. the rate per pound will depend on the zone the package is being sent to.

Assignment Requirements

Implement the delivery company using the classes specified in the class diagram above.

Construct a cpp file named DeliveryRun.cpp with main() in it. That main will have two statements: one will instantiate a DeliveryCompany object and the other will call the method processPackages() using that object.

The packages to be delivered are contained in ShippingCompanyInput.txt. Each line in the file represents a package and contains the following information:

1.       Priority (O = overnight and S = standard)

2.       Name of customer (no spaces in the customer name)

3.       Zone to be delivered to (1, 2, or 3)

4.       Weight of the package (in pounds)

The charges for each type of package to each zone are included in the Util.h file. The overnight rate is a function of the three delivery zones (OVERNIGHT_RATE). The standard rates are given per pound for each of the delivery zones (STANDARD_RATE_PER_POUND).

The transport mode for each package is a function of the type of package (overnight or standard) and the delivery zone (1, 2, or 3). These are given in OVERNIGHT_MODE and STANDARD_MODE in util.h.

The output must consist of:

1.       A detailed listing of each package

2.       A detailed listing of each shipment

3.       A summary of the shipments

o Number of packages

  1. By transport mode (plane or truck)
  2. By zone (1, 2, or 3)
  3. Total

o Total revenue

Each class with data to be printed out should include its own toString() function. The output can then be generated from the  DeliveryCompany class.


Related Discussions:- Program to create shipping company model

AdressBook, Write a program that uses one of the Map classes to implement a...

Write a program that uses one of the Map classes to implement a contact list. Contact information should include first name, last name, a phone number and an email address. The lis

Give the details of xml files used in validator framework, Two XML configur...

Two XML configuration files are uses by The Validator Framework validator-rules.xml and validation.xml. The validator-rules.xml shows the standard validation routines, these are re

What is numeric promotion, What is numeric promotion? Numeric promotion...

What is numeric promotion? Numeric promotion is the conversion of a smaller numeric type to a larger numeric type, so that integer and floating-point operations may take place.

I want a viral script for facebook likes, I want a viral script for faceboo...

I want a viral script for facebook likes Project Description: I am seeking someone to sell me or make for me a VIRAL script for facebook likes and auto share. Skills requi

What are application softwares, What are application softwares? List down t...

What are application softwares? List down the names of three application software's. Definition: Application Software are in which software then can interact directory along

Java Login/Register Web CMS, I need help setting up and fleshing out a basi...

I need help setting up and fleshing out a basic outline/structure for a basic Java web app using an MVC pattern

Probability, Mike sells on the average 15 newspapers per week (Monday – Fri...

Mike sells on the average 15 newspapers per week (Monday – Friday). Find the probability that 2.1 In a given week he will sell all the newspapers [7] 2.2 In a given day he will se

Continue statement in javascript, It terminates execution of the block of s...

It terminates execution of the block of statements in while or for loop & continues execution of the loop along with the next iteration. On the contrary to the break statement, con

Explain the library java.lang.math, Explain the library java.lang.Math ? ...

Explain the library java.lang.Math ? The Java class library is huge. We will not cover it all presently. In fact, the remaining eight classes will focus mostly on the class lib

What is initializing fields, What is Initializing Fields ? Fields can (...

What is Initializing Fields ? Fields can (and often should) be initialized while they're declared, just like local variables. class Car { String licensePlate = ""; // e.g

Write Your Message!

Captcha
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