Reference no: EM133701897
Algorithms and Data Structures
Introduction:
In this assessment, you will create a solution for the analysis and design of a real-world scenario using object-oriented modelling tools.
The scenario should be based on case study given below.
This showcases evidence of your ability to deconstruct a range of complex problems and showcase your approach using various modelling tools.
Learning outcome 1: Select and develop algorithms to solve a range of complex problems.
Learning outcome 2: Apply object-oriented analysis and design techniques to develop software with multiple component parts.
Learning outcome 3: Evaluate common algorithms and data structures.
Task:
You are to create a technical solution for the analysis and design of a real-world scenario using object-oriented modelling tools (such as UML 2.0). All design decision must be supported by justification and rational in relation to the analysis outcome.
The scenario should be based on case study given below:
The solution will include supporting evidence, such as code snippets and diagrams with accompanying textual justifications.
The final report must include and not more than 10 pages in total:
Introduction & Problem Analysis
UML Class Diagram
Code to test the program with appropriate test cases
Indicative Learning Summary Report which mapping the intended module learning outcomes and topic under discussion. Learners are to exhibit how these topics was being applied to solve the case study.
List of reference
You are advice to provide proper caption for each diagram or figure included in your report and elaborate the diagram.
Case Study:
In this assignment, you will design various classes and write a program for calculating how much a property agent might earn in a year through selling properties.
Create a Property class with an address, 6 digit postal code number, tenure, completion year, property type, area, commission rate and valuation. Add appropriate constructors and member functions to initialize, access, and manipulate the data members. Commission rate is default to 1%.
Design the class CommercialProperty, that extends from the class Property, with an additional data member to store the commercial property type (for office, flatted factory, factory). Add appropriate constructors and member functions to initialize, access, and manipulate the data members.
Create a PropertyAgent class that holds 2 list of properties. One list of properties held are the ones that the property agent has not sold, while another list of properties holds the properties sold by the agent during the year. The PropertyAgent would also have data members commission sharing rate default to 70%, the company he worked for, his/her agent registration number and the year the agent began working.
Design the class PropertyAgencyDirector that extends from the PropertyAgent class with an additional data member default to 5% to a maximum of 15% of the commission earned by the agent and a list of agents working under him/her. The commission sharing rate is now default to 75% and is at maximum 90% of commissions earned.Design the class CommissionSlip to calculate and display an agent's commission earned for the year based on the properties sold (based on the commission rate) multiplied by the commission sharing rate. Eg. If the agent sold a property worth $1 million with commission rate of 1% and his sharing rate is 70%, the commission earned will be $1,000,000 * 0.01 * 0.7= $7,000. If the agent is a Property Agent Director, then he/she will have overriding commission of his/her agents at the rate. The commission slip shall therefore show the breakdown of commissions earned per property, the commission sharing for each property, the total commission earned for the property agent. If the agent is a directory, there will be the breakdown of the overriding income for each agent and the total overriding income earned as well as the total income earned.Write a program to create at least 2 different directors with at least 3 different agents each. Each agent shall hold at least 5 properties that are unsold and 3 to 10 properties sold per agent. Print the commission slip for each agent and director.