Expansion and closed for modification

Assignment Help Basic Computer Science
Reference no: EM131114974

A car manufacturer wants to allow his customers to customize their car order as they wish. They come to you asking to help them design their software solution. A basic car model wouldbe costing$1000. Here is the list of items you can add, along with their respective price:

-Air condition: $500

-Power windows: $200

-Sunroof: $250

-GPS: $200

The most important fact is that your design/code needs to be opened for expansion and closed for modification; i.e. we want to be able to expand the functionality by plugging in additional features, like enabling to add more items (Bluetooth, Internet, ...) without changing any existing code, but adding some.

Your program needs to display a menu of the items to add to the basic model. You are free to use a basic command line menu or a Java Swing one or even a JavaFX if you want. Once you get the set o

f selections the user wants to add to the basic model (zero or more), your code would produce the new model, listing all the additional items, along with each item's cost and the total cost of the newly ordered car model. Again, part of the marking is that your code needs to handlethe expansion factor by simply allowing me adding a new class to your code, without touching any of yours, and my class should work smoothly.

Of course, I would be implementing or extending what is needed from your code. Following one of the design pattern covered in class, I should be able to do so. Your code should have all the try/catch necessary to accept any type of input and to recover from any wrongly entered type (ex: if you expect an int, I should be able to enter a letter and your code should be able to recover from it properly). Once a car model has been successfully ordered with zero or more added items to thebasic one, your code would end by stating that the new car will be ready to be picked up, two weeks from current date at respective local car dealer (i.e. get currentdate and add two weeks to it); just use "at local car dealer" in your message.

Reference no: EM131114974

Questions Cloud

Question regarding the hackers in the future : Describe what is meant by the "hacker subculture" and identify at least one value that drives the hacker subculture. Do you think this hacker value system can ultimately be used to disrupt and deter hackers in the future?
Develop a profitable e marketing campaign : BabyRun.ie have commissioned you as an e Marketing specialist to develop a profitable e Marketing campaign with the emphasis on the website and social media which will reach, have impact and ultimately convert their target audience to buy the bugg..
Determine the slip at which maximum torque is developed : Calculate the parameters of the equivalent circuit shown in Figure 13.2.5(c).
Connections between business-law-politics and ethics : Please discuss Credit, Mortgages, and Debtor’s Rights emphasizing the connections between business, law, politics and ethics. What rights do Debtors and Creditors have under the law?
Expansion and closed for modification : The most important fact is that your design/code needs to be opened for expansion and closed for modification; i.e. we want to be able to expand the functionality by plugging in additional features, like enabling to add more items (Bluetooth, Inte..
Describe general function of performance management systems : Describe the general function of performance management systems. If the company you choose does not use a performance management system, would you recommend it use one? Why or why not?
Determine a pattern of liver-specific amino acid residues : Determine a pattern of liver-specific amino acid residues, ie those amino acids conserved in all liver forms but not in the brain forms. Provide your pattern.
Important aspect of formatting : 1. Which rules does an expert have to follow to prepare and submit a report? 2. What is destroying a report before the final resolution of a case called?
How do european nations deal with ex-cons : From the perspective of social labeling theory, why is it so difficult to successfully reintegrate ex-convicts into mainstream economy and society? How Do European Nations Deal with Ex-Cons?

Reviews

Write a Review

Basic Computer Science Questions & Answers

  Identifies the cost of computer

identifies the cost of computer components to configure a computer system (including all peripheral devices where needed) for use in one of the following four situations:

  Input devices

Compare how the gestures data is generated and represented for interpretation in each of the following input devices. In your comparison, consider the data formats (radio waves, electrical signal, sound, etc.), device drivers, operating systems suppo..

  Cores on computer systems

Assignment : Cores on Computer Systems:  Differentiate between multiprocessor systems and many-core systems in terms of power efficiency, cost benefit analysis, instructions processing efficiency, and packaging form factors.

  Prepare an annual budget in an excel spreadsheet

Prepare working solutions in Excel that will manage the annual budget

  Write a research paper in relation to a software design

Research paper in relation to a Software Design related topic

  Describe the forest, domain, ou, and trust configuration

Describe the forest, domain, OU, and trust configuration for Bluesky. Include a chart or diagram of the current configuration. Currently Bluesky has a single domain and default OU structure.

  Construct a truth table for the boolean expression

Construct a truth table for the Boolean expressions ABC + A'B'C' ABC + AB'C' + A'B'C' A(BC' + B'C)

  Evaluate the cost of materials

Evaluate the cost of materials

  The marie simulator

Depending on how comfortable you are with using the MARIE simulator after reading

  What is the main advantage of using master pages

What is the main advantage of using master pages. Explain the purpose and advantage of using styles.

  Describe the three fundamental models of distributed systems

Explain the two approaches to packet delivery by the network layer in Distributed Systems. Describe the three fundamental models of Distributed Systems

  Distinguish between caching and buffering

Distinguish between caching and buffering The failure model defines the ways in which failure may occur in order to provide an understanding of the effects of failure. Give one type of failure with a brief description of the failure

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