+1(978)310-4246 credencewriters@gmail.com
  

Make sure you’ve included all the required elements by reviewing the

Project Three Guidelines and Rubric

(attach) and Discussion your Reflection about the project.

please let me know if you need additional information

System Specification Document
Overview
Our mission at Luxury Ocean Cruise Outings is to provide the accurate and efficient ability to coordinate cruise bookings for our
growing list of affiliate luxury cruise ship owners and cruise lines. We desire a simple menu-based system to perform core functions
that are essential to our daily operations.
The envisioned system will include three primary components: ships, cruises, and passengers. The Luxury Ocean Cruise Outings
company does not own ships; instead, it creates cruises using available ships. Once a ship is placed “in service,” it is available for
cruises. Passengers can be added to cruises. Here are the relationships of these components:
•
•
•
•
•
Ships have unique names.
Cruises have unique names and are assigned to ships.
Ships can have multiple cruises.
Each ship has a finite number of passenger cabins (Balcony, Ocean View, Suite, and Interior). Overbooking is not permitted.
Passengers are assigned to cruises.
System Menu
We require a simple text-based menu system that should resemble the illustration below. A text version of this table is also
available.
12/3/2020
î·€
Project Three Guidelines and Rubric – IT-145-T2554 Found in App Development 20EW2

