Develop a java application for fedhire employees
Course:- Software Engineering
Reference No.:- EM131189091

Assignment Help
Expertsmind Rated 4.9 / 5 based on 47215 reviews.
Review Site
Assignment Help >> Software Engineering

Software Engineering: Analysis and Design Assignment-


You are required to design and develop a small Java console application. Completion of this assignment requires an understanding of:

  • Analysis and design techniques, including development of use cases and UML diagrams - specifically, use case diagrams, class diagrams and sequence diagrams
  • Object-oriented programming, focusing on polymorphism and the use of interfaces

Learning Outcomes Assessed

The following course learning outcomes are assessed by completing this assessment:

  • Understand the significance of detailed project planning and control, good communication and documentation and the use of appropriate tools in order to provide a quality product
  • Understand the distinction between software engineering and programming, and thus the distinction between a software configuration and a program
  • Understand the methods and techniques involved in designing, implementing and maintaining an information system, in particular using an object-oriented approach
  • Demonstrate skills in designing and implementing an information system

Assessment Details

FedHire is a car hire company that offers vehicle rentals to its clients. Clients are able to hire vehicles according to availability and preference. FedHire offers 10% loyalty discount on the rental fees to members of its loyalty club. No discount is offered to standard clients who are not members of the loyalty club. A special discount of 20%, is offered to clients who are also employees of the company.

You have been hired to design and develop a Java application for FedHire employees to manage the car rental system. The application should have an interactive menu, allowing the user to select the type of client (standard, loyalty member or staff member) making the booking and determine and track the appropriate discounts. The menu should also provide different other options, such as, displaying clients list, generating a report to display the current payments received, and quitting the execution. In the report the payments should be broken down into different categories of bookings such as standard, loyalty and staff, and the total discounts given in each category (using the discounted values where appropriate). At this stage there is no need for data to persist once the program finishes execution.

FedHire wants the system to be flexible so that users can include additional functionality at a later date without having to rewrite the entire program. This means you will need to use an interface for processing payments, and polymorphism for the various payment classes, so that new, different payment types may be added at a later date with minimal updates to the code. FedHire asked that you provide it with some documentation before you commence coding, so that the manager is able to verify that the program you intend to code will address the business requirements. The manager would like to see use cases that summarizes the requirements in written format, as well as use case diagrams, class diagrams and sequence diagrams.

Startup codes are provided herewith for your convenience. You are free to use, update and build your program on this. You are also free to start from scratch. A sample expected output of an execution of a complete program is also attached. Notice in the sample output the clients 1, 2, and 3 are hard coded in the program; clients 4, 5, and 6 are entered at execution. Similarly, your program should include hard coded clients, at least one client in each category.

Put your comment

Ask Question & Get Answers from Experts
Browse some more (Software Engineering) Materials
Data flow diagrams (DFDs) are utilized for documenting logical design of information system by illustrating graphically different entry and exit touch points in a HMIS.
Develop a DTD for a catalog of cars, where each car has child elements make, model, year, color, engine, number_of_doors, transmission_type, and accessories.
Every morning the Advocacy cases from the previous day go to the unions staff attorney who determines if the case must be handled internally or refered to an external law fi
Business operations traditionally use IT to "run the business". Examples of operational systems are ERP systems such as SAP, Oracle Business Suite, and Lawson or CRM applica
Consider a situation in which your team has just finished the design phase and is about to start coding. Your key applications designer just walked in and handed you a resig
Draw the E-R diagram which models an online bookstore. List entity sets and their primary keys. Assume the bookstore adds music cassettes and compact disks to its collection.
what is the difference between cloud storage and cloud computing? In a sentence, it means that the provider is actually manipulating data based on your input. Such data is o
"Why Six-Sigma Efforts Do Not Apply to Software" consider a situation where you are working for a large software development company that is considering applying the Six-Sig