Object Oriented Design and Programming | My Assignment Tutor

Kent Institute Australia Pty. Ltd.Assessment Brief ABN 49 003 577 302 CRICOS Code: 00161E RTO Code: 90458Version 2: 11th October, 2019 TEQSA Provider Number: PRV12051ASSESSMENT BRIEF COURSE: Bachelor of Information TechnologyUnit:Object Oriented Design and ProgrammingUnit Code:OODP101Type of Assessment:Assessment 4 – Solution to programming problem by group of 3-4 studentsLength/Duration:20 HoursUnit LearningOutcomes addressed:Upon successful completion of this unit students should be able to:1. Demonstrate basic knowledge of object-oriented programming concepts andprogramming problems2. Analyse and dissect simple design and programming problem3. Implement a well-designed modularized solution to small programming problems4. Develop and/or implement testing schedulesSubmission Date:Week 11Assessment Task:A group of 3-4 students will work together to provide a quality solution toprogramming problem using JAVA programming language,Total Mark:30 marksWeighting:Converted to 30% of the unit total marksStudents are advised that submission of an Assessment Task past the due date without a formallysigned approved Assignment Extension Form (Kent Website MyKent Student Link> FORM – AssignmentExtension Application Form – Student Login Required) or previously approved application for otherextenuating circumstances impacting course of study, incurs a 5% penalty per calendar day,calculated by deduction from the total mark.For example. An Assessment Task marked out of 40 will incur a 2 mark penalty for each calendar day.More information, please refer to (Kent Website MyKent Student Link> POLICY – Assessment Policy &Procedures – Student Login Required) Kent Institute Australia Pty. Ltd.Assessment Brief ABN 49 003 577 302 CRICOS Code: 00161E RTO Code: 90458Version 2: 11th October, 2019 TEQSA Provider Number: PRV12051ASSESSMENT DESCRIPTION:Your task will be to design and develop a programming solution to a problem using JAVAprogramming language.BackgroundThe system that you will create is a Hotel Management System (HMS). The HMS is a tool used by ahotel that manages rooms, amenities and their bookings by customer. The hotel has different typesof rooms to cater the needs of different customers and has various amenities to choose from.Each room has a unique ID, features, price and location in the hotel. For each hotel room, there are anumber of available amenities for ordering by guests. (For example: – Room no 1 has one queen bed,$200 price and at extreme left corner of ground floor and have included amenities like wifi, TV withNetflix, Laundry, Breakfast, Lunch, Dinner, Coffee machine, AC, Heater etc. Following are the numberof amenities available in hotel rooms:1. Free WIFI2. TV with Netflix3. Laundry containing washer and dryer4. Air Conditioner5. Heater6. Coffee machine7. Breakfast8. Lunch9. Dinner10. Undercover barbeque area11. Electric Blankets12. Toasters13. MicrowaveThis IT system, HMS, will enable the manager to customise and save different types of rooms to thesystem as well as view the stored list of rooms. It will be possible to inspect details for each room. Thedetails will include specifics of the rooms as well as specific details regarding amenities that can beadded to rooms. Each amenity will have an ID, name, description and basic price associated with it.There are following room types in the hotel that you have to incorporate in your system:1. A deluxe queen room is suitable for couples, has queen bed in it, number of amenities and 10%discount is available on its original price.2. A deluxe 2 queen is suitable for family, has two queen beds in it, number of amenities and 5%discount is available on its original price.3. A deluxe spa is suitable for travellers or any needing relaxation, has one self-contained spa, onequeen bed, number of amenities and surcharge of $50 is added on its original price for spafacility.4. A family suite is suitable for family, has one queen bed and two single beds, a number ofamenities and 15% discount is available on its original price.5. Two bedroom family suite is suitable for big family, has two self-contained two bedrooms withqueen beds, attached bathrooms, number of amenities and 5% discount is available on itsoriginal price.Kent Institute Australia Pty. Ltd.Assessment Brief ABN 49 003 577 302 CRICOS Code: 00161E RTO Code: 90458Version 2: 11th October, 2019 TEQSA Provider Number: PRV12051Customer can book more than one room at a time and can add various amenities into their roomsaccording to their requirements. The HMS will give discount to customers according to their status.When customer book rooms, system will ask the status of customer and discounts will be givenaccording to following information.1. Active customers are the one who visits hotel at least once a week and will get 5% discount onevery order they made.2. VIP customers are the one who have been visiting hotel from more than one year and will get10% discount on all orders.3. New Customers will not get any discounts.Once a room is booked, HMS will calculate the total of order and will issue invoice to customer.Requirement 1: Class DiagramThis section expects you to create a class diagram after reading the coding requirements. Your classdiagram should have proper relationships between classes, all possible attributes, constructors andmethods that your class files will have. You need to use correct notation which is discussed in class.Requirement 2: Coding2.1 Create Room class which will have basic attributes as given in background information.a) A default constructor which assigns each instance variable a default value.b) A constructor with parameters which assign values to each instance variable. Note thatthe values to initialise in the objects should be passed in using arguments when theconstructor is called.c) Author get and set methods for your classes for instance variables where appropriate.d) This class has array of amenities, so you need to add proper methods to add the itemsinto the array, remove the items and retrieve the item from the array.e) You need to write proper toString() method to display the details of room and amenitiesin it.2.2 Create sub-classes of room class as given in background information.You must provide the following in each particular specialised room class.a. All the room classes have (at least) the following attributes: RoomID (int), features(String), Description (String), Price(double) which will be inherited from super class andone additional attribute of your own choice.b. A default constructor which assigns each instance variable a default value. The Stringvariables (e.g. features) should be initialised to “unknown”, the price should beinitialised to a minimum default price and any object fields initialised to null.c. A constructor with parameters which assign values to each instance variable. Note thatthe values to initialise in objects should be passed in using arguments when theconstructor is called.d. Author get and set methods for your classes for instance variables where appropriate.e. Write a toString() method in each class that will return a String containing all therelevant data for each of your objects.f. In each of your specialised room classes, override the setPrice() method to perform anappropriate price calculation based on the amenities in the object.Kent Institute Australia Pty. Ltd.Assessment Brief ABN 49 003 577 302 CRICOS Code: 00161E RTO Code: 90458Version 2: 11th October, 2019 TEQSA Provider Number: PRV120512.3 Create a class for amenities which will have attributes ID (int), name (String), Description (String),price (double). These amenities will be stored in each room in form of array or arrayList.a. A default constructor which assigns an instance variable a default value.b. A constructor with parameters which assign values to each instance variable.c. Write get and set methods for your classes for instance variables where appropriate.d. Write a toString() method in this class that will return a String containing all the relevantdata for each of your objects2.4 Create a customer class which will have name (String), discount (double) and status (String) as itsattributes.a. A default constructor which assigns an instance variable a default value. Note: You donot want customer to do any manipulations with the discount value. It will be calculatedaccording to the status.b. A constructor with parameters which assign values to each instance variable.c. Write get and set methods for your classes for instance variables where appropriate.d. Write a toString() method in each class that will return a String containing all therelevant data for each of your objectse. setDiscount() method will calculate and set the discount according to status of customer.2.5 In HotelDriver class, create a main method and do as follows:a) Create two objects of each room type.b) Create all amenities as given in background information. You can create more of yourchoice.c) Display a welcome message which should have following information in it:i. The welcome message should have a row of “*” at the topand the bottom, just long enough to extend over the text.Hint: Use a loop for this.ii. The first line of the message should read “WELCOME TOHOTEL MANAGEMENT SYSTEM”iii. The second line of the message should be blank.iv. The third line should read “Developed by” followed byyour names and a comma, then “student ID”, then yourstudent ids of all group members.v. The fourth line should display “OODP101 Object OrientedDesign and Programming Assessment Task 4”vi. The fifth line should display the current date and time ofsystem.vii. The sixth line should be blank, and the seventh line shouldbe another row of “*”d) Ask user if they want to place order. If yes, ask the name and status of customer and saveit because you will need it for calculating the final price and printing the final output.e) Display all created room types and ask user to enter the room they want to book usingroom ID.Kent Institute Australia Pty. Ltd.Assessment Brief ABN 49 003 577 302 CRICOS Code: 00161E RTO Code: 90458Version 2: 11th October, 2019 TEQSA Provider Number: PRV12051f) Once room is selected, display the list of amenities to user that they can add in theirbooking. Ask user to select amenities with the help of ID and user can add more than oneamenity in one room.g) Populate each room with all selected amenities. Your room class is having array orarrayList of objects and methods to add these amenities in the rooms. Use thosemethods here to add amenities in the room.h) Ask user if they want to book another room, repeat the steps from a) to e).i) When user wish to finish order, program should calculate the total of all room price,amenities price and deducting customer discount according to the status they entered.j) Display the total amount due with all the details of order.2.6 Document all methods in your code using comments and by following proper coding standards.ASSESSMENT SUBMISSION:Class diagram file and Java project exported from eclipse will be submitted on moodle.This assignment should be submitted online in Moodle .The assignment MUST be submitted electronically in Microsoft Word format. Other formats may notbe readable by markers. Please be aware that any assessments submitted in other formats will beconsidered LATE and will lose marks until it is presented in Word.For assistance please speak to our Academic Learning Skills Coordinators, in Sydney([email protected]) or in Melbourne ([email protected]). They can help you withunderstanding the task, draft checking, structure, referencing and other assignment-related matters.GENERAL NOTES FOR ASSESSMENT TASKSContent for Assessment Task papers should incorporate a formal introduction, main points andconclusion.Appropriate academic writing and referencing are inevitable academic skills that you must developand demonstrate in work being presented for assessment. The content of high quality work presentedby a student must be fully referenced within-text citations and a Reference List at the end. Kentstrongly recommends you refer to the Academic Learning Support Workshop materials available onthe Kent Learning Management System (Moodle). For details please click the linkhttp://moodle.kent.edu.au/kentmoodle/mod/folder/view.php?id=3606 and download the file titled“Harvard Referencing Workbook”. This Moodle Site is the location for Workbooks and informationthat are presented to Kent Students in the ALS Workshops conducted at the beginning of eachTrimester.Kent recommends a minimum of FIVE (5) references in work being presented for assessment. Unlessotherwise specifically instructed by your Lecturer or as detailed in the Unit Outline for the specificAssessment Task, any paper with less than five (5) references may be deemed not meeting asatisfactory standard and possibly be failed.Kent Institute Australia Pty. Ltd.Assessment Brief ABN 49 003 577 302 CRICOS Code: 00161E RTO Code: 90458Version 2: 11th October, 2019 TEQSA Provider Number: PRV12051Content in Assessment tasks that includes sources that are not properly referenced according to the“Harvard Referencing Workbook” will be penalised.Marks will be deducted for failure to adhere to the word count if this is specifically stated for theAssessment Task in the Unit Outline. As a general rule there is an allowable discretionary variance tothe word count in that it is generally accepted that a student may go over or under by 10% than thestated length.GENERAL NOTES FOR REFERENCINGReferences are assessed for their quality. Students should draw on quality academic sources, such asbooks, chapters from edited books, journals etc. The textbook for the Unit of study can be used as areference, but not the Lecturer Notes. The Assessor will want to see evidence that a student is capableof conducting their own research. Also, in order to help Assessors determine a student’sunderstanding of the work they cite, all in-text references (not just direct quotes) must include thespecific page number(s) if shown in the original. Before preparing your Assessment Task or owncontribution, please review this ‘YouTube’ video (Avoiding Plagiarism through Referencing) by clickingon the following link: link: http://moodle.kent.edu.au/kentmoodle/mod/folder/view.php?id=3606A search for peer-reviewed journal articles may also assist students. These type of journal articles canbe located in the online journal databases and can be accessed from the Kent Library homepage.Wikipedia, online dictionaries and online encyclopaedias are acceptable as a starting point to gainknowledge about a topic, but should not be over-used – these should constitute no more than 10% ofyour total list of references/sources. Additional information and literature can be used where theseare produced by legitimate sources, such as government departments, research institutes such as theNational Health and Medical Research Council (NHMRC), or international organisations such as theWorld Health Organisation (WHO). Legitimate organisations and government departments producepeer reviewed reports and articles and are therefore very useful and mostly very current. The contentof the following link explains why it is not acceptable to use non-peer reviewed websites (Why can’t Ijust Google?): https://www.youtube.com/watch?v=N39mnu1Pkgw(Thank you to La Trobe University for access to this video).Kent Institute Australia Pty. Ltd.Assessment Brief ABN 49 003 577 302 CRICOS Code: 00161E RTO Code: 90458Version 2: 11th October, 2019 TEQSA Provider Number: PRV12051MARKING GUIDE (RUBRIC): Marking CriteriaMarksRequirement 1- Class DiagramClass diagram should have following:-All the classes given in specification (2 marks)-All attributes and methods (1.5 marks)-Correct notation and relationship between classes (1.5 marks)5Requirement 2- Coding2.1 Room ClassRoom Class has:– All mentioned attributes (0.25 Mark)– Default constructor (0.25 Mark)– Parametrized constructor (0.25 Mark)– Getters and Setters (0.5 Mark)– toString()(0.25 Mark)– Method to add, retrieve and remove the elements of array(0.5 Mark)2.2 Sub-Classes of RoomAll sub-classes have:– All mentioned attributes (1.25 Mark- 0.25 per class)– Default constructor (1.25 Mark- 0.25 per class)– Parametrized constructor (1.25 Mark- 0.25 per class)– Getters and Setters including overridden setPrice() accordingto condition (5 Mark- 1 per class)– Overridden toString() Method (1.25 Mark- 0.25 per class)29 Kent Institute Australia Pty. Ltd.Assessment Brief ABN 49 003 577 302 CRICOS Code: 00161E RTO Code: 90458Version 2: 11th October, 2019 TEQSA Provider Number: PRV12051 2.3 Amenities ClassAmenities Class has:– All mentioned attributes (0.25 Mark)– Default constructor (0.5 Mark)– Parametrized constructor (0.5 Mark)– Getters and Setters (0.5 Mark)– toString()(0.25 Mark)2.4 Customer ClassCustomer Class has:– All mentioned attributes (0.25 Mark)– Default constructor (0.5 Mark)– Parametrized constructor (0.5 Mark)– Getters and Setters (0.5 Mark)– toString()(0.25 Mark)2.5 HotelDriver Class– Creation of ten objects to Room Types (2 Mark)– Creation of amenities as per requirements (1 Mark)– Welcome message and option to ask for placing order(1Mark)– Displaying the list of rooms and list of amenities (2 Marks)– Population of each room with user selected amenities (1Mark)– User can book more than one room and can add multipleamenities (1 Mark)– Complete order and proper invoice as per requirements (2Mark)2210Total30

QUALITY: 100% ORIGINAL PAPER – NO PLAGIARISM – CUSTOM PAPER

Leave a Reply

Your email address will not be published. Required fields are marked *