Reference no: EM132390401
4483 Software Technology 1 and 8995 Software Technology 1 G
Assignment
Assignment Briefing:
The wonderful company,SpaceW, is a fictional company that makes its money by providing orbital services (aka, blasting rockets into space).They are ramping up spaceflights; to help them they need aninvoice program that can produce a one off invoice, a monthly invoice and a combined launch schedule for both launch sites (See example output).
The one-off invoice is similar to MT1 – but with client name and contact printed and including a launchpad fee if necessary (See example output below). The input for this option is to come from the keyboard and the program must not crash,no matter what rubbish is typed in.Obviously incorrect inputs should generate errors.
The Monthly invoice is a summation of all the launches for a given client in eachgiven month. The input for this option is to come from an input file with one line per launch, this file may have trailing blank lines.
The Monthly launch schedule is a summary listing of the launches for a given month and should include all launches for both particular launch sitesof that month for one customer. Extra points are to be awarded if the launch schedule is in date order (chronological order).
Space vehicles can be launched into twostandard orbits: LEO (low earth orbit), GTO (Geosynchronous Transfer Orbit). NESA tracking costs must be arranged for GTO orbits and shown on the invoice ($120,000).
You program needs to do the following (also see marking rubric below)
• Show a small menu with 4 options (console input)
o Produce aone-off invoice;
o Produce a monthly invoice;
o Produce a launch schedule; and
o Exit
• Students may code two additional options if they want
o Produce a sorted launch schedule; and
o Display a teddy bear (see marking rubric – safety net marks)
• If monthly invoice or launch schedule is selected it should process a file. The file is the monthly orders file for a given company. Several of these input files will be provided for testing and mandatory testing. (see format below)
Monthly-Orders format (input file) comma separated
|
Field Number
|
Name
|
Contents
|
|
1
|
Date
|
The date of the order in format dd/mm/yy
|
|
2
|
Client
|
The client Id (a string of up to 10 characters)
|
|
3
|
Service
|
From the service codes in MT1 (eg ORBL, ORBLH etc)
|
|
4
|
Orbit
|
LEO, GTO
|
|
5
|
Payload value
|
10,000 to 900,000,000
|
|
6
|
Launch Site
|
LC40 or KSC
|
|
7
|
Global warming
|
Y or N
|
Monthly order file (will be sorted in date order with more than one order in a day)
Below is the test file Oct2020.txt (which I supply for your testing)
18/10/20,ESAA,ORBL,GTO,3900000,KSC,N
20/10/20,ESAA,ORBL,LEO,2200000,KSC,Y
To display client name and contact on the invoice the students need to get these details from the table shown below. I provide a sample class for this, students do not need to use it (you could instead use a case statement or if statement(s) - it’s up to you).
Customers table
|
Code
|
Name
|
Contact name
|
Address
|
|
ESAA
|
Europe Systems Alternative Agency
|
Jean-Claude Junxer
|
23 Razor Road Belconnen ACT
2617
|
|
NASHA
|
National Air Space Hash Agency
|
Jimmy Briden
|
2 Mashup Drive
Bruce ACT
2617
|
|
ASA
|
Aussie Space Agency
|
Megan Clock
|
Flat 31/a, Bax Units
Stix St,
Marble Bar, WA
6760
|
|
TICK
|
Tick Incorporated
|
Mark Watson
|
87 Race Drive Bathurst, NSW
2795
|
|
BINC
|
Byer Private Space Incorporated
|
Marilyn Hewson
|
212 Webly Drive,
Canowindra, NSW
2804
|
|
CODC
|
Corporate Space Trust
|
Zhang Chen
|
212 Scorch Drive,
Beltana, SA
5730
|
|
MARZ
|
The Mars Gen Inc
|
Cool Dude
|
26 O'Conner's Road,
Werribee South, VIC
3030
|
Exact spelling and punctuation in the address lines may vary in supplied code. Students can use either version.
SpaceW Launch services
|
Service Code
|
Description
|
Cost US $
|
Notes
|
|
ORBL
|
One satellite to low earth orbit weighing less than 6 metric tonnes; or One satellite to GTO weighing less than 4 metric tonnes
|
62,000,000
|
|
|
ORBLH
|
One satellite to low earth orbit weighing less than 26 metric tonnes; or One satellite to GTO weighing less than 18 metric tonnes
|
90,000,000
|
|
|
ORBC1U
|
One micro satellite 10x10x10cm (cubesat size 1) Ride Sharing with another payload in a similar orbit.
|
500,000
|
*2
|
|
ORBC2U
|
One micro satellite 10x10x20cm (cubesat size 2) Ride Sharing with another payload in a similar orbit.
|
1,000,000
|
*2
|
|
ORBC3U
|
One micro satellite 10x10x30cm (cubesat size 3) Ride Sharing with another payload in a similar orbit.
|
1,400,000
|
*2
|
|
ORBC6U
|
One micro satellite 10x20x30cm (cubesat size 6) Ride Sharing with another payload in a similar orbit.
|
2,000,000
|
*2
|
|
Note
|
|
|
|
*2
|
Free Teddy Bear
|
|
|
*3
|
Payload values are rounded up to the nearest million
E.g. payload value 650,001 would count as 1 million
E.g. payload value 1,00,001 would count as 2 million
E.g. payload value 7,250,000 would count as 8 million
|
|
Attachment:- Assignment Details.rar