Competency
In this project, you will demonstrate your mastery of the following competency:
Write programs using object-oriented conven ons in accordance with industry standard best prac ces
Scenario
You work for Global Rain, a so ware engineering company that specializes in custom so ware design and development. As a junior
so ware developer, you are part of a so ware development team at Global Rain that collaborates to create so ware solu ons for
entrepreneurs, businesses and government agencies around the world.
Your Global Rain so ware development team has been asked to develop a menu-driven system for the Luxury Ocean Cruise Ou ngs
company. This company coordinates cruise bookings for luxury ship owners and cruise lines. As a returning customer for Global Rain,
Luxury Ocean Cruise Ou ngs has requested a simple menu-based system to perform core func ons that are essen al to its daily
opera ons.
Other developers on your team have made progress on this project and have already created different classes for the so ware
applica on. Your supervisor has asked you to complete several tasks to meet the customer’s needs.
Direc ons
The Luxury Ocean Cruise Ou ngs company has provided Global Rain with a so ware specifica on document that details a menu-driven
so ware applica on. Other developers on your so ware development team have already begun this project by crea ng the Ship,
Cruise, Passenger, and Driver classes. You will modify the classes by including a ributes and their proper data structures, wri ng
methods to perform required func onality and behavior, and making sure that your program performs input valida on and excep on
handling.
Before you get started with your assigned tasks, complete the following pre-work to understand your client’s needs, set up your development environment, and become familiar with
the work that has already been completed. Refer to the Suppor ng Materials for relevant files to complete your pre-work.
1. Review the specifica on document, which will provide you with an overview of your client’s needs. Pay special a en on to the rela onships between the system’s different
components.
2. Open the Virtual Lab by clicking on the link in the Virtual Lab Access module. Then open your IDE. Upload the package of .java class files into your IDE and compile the code.
Although the program is not complete, it will compile without error. This will help you test your development environment and ensure it is ready to start coding.
3. Read through the code for each class. You will get clear direc ons in the project guide on how to modify and complete the code. This will help you understand what code has
been created, and may give you ideas for the methods you must complete to meet the so ware requirements.
4. Once you have completed your pre-work, you are ready to begin your assigned tasks on the menu-driven so ware applica on. Follow the project guide in the Suppor ng
Materials sec on, which will take you step-by-step through comple ng the so ware applica on’s menu system.
What to Submit
To complete this project, you must submit the following:
Note: All class files must be submi ed because the en re package of files is required for the applica on to run.
https://learn.snhu.edu/d2l/le/content/568573/viewContent/10785044/View
1/4
12/3/2020
Project Three Guidelines and Rubric – IT-145-T2554 Found in App Development 20EW2
Driver.java Class File
Submit your modified Driver.java class file. Be sure to include in-line comments for all
your changes and addi ons.
Cruise.java Class File
Submit your modified Cruise.java class file. Be sure to include in-line comments for all
your changes and addi ons.
Ship.java Class File
Submit the Ship.java class file, even though you were not required to make changes to it
for this project.
Passenger.java Class File
Submit the Passenger.java class file, even though you were not required to make
changes to it for this project.
Suppor ng Materials
The following resource(s) may help support your work on the project:
Luxury Ocean Cruise Ou ngs System Specifica on Document
Review the system specifica on document, provided by Luxury Ocean Cruise Ou ngs,
to complete the menu-driven so ware applica on.
Luxury.zip (Class Files)
Review the code in each class file to understand what code has been created and what code you will create. The Ship and Passenger classes have been fully coded and do not require
changes. The Driver and Cruise classes have been par ally coded and require changes. All classes are required for the Luxury Ocean Cruise Ou ngs app.
Uploading Files to Eclipse Tutorial
You will write, test, and run each class file in an IDE. Review this tutorial to learn how to upload the zipped folder, which contains all your class files, into your IDE.
Downloading Files from Eclipse Tutorial
You will write, test, and run your class files using an IDE. Review this tutorial to learn how to save and export files from your IDE. Important: Do not change the names of any class files.
Project Three Guide
Follow this guide, which will take you step-by-step through crea ng the so ware applica on’s menu for Luxury Ocean Cruise Ou ngs.
The following rubric will be used to assess Project Three. Familiarize yourself with this document as you work on the project, and return to this rubric before you submit Project Three
to make sure you’ve included everything you need to be successful.
Project Three Rubric
Criteria
Exemplary
https://learn.snhu.edu/d2l/le/content/568573/viewContent/10785044/View
Proficient
Needs Improvement
Not Evident
Value
2/4
12/3/2020
Project Three Guidelines and Rubric – IT-145-T2554 Found in App Development 20EW2
Criteria
Part One: Print Cruise
Exemplary
N/A
Method
Proficient
Needs Improvement
Not Evident
Creates a method within a
Shows progress toward
Does not a empt criterion
class that produces easy-toread output of all instance
proficiency, but with errors or
omissions; areas for
(0%)
variables, and meets all the
improvement may include
client’s specifica ons (100%)
readability of output,
Value
16.67
addressing client
specifica ons, func onality,
syntax, or logic (55%)
Part Two: Print Ship List
N/A
Method
Modifies a method that
Shows progress toward
Does not a empt criterion
provides easy-to-read output
proficiency, but with errors or
(0%)
that displays details of an
omissions; areas for
object (100%)
improvement may include
16.67
include readability of output
or object details, func onality,
syntax, or logic (55%)
Part Three: Add Ship
N/A
Method
Creates a method that
Shows progress toward
Does not a empt criterion
instan ates an object,
proficiency, but with errors or
(0%)
includes all instance variables,
and updates an array (100%)
omissions; areas for
improvement may include
16.67
object instan a on, variable
use, arrays, func onality,
syntax, or logic (55%)
Part Four: Add Cruise
Method
N/A
Creates a method that
prompts the user for input,
Shows progress toward
proficiency, but with errors or
ensures that entered input
omissions; areas for
meets all specifica ons, and
improvement may include
updates an array (100%)
promp ng user for input,
Does not a empt criterion
(0%)
16.67
mee ng specifica ons, arrays,
func onality, syntax, or logic
(55%)
https://learn.snhu.edu/d2l/le/content/568573/viewContent/10785044/View
3/4
12/3/2020
Project Three Guidelines and Rubric – IT-145-T2554 Found in App Development 20EW2
Criteria
Part Five: Main Method
Exemplary
N/A
Proficient
Needs Improvement
Not Evident
Value
Modifies the main method
Shows progress toward
Does not a empt criterion
within a class to include a loop
and maps user input to the
proficiency, but with errors or
omissions; areas for
(0%)
specified func onality (100%)
improvement may include
16.67
inclusion of a loop, mapping
user input, input valida on,
func onality, syntax, or logic
(55%)
Industry Standard Best
Prac ces
Exceeds proficiency in an
Demonstrates industry
Shows progress toward
Does not a empt criterion
excep onally clear, insigh ul,
standard best prac ces
proficiency, but with errors or
(0%)
sophis cated, or crea ve
including naming conven ons,
omissions; areas for
manner (100%)
input valida on, excep on
improvement may include
handling, and in-line
comments (85%)
naming conven ons or in-line
comments (55%)
Total:
https://learn.snhu.edu/d2l/le/content/568573/viewContent/10785044/View
16.65
100%
4/4
IT 145 Project Three Guide
Use this step-by-step guide to complete all the methods needed for the software application’s
menu system.
TIP: As you work on your code, you can add sample data to test your code changes. Remember
that every time you exit the program, your sample data will be cleared. To avoid this issue, it is
recommended that you hard-code your sample data as illustrated in the beginning of the
Driver.java file. Some hardcoded data has already been created for you, but you may add more
if you would like. Look for these in-line comments at the start of the code:
// hardcoded ship data for testing
// Initialize ship list
Part One: Complete the printCruiseDetails() Method
1. Open the Cruise.java file. Pay attention to the variable names and the code for the
constructors, accessors, and mutators, which have already been created by your
development team. See below for where you will add code to finish the
printCruiseDetails() method.
// print cruise details
public void printCruiseDetails() {
// complete this method
}
2. Next, review the required functionality of the “Print Cruise Details” menu option below.
Menu Option
Print Cruise Details
Functionality
•
•
Prints a list, each cruise on a separate row
Data should be placed in columns that correspond to the variables:
cruise name, cruise ship name, departure port, destination, and return
port
3. Print Cruise Details Method: Write code for the printCruiseDetails() method. When your
code is complete, test the output by running the Driver.java class. Be sure the
completed method does the following:
a. Prints console output of all cruises and their details or, if there are no cruises in
the inventory, the output states this to the user
b. Prints the output in an easy-to-read format for the end users (for example, easyto-read output would present data in aligned columns)
TIP: Within the Ship.java file, there is a printShipData() method that is very similar to the
method you are tasked with creating. You can refer to that method as an example.
4. Industry Standard Best Practices: To ensure clarity, consistency, and efficiency among
all software developers, your code must do the following:
a. Follow appropriate naming conventions for variables and methods
b. Include descriptive in-line comments for all code you create and modify
Part Two: Complete the printShipList() Method
1. Open the Driver.java file. See below for where you will add code to finish the
printShipList() method.
}
else if (listType == “active”) {
System.out.println(“nnSHIP LIST – Active”);
// complete this code block
2. Next, review the required functionality of the “Print Ship List” menu option below.
Menu Option
Print Ship In Service
List
Validation Check(s)
If no ships are in the inventory,
informs the user
Functionality
Prints a list consisting of all ship names that
are in service
3. Print Ship List Method: Complete the code for the printShipList() method. When your
code is complete, test the output. Be sure that the completed method provides console
output that returns ship details based on the String value passed to the method.
TIP: The printShipList() method already supports printing ship names and a full ship list.
You can review the code as you edit the printShipList() to support printing ships in
service. See below for an example of the system’s printed output for the full ship list.
Actual results do not need to match this example exactly. A text version of this table is
also available.
4. Industry Standard Best Practices: To ensure clarity, consistency, and efficiency among
all software developers, your code must do the following:
a. Follow appropriate naming conventions for variables and methods
b. Include descriptive in-line comments for all code you create and modify
Part Three: Complete the addShip() Method
1. In the Driver.java file, see below for where you will add code to finish the addShip()
method.
// Add a New Ship
public static void addShip() {
// complete this method
}
2. Next, review the required functionality of the “Add Ship” menu option below.
Menu Option
Add Ship
Validation Check(s)
– Ensures ship does not already exist in our system
– Ensures all instance variables are populated
Functionality
Adds ship to system
3. Add Ship Method: Write the code for the addShip() method. When your code is
complete, test the output. Be sure that the completed method does the following:
a. Adds a new Ship object
b. Includes all instance variables
c. Updates appropriate ArrayList
TIP: You can refer to the Ship.java class constructor to make sure you have included all
variables.
4. Industry Standard Best Practices: To ensure clarity, consistency, and efficiency among
all software developers, your code must do the following:
a.
b.
c.
d.
Ensure that all user input is validated with appropriate feedback to the user
Include exception handling
Follow appropriate naming conventions for variables and methods
Include descriptive in-line comments for all code you create and modify
Part Four: Complete the addCruise() Method
1. In the Driver.java file, see below for where you will add code to finish the addCruise()
method.
// Adda New Cruise
public static void addCruise() {
// complete this method
}
2. Next, review the required functionality of the “Add Cruise” menu option below.
Menu Option
Add Cruise
Validation Check(s)
– Ensures cruise does not already exist in
our system
– Ensures all instance variables are
populated
Functionality
Adds cruise to system
3. Add Cruise Method: Write the code for the addCruise() method. When your code is
complete, test the output. Be sure that the completed method does the following:
a.
b.
c.
d.
e.
Prompts the user for input
Requires all instance variables when creating a cruise
Validates the ship name and ensures it is in service
Ensures ship name is not already assigned a cruise
Adds the new cruise to the cruiseList ArrayList if validation checks pass
4. Industry Standard Best Practices: To ensure clarity, consistency, and efficiency among
all software developers, your code must do the following:
a.
b.
c.
d.
Ensure that all user input is validated with appropriate feedback to the user
Include exception handling
Follow appropriate naming conventions for variables and methods
Include descriptive in-line comments for all code you create and modify
Part Five: Complete the main() Method
1. At the beginning of the Driver.java file, see below for where you will add code to finish
the main() method.
public static void main(String[] args) {
initializeShipList();
initializeCruiseList();
initializePassengerList();
// initial ships
// initial cruises
// initial passengers
// add loop and code here that accepts and validates user input
// and takes the appropriate action. include appropriate
// user feedback and redisplay the menu as needed
2. Main Method: Complete the code for the main() method. When your code is complete,
test the output. Be sure that the completed method does the following:
a. Includes a loop that allows the user to interact with the menu until they signal
that they want to exit the system
b. Maps user input to the specified functionality based on the all menu options
listed below. A text version of this table is also available.
Note: The methods for Edit Ship, Edit Cruise, and Edit Passenger do not need to be
completed but should still be mapped. When you test your menu, if you enter 2, 4, or 6
for a menu selection, you should get a response that the “feature is not yet
implemented.”
3. Industry Standard Best Practices: To ensure clarity, consistency, and efficiency among
all software developers, your code must do the following:
a. Ensure that all user input is validated with appropriate feedback to the user
b. Follow appropriate naming conventions for variables and methods
c. Include descriptive in-line comments for all code you create and modify
Part Six: Submission
Upon completing your code for each class file, review the What to Submit section of the Project
Three overview and submit all files to the Project Three submission.

Purchase answer to see full
attachment

error: Content is protected !!