{"id":88983,"date":"2022-11-14T16:13:38","date_gmt":"2022-11-14T16:13:38","guid":{"rendered":"https:\/\/nursingstudybay.com\/?p=88983"},"modified":"2022-11-14T16:13:41","modified_gmt":"2022-11-14T16:13:41","slug":"cse1ofx-object-oriented-programming-fundamentals","status":"publish","type":"post","link":"https:\/\/www.studyproessays.com\/help\/cse1ofx-object-oriented-programming-fundamentals\/","title":{"rendered":"CSE1OFX Object Oriented Programming Fundamentals"},"content":{"rendered":"<p>Assessment 3<br \/>\nCar Rental<br \/>\nCSE1OFX Object Oriented Programming Fundamentals<br \/>\nBefore you begin<br \/>\nObjectives<br \/>\nThis is an individual assignment. Students are not permitted to work in a group when writing this assignment.<br \/>\n? Discuss the concepts of classes, objects, encapsulation and inheritance relating to objectoriented programming paradigm and apply them to solve a real-world problem.<br \/>\n? Analyse mathematical, scientific and other types of problems and design logical solutions for each, suitable for implementing as a computer program.<br \/>\n? Use an object-oriented programming language, and associated class libraries, to develop object-oriented programs.<br \/>\n? Use a development environment to develop, test, and debug programs that solve a given problem.<br \/>\n? Design and develop a test plan to ensure that a given programming solution works as anticipated in both expected and unexpected scenarios.<br \/>\n? Construct appropriate diagrams and textual descriptions to communicate the static structure and the dynamic behaviour of any object-oriented programming solution.<\/p>\n<p>Summary<br \/>\nA car hire company is an organisation that rents out cars and other vehicles to customers over a set period of time, usually ranging from a couple of days to a couple of weeks.<br \/>\nHiring a car is a common practice for those who have taken a plane to a destination and wish to be able to manage their own transport needs on the ground. It is also becoming increasingly common for residents of a town to avoid the ongoing expenses of owning their own car, and to simply hire a car locally whenever they need one.<br \/>\nIn this assessment task you will create your own Java object-oriented console based (command line) program that will allow a customer to make a partial booking of a vehicle through a car hire company. The car booking system will be implemented with text prompts, standard output, and ASCII-art drawing where required. You will also need to read data from a file in CSV format.<br \/>\nIt is strongly recommended that you read through the entire assessment before commencing any of the tasks.<br \/>\nScenario<br \/>\nCarrington Cars has been a player in the car rental market for many years. The organisation prides itself on customer service and has numerous rental centres in convenient locations around the city of Melbart. The organisation has recently seen a significant increase in the number of customers arriving at their centres without securing a booking online. In many cases the staff at centres are overwhelmed, leading to delays in customer support. To streamline the customer service experience Carrington wish for customers to be able to make a partial booking onsite using an in-store console-based system. This partial booking is then finalised by Carrington staff in person with the customer when they become available.<br \/>\nSolution design<br \/>\nClasses<br \/>\nIt is expected that the solution will comprise eight classes as outlined below:<br \/>\nFunctionality<br \/>\nIt is expected that your solution will have the following functionality:<br \/>\n\u2022 The user should be presented with an initial welcome message.<br \/>\n\u2022 Details on the cars to be hired (including daily rates) are to be retrieved from a file named \u2018carlist.csv\u2019 (provided) and displayed in a tabular format. An appropriate error message should be displayed if the file is unable to be retrieved.<br \/>\n\u2022 The program should allow the user to enter a selection to proceed or exit from the program<br \/>\ni.e. user to be given the following options: o Make a booking o Exit<br \/>\n\u2022 The program should allow a user to select a car that they would like from the list<br \/>\n\u2022 The program should include prompts for the user to enter start and end dates of a hire.<br \/>\nThese should be:<br \/>\no A prompt for the year o A prompt for the month o A prompt for the day<br \/>\n\u2022 The program should capture the following details from a user: o Name o Email o Address<br \/>\n\u2022 There are two types of cars:<br \/>\no Standard cars (as represented in the Car class). Standard cars have a base daily rate of hire.<br \/>\no Premium cars (as represented in the PremiumCar class, an extension of the Car class). On top of the daily rate, there is an extra cost with the hire of premium cars that being:<br \/>\n? The need to pay insurance on the hire of a premium car. Insurance is calculated as 5% of the daily rate.<br \/>\n\u2022 The program should calculate the cost of the hire dependent upon:<br \/>\no Daily rate of hire o Number of days of hire<br \/>\no Extra costs for premium cars (as outlined above)<br \/>\n\u2022 Once all details have been collected from the user, the following information should be displayed to the user as a summary:<br \/>\no Customer details o Booking confirmation o Car hired o Start and end dates of hire o Number of days of hire o Rate per day<br \/>\no Total cost of hire<br \/>\nExample of Expected Implementation<br \/>\nRefer to Figure 1 for an example of how the user interface might be presented<br \/>\nFigure 1 shows the following functionality in action:<br \/>\n\u2022 Display to user of the list of cars available and the total records displayed (drawn from information provided in carlist.csv file)<br \/>\n\u2022 User given initial menu to make a booking or exit the program<br \/>\n\u2022 User able to select their choice of car (with informative error message if invalid selection is made)<br \/>\n\u2022 User able to enter the start and end dates of their booking<br \/>\n\u2022 User able to enter relevant personal details (name and contact information)<br \/>\n\u2022 Display of summary of booking details<br \/>\n\u2022 User able to continue with another booking or exit the program<br \/>\nAssessment Tasks<br \/>\nTask overview<br \/>\nThe first two tasks are focused on the development of a UML diagram while the remaining tasks are based on implementing and testing the program.<br \/>\nIt is recommended that you read through the information and requirements of all tasks below prior to commencing any work on your project ( help with nursing paper writing from experts with MSN &#038; DNP degrees), and that you complete the structure of your UML diagram before proceeding with later tasks.<br \/>\nCode in your solution should abide by the following best practices:<br \/>\n\u2022 Error handling for user input.<br \/>\n\u2022 Consistent code indentation with one level of indentation per block. \u2022 Code commenting for each class, all methods, and inline comments \u2022 Naming conventions adhered to.<br \/>\n\u2022 Reasonable code line lengths.<br \/>\nIt is also recommended that you review the assessment rubric at the end of this document for a better understanding of the basis on which your submission will be marked.<br \/>\nTasks 1-2: UML Diagram<br \/>\nCreate a complete UML class diagram using Visio for the Car Rental program.<br \/>\nTask 1: UML Classes<br \/>\nRepresent classes on the UML diagram based on the information provided in the class descriptions in Tasks 3-10 below<br \/>\nTask 2: UML Class Relationships<br \/>\nRepresent the relationships between classes on the UML diagram including multiplicities (where required) and relationship names.<br \/>\nTasks 3 &#8211; 10: Implementation<br \/>\nTasks 3-10 describe the classes that together make up the overall program.<br \/>\nImplementation tips for Tasks 3-10<br \/>\nTry to break down the logic in the assessment into small sections. In general, you should focus on implementing, testing and running small sections of the assessment at a time. This ensures that building blocks for your assessment are sound. Also, if you make any errors in your code, they will be more easily identified and rectified.<br \/>\nIf you find that any of the methods are particularly long, you are welcome to introduce additional \u2018helper\u2019 methods to break up your work.<br \/>\nMake sure that you lodge a support request if you would like any guidance.<br \/>\nTask 3: MenuDisplay Class<br \/>\nThis class manages the retrieval of available cars from a CSV file and displays them to the user.<br \/>\nMenuDisplay Constructors and methods:<br \/>\nName Return value Input parameters Description<br \/>\ndisplayCarList int None Displays list of cars to user in tabular format and returns the number of cars available. Refer to Figure 1.<br \/>\ngetSelection int None Prompt to make booking or exit from the system.<br \/>\nTask 4: CarAndBookingDates Class<br \/>\nThis class manages user selections of the car be hired, and the dates they would like to hire.<br \/>\nCarAndBookingDates Instance variables:<br \/>\nName Data Type Description<br \/>\nyear int Contains the year value<br \/>\nmonth int Contains the month value<br \/>\nday int Contains the day value<br \/>\nCarAndBookingDates Constructors and methods:<br \/>\nName Return value Input parameters Description<br \/>\nCarAndBookingDates n\/a None Constructor to initialise instance variables with default values<br \/>\ncarSelection int int carsAvailable Prompts user for entry of a Car ID number and validates based on the records available. If the car number selected is not found,<br \/>\nappropriate error message to be displayed and retakes the input until a valid selection is made.<br \/>\nReturns a valid selection.<br \/>\ncarsAvailable: the input parameter contains the total record retrieved from the CSV file.<br \/>\ngetCarBookingDateFull LocalDate None Calls the Year, Month and Day of booking date input methods.<br \/>\nMethod collates the date inputs and returns as a LocalDate format.<br \/>\npromptForYear int None User prompt for year of date<br \/>\npromptForMonth int None User prompt for month of date<br \/>\npromptForDay int None User prompt for day of date<br \/>\nvalidateYearString boolean String year Check if year value is valid<br \/>\nvalidateMonthString boolean String month Check if month value is valid<br \/>\nvalidateDayString boolean String day Check if day value is valid<br \/>\nTask 5: CarBooking Class<br \/>\nThis class does all the work of calculating duration and cost of the hire of a car.<br \/>\nCarBooking Instance variables:<br \/>\nName Data Type Description<br \/>\nstartDate LocalDate Start Date of Booking<br \/>\nendDate LocalDate End date of Booking<br \/>\ncarNumber int ID number of car<br \/>\ntotalDays long Duration of booking in days<br \/>\nnewRate double Calculated rate of booking<br \/>\ncost double Total cost of booking<br \/>\ncar Car Car that is associated with booking<br \/>\nCarBooking Constructors and methods:<br \/>\nName Return value Input parameters Description<br \/>\nCarBooking n\/a LocalDate startDate, LocalDate endDate, int carNumber Constructor to initialise instance variables.<br \/>\nmakeBooking void None The method reads the CSV file: implement them with the try\/catch mechanism and print an error message and exit when caught. And<br \/>\nCar number selected would be required to retrieve the details and store them in an array.<br \/>\nBased on the car type determine if a new rate is required or the existing rate to total calculate cost.<br \/>\nCalls the calculateTotalDays and calculateCost methods.<br \/>\ncalculateTotalDays void None Calculates the difference in days between the start date and the end date of the booking<br \/>\ncalculateCost void double newRate long totalDays Sets the cost of a booking based on the rate by the number of days<br \/>\ngetCost double None Accessor method for \u2018cost\u2019<br \/>\ngetStartDate Date None Accessor method for \u2018startDate\u2019<br \/>\ngetEndDate Date None Accessor method for \u2018endDate\u2019<br \/>\ngetTotalDays long None Accessor method for \u2018totalDays\u2019<br \/>\ngetCarNumber Int None Accessor method for \u2018carNumber\u2019<br \/>\ngetNewRate double None Accessor method for \u2018newRate\u2019<br \/>\ngetCarName String None Accessor method for \u2018carName\u2019<br \/>\nTask 6: Car Class<br \/>\nThis class holds information related to individual cars that are available for hire.<br \/>\nCar Instance variables:<br \/>\nName Data Type Description<br \/>\ncarRate double The base cost of hiring a car<br \/>\ncarName String The name of the type of car<br \/>\nCar Constructors and methods:<br \/>\nName Return value Input parameters Description<br \/>\nCar n\/a String carName double carRate Constructor to initialise instance variables.<br \/>\ngetCarRate double None Accessor method for \u2018carRate\u2019<br \/>\ngetCarName String None Accessor method for \u2018carName\u2019<br \/>\nTask 7: PremiumCar Class<br \/>\nThis class is an extension of the Car class. As such, all existing functionality is automatically inherited. This documentation lists additions and differences only.<br \/>\nPremiumCar Instance variables:<br \/>\nName Data Type Description<br \/>\nINSURANCERATE double Constant representing the percentage rate of insurance: 0.05<br \/>\nPremiumCar Constructors and methods:<br \/>\nName Return value Input parameters Description<br \/>\nPremiumCar n\/a double carRate Constructor to initialise instance variables.<br \/>\nString carName<br \/>\ngetCarRate double None Override method of Car class<br \/>\nTask 8: Customer Class<br \/>\nThis class manages the details of the customer looking to hire a car.<br \/>\nCustomer Instance variables:<br \/>\nName Data Type Description<br \/>\ncustomerName String Name of the customer<br \/>\ncustomerEmail String Email address of the customer<br \/>\ncustomerAddress String Address of the customer<br \/>\nCustomer Constructors and methods:<br \/>\nName Return value Input parameters Description<br \/>\nCustomer n\/a String customerName<br \/>\nString customerEmail<br \/>\nString customerAddress Constructor to initialise instance variables.<br \/>\ngetCustomerName String None Accessor method for \u2018customerName\u2019<br \/>\ngetCustomerEmail String None Accessor method for \u2018customerEmail\u2019<br \/>\ngetCustomerAddress String None Accessor method for \u2018customerAddress\u2019<br \/>\nTask 9: PrintBookingDetails Class<br \/>\nThis class displays details of a finalised booking to the user.<br \/>\nPrintBookingDetails Constructors and methods:<br \/>\nName Return value Input parameters Description<br \/>\nprintBookingDetails void CarBooking carBooking<br \/>\nCustomer customer Displays the details of booking to customer or user<br \/>\nTask 10: CarRentalTester Class<br \/>\nThis is the overall entry point for the program and has the following functionality:<br \/>\n\u2022 Controlling access to the main menu, customer details and car booking information.<br \/>\n\u2022 The main method invokes and captures the values from: displayCarList(), carSelection(\u2026), getCarBookingDateFull(). Values captured are passed as input parameter to methods and objects instantiated.<br \/>\n\u2022 Other necessary methods, such as makeBooking() and printBookingDetails(\u2026) are also invoked from the driver class. Apply necessary iteration to loop the program.<br \/>\nCarRentalTester Instance variables:<br \/>\nName Data Type Description<br \/>\nmenu MenuDisplay Instance of the MenuDisplay class<br \/>\ncustomer Customer Instance of the Customer class<br \/>\ncarBooking CarBooking Instance of the CarBooking class<br \/>\ncarAndBookingDates CarAndBookingDates Instance of the CarAndBookingDates class<br \/>\nCarRentalTester Constructors and methods:<br \/>\nName Return value Input parameters Description<br \/>\nmain void None Entry point for program.<br \/>\nTask 11: Test scenario<br \/>\nDownload and fill in the Test_Case_Template.docx from the learning portal. The template will be used for testing the date input.<br \/>\nThe test scenario should cover the following tests that generate valid outcomes:<br \/>\n1. The duration for hire is greater than zero<br \/>\n2. The duration for hire is 30 days or less for the month of November<br \/>\n\u2026and the following test cases that generate invalid outcomes:<br \/>\n3. The duration for hire is less than zero<br \/>\n4. The duration for hire is 32 days or more for the month of January 5. The duration for hire is 31 days or more for the month of November.<br \/>\nTask 12: Testing the code<br \/>\nAfter you have finished writing your code, test it by performing the following tasks. Your response must include a screenshot of the output for each of the following. These tasks have a combination of valid and invalid tests. Note that that an invalid entry should catch the validation applied.<br \/>\n1. Test for exception handling with file retrieval through running code after updating file name as follows:<br \/>\nFile Name: \u201ccark.csv\u201d<br \/>\nTake a screenshot of the output.<br \/>\n2. Run the code with the following inputs to validate the car number selection:<br \/>\nCar number: 7<br \/>\nIf the car selected is not the one of the available cars as displayed, the program should request that the user re-enter the car selection.<br \/>\nTake a screenshot of the output<br \/>\n3. Run the code with the following inputs to verify end date is not before start date:<br \/>\nCar number: 2<br \/>\nStart Date: Year: 2020, Month: 5, Day: 1<br \/>\nEnd Date: Year: 2020, Month: 4, Day: 13<br \/>\nIf the end date is before the start date, the program should request that user re-enter information<br \/>\nTake a screenshot of the output<br \/>\n.<br \/>\n4. Run the code with the following inputs to make a booking for premium car:<br \/>\nCar number: 1<br \/>\nStart Date: Year: 2020, Month: 10, Day: 5<br \/>\nEnd Date: Year: 2020, Month: 10, Day: 15<br \/>\nCustomer details: for customer details use your name, email and address. Take a screenshot of the output<br \/>\n5. Run the code with the following inputs to make a booking for standard car:<br \/>\nCar number: 5<br \/>\nStart Date: Year \u2013 2020, Month \u2013 9, Day \u2013 1<br \/>\nEnd Date: Year \u2013 2020, Month \u2013 9, Day \u2013 18<br \/>\nCustomer details: for customer details use your name, email and address.<br \/>\nTake a screenshot of the output<br \/>\nTask 13: Coding Conventions<br \/>\nWhen coding your solution the following coding conventions must be followed.<br \/>\na) Commenting: Add a class header comment, method header comments, and inline comments where required.<br \/>\nb) Indentation: Consistently indent your code by one level per block. (A good guideline is the<br \/>\nNetBeans default of 4 spaces per block.)<br \/>\nc) Naming conventions: Use TitleCase for class names, camelCase for variables and UPPER_CASE for constants.<br \/>\nd) Line lengths: Do not exceed the 80 characters per line guideline.<br \/>\nSubmitting your assignment<br \/>\nWhen you have completed your answers, submit the assessment on the Learning Portal. You should submit the following:<br \/>\nTask number File name Description<br \/>\nTasks 1-2 xxx_cse1ofx_assessment3_uml.vsdx Visio UML diagram.<br \/>\nTasks 3-10 xxx_cse1ofx_assessment3_code.zip Zipped NetBeans project ( help with nursing paper writing from experts with MSN &#038; DNP degrees)<br \/>\nTask 11 xxx_cse1ofx_assessment3_testScenario.docx Test scenario.<br \/>\nTask 12 xxx_cse1ofx_assessment3_ screenshots.docx Testing the code<br \/>\nNotes:<br \/>\n\u2022 Replace the \u201cxxx\u201d placeholders with your Student ID.<br \/>\n\u2022 The Zip file mentioned above is a compressed version of your code solution folder.<\/p>\n<p>Assessment marking criteria<br \/>\nThe complete marking rubric is given below. During marking, one option will be selected per row and additional feedback will be given where necessary.<br \/>\nTask 1a: UML diagram classes (All classes) There are a significant There are a small<br \/>\nClasses have not been All classes have been<br \/>\nnumber of errors in the number of errors in the<br \/>\nsatisfactorily satisfactorily<br \/>\nrepresentation of in the representation of<br \/>\nrepresented represented<br \/>\nclasses classes<br \/>\n0 points 3 points 1 point 2 points<br \/>\nTask 1b: UML diagram constants (in PremiumCar<br \/>\nclass) There is a minor error with how<br \/>\nConstants have not been Constants have been<br \/>\nthe constants have been<br \/>\nrepresented correctly. represented correctly.<br \/>\nrepresented<br \/>\n0 points 1 point 0.5 points<br \/>\nTask 1c: UML diagram instance variables (Car,<br \/>\nCarBooking,<br \/>\nCustomer, CarRentalTester classes Instance variables have not been the<br \/>\nrepresented correctly represented<br \/>\n0 points<br \/>\n1 point There are minor errors with how<br \/>\nInstance variables have been<br \/>\ninstance variables have been represented correctly<br \/>\n2 points<br \/>\nTask 1d: UML diagram methods<br \/>\n(All classes) 0 method sets satisfactory. 0 points<br \/>\nThere are a significant number of errors in the representation of methods<br \/>\n1 point There are a small<br \/>\nAll methods have<br \/>\nnumber of errors in the been satisfactorily<br \/>\nin the representation of represented<br \/>\nmethods<br \/>\n3 points<br \/>\n2 points<br \/>\nTask 1e: UML diagram constructors (Car, Premium Car, CarAndBookingDate s classes) There are minor errors with how<br \/>\nInstance variables have not been Constructors have been<br \/>\nthe constructors have been<br \/>\nrepresented correctly represented correctly<br \/>\nrepresented<br \/>\n0 points 2 points 1 point<br \/>\nTask 1f: UML diagram visibility modifiers (All<br \/>\nclasses) Visibility modifie Visibility modifiers are incorrect. correct.<br \/>\n0 points<br \/>\n0.5 points<br \/>\nrs are partly<br \/>\nVisibility modifiers are correct.<br \/>\n1 point<br \/>\nTask 2a: diagram relationships UML There are a significant<br \/>\nRelationships are not number of errors in the<br \/>\nsatisfactorily representation of<br \/>\nrepresented. relationships<br \/>\n0 points<br \/>\n1 point There are a small number<br \/>\nAll relationships have<br \/>\nof errors in the in the been satisfactorily<br \/>\nrepresentation of represented<br \/>\nrelationships<br \/>\n3 points 2 points<br \/>\nTask 2b: UML diagram relationship multiplicities (where required) There are a small number of<br \/>\nRelationships are not All relationships have been<br \/>\nerrors in the representation of<br \/>\nsatisfactorily represented. satisfactorily represented<br \/>\nrelationships<br \/>\n0 points 1 point 0.5 point<br \/>\nTask 2c: UML diagram relationship names There are a small number of<br \/>\nRelationships are not All relationships have been<br \/>\nerrors in the naming of<br \/>\nsatisfactorily named. satisfactorily named<br \/>\nrelationships<br \/>\n0 points 2 points 1 point<br \/>\nTask 3a:<br \/>\nMenuDisplay class diplayCarList method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 3b:<br \/>\nMenuDisplay class getSelection method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 4a:<br \/>\nCarAndBookingDate s class constructor Constructor is incorrect.<br \/>\n0 points<br \/>\nConstructor is partly correct. Constructor is correct.<br \/>\n0.5 points 1 point<br \/>\nTask 4b:<br \/>\nCarAndBookingDate<br \/>\ns carSelection method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 4c:<br \/>\nCarAndBookingDate<br \/>\ns<br \/>\ngetCarBookingDateF ull method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 4d:<br \/>\nCarAndBookingDate s promptForYear method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 4e:<br \/>\nCarAndBookingDate s promptForMonth method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 4f:<br \/>\nCarAndBookingDate<br \/>\ns promptForDay method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 4g:<br \/>\nCarAndBookingDate s validateYearString method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 4h:<br \/>\nCarAndBookingDate<br \/>\ns<br \/>\nvalidateMonthString method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 4i:<br \/>\nCarAndBookingDate s validateDayString<br \/>\nmethod Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 5a CarBooking class instance<br \/>\nvariables Instance variables are incorrect.<br \/>\n0 points<br \/>\nSome instance variables are correct 0.5 points All instance variables are correct. 1 point<br \/>\nTask 5b: CarBooking class small methods:<br \/>\ngetCost getStartDate getEndDate getTotalDays getCarNumber getNewRate getCarName Small methods are partly Small methods are incorrect. correct.<br \/>\n0 points<br \/>\n1 point Small methods are correct. 2 points<br \/>\nTask 5c: CarBooking class makeBooking method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 5d: CarBooking class calculateCost<br \/>\nmethod Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 6a:<br \/>\nCar class instance<br \/>\nvariables Instance variables are incorrect.<br \/>\n0 points<br \/>\nInstance variables are partly correct 0.5 points Instance variables are correct. 1 point<br \/>\nTask 6b:<br \/>\nCar class<br \/>\nconstructor Constructor is incorrect.<br \/>\n0 points<br \/>\nConstructor is partly correct. Const<br \/>\n0.5 points 1 poin ructor is correct. t<br \/>\nTask 6c:<br \/>\nCar class small<br \/>\nmethods: getCarRate setCarRate getCarName setCarName Small methods are incorrect.<br \/>\n0 points<br \/>\nSmall methods are partly correct. 1 point Small methods are correct. 2 points<br \/>\nTask<br \/>\nPremiumCar constants 7a: Constants are incorrect.<br \/>\n0 points<br \/>\nConstants are partly correct<br \/>\n0.5 points Constants are correct. 1 point<br \/>\nTask<br \/>\nPremiumCar constructor 7b: class Constructor is incorrect.<br \/>\n0 points<br \/>\nConstructor is partly correct. Constructor is correct.<br \/>\n0.5 points 1 point<br \/>\nTask PremiumCar override method 7c class<br \/>\nOverride method is incorrect.<br \/>\n0 points<br \/>\nOverride method is partly correct. 1 point Override method is correct. 2 points<br \/>\nTask 8a Customer class instance<br \/>\nvariables Instance variables are incorrect.<br \/>\n0 points<br \/>\nSome instance variables are correct 0.5 points All instance variables are correct. 1 point<br \/>\nTask 8b: Customer class constructor Constructor is incorrect.<br \/>\n0 points<br \/>\nConstructor is partly correct. 1 point Constructor is correct. 2 points<br \/>\nTask 8c: Customer class small methods: getCustomerName getCustomerEmail getCustomerAddress setCustomerName setCustomerEmail setCustomerAddress Small methods are incorrect.<br \/>\n0 points<br \/>\nSmall methods are partly correct. 1 point Small methods are correct. 2 points<br \/>\nTask 9:<br \/>\nPrintBookingDetails class printBookingDetails method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is partly correct. 1 point Solution is correct. 2 points<br \/>\nTask 10a<br \/>\nCarRentalTester<br \/>\nclass instance<br \/>\nvariables Solution is incorrec<br \/>\n0 points<br \/>\nt. Solution is partly correct. Solution is correct.<br \/>\n1 point 2 points<br \/>\nTask 10b<br \/>\nCarRentalTester main method Solution is incorrect.<br \/>\n0 points<br \/>\nSolution is mostly Solution is partly Solution is mostly Solution is correct. incorrect. correct. correct. 4 points 1 point 2 points 3 points<br \/>\nTask 11a: Test scenario 1 \u2013<br \/>\nDescription Field Test scenario description field is incomplete or<br \/>\nTest scenario description field is appropriate.<br \/>\ninappropriate<br \/>\n0.5 points 0 points<br \/>\nTask 11b: Test scenario 1 \u2013 Other<br \/>\nFields Other test scenario fields<br \/>\nOther test scenario fields All other test scenario fields<br \/>\npartially completed as<br \/>\nincomplete or inappropriate completed as expected.<br \/>\nexpected.<br \/>\n0 points 1 point 0.5 points<br \/>\nTask 11c: Test scenario 1 \u2013<br \/>\nDuration is greater than zero Test Case is incomplete or inappropriate 0 points<br \/>\nTest case is correct.<br \/>\n0.5 points<br \/>\nTask 11d: Test scenario 1 \u2013<br \/>\nDuration is less than<br \/>\n30 for month of<br \/>\nNovember Test Case is incomplete or inappropriate 0 points<br \/>\nTest case is correct.<br \/>\n0.5 points<br \/>\nTask 11e: Test scenario 1 \u2013 Day is less than zero Test Case is incomplete or inappropriate 0 points<br \/>\nTest case is correct.<br \/>\n0.5 points<br \/>\nTask 11f: Test scenario 1 \u2013<br \/>\nDuration is 32 or more for month of<br \/>\nJanuary Test Case is incomplete or inappropriate 0 points<br \/>\nTest case is correct.<br \/>\n0.5 points<br \/>\nTask 11g: Test scenario 1 \u2013<br \/>\nDuration is 31 or more for month of<br \/>\nNovember Test Case is incomplete or inappropriate 0 points<br \/>\nTest case i<br \/>\n0.5 points s correct.<br \/>\nTask 12: Testing the code 2 tests are<br \/>\nUnsatisfactory 0 1 test is correct<br \/>\ncorrect<br \/>\npoints 0.5 points 1 point<br \/>\n3 tests are correct 1.5 points 4 tests are correct 2 points 5 tests are correct 3 points<br \/>\nTask 13a: Code<br \/>\nindentation Code indentation was unsatisfactory and needs work. 0 points<br \/>\nCode indentation was fair and needs some work. 1 point Code indentation was excellent and met the standard with consistent indentation of one level per block. 2 points<br \/>\nTask 13b: Code commenting Code commenting was unsatisfactory and needs work. 0 points<br \/>\nCode commenting was fair and needs some work. 1 point Code commenting was excellent and met the standard with class header comments, method header comments, and some inline comments where appropriate.ts. 2 points<br \/>\nTask 13c: Naming conventions Naming conventions did not meet expected standards. 0 points<br \/>\nNaming conventions were excellent and met the standard with TitleCase for class names, camelCase for variables and UPPER_CASE for constants. 1 point<br \/>\nTask 13d: Code line lengths Line lengths did not meet guidelines. 0 points<br \/>\nLine lengths were excellent and did not exceed the 80 characters per line guideline.<br \/>\n1 point<br \/>\nSubmission timeliness 5 days late<br \/>\n(25% penalty)<br \/>\n-20 points<br \/>\n4 days late 3 days late<br \/>\n(20% penalty) (15% penalt<br \/>\n-16 points -12 points 2 days late<br \/>\ny) (10% penalty)<br \/>\n-8 points 1 day late On time (5% penalty) (<br \/>\n-4 points 0 points<br \/>\nTask 1a: UML diagram classes (All classes) There are a significant<br \/>\nClasses have not been number of errors in the<br \/>\nsatisfactorily representation of<br \/>\nrepresented classes<br \/>\n0 points<br \/>\n1 point There are a small<br \/>\nAll classes have been<br \/>\nnumber of errors in the satisfactorily<br \/>\nin the representation of represented<br \/>\nclasses<br \/>\n3 points 2 points<br \/>\nno penalty)<br \/>\nTotal: 80 points<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Assessment 3 Car Rental CSE1OFX Object Oriented Programming Fundamentals Before you begin Objectives This is an individual assignment. Students are not permitted to work in\u2026<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7603,8197,4791,7606],"tags":[8211],"class_list":["post-88983","post","type-post","status-publish","format-standard","hentry","category-assessment-brief-assignment-help","category-assessment-assignment-help-uk","category-assessment-brief-task-help","category-assessment-task-assignment-help","tag-cse1ofx-object-oriented-programming-fundamentals"],"_links":{"self":[{"href":"https:\/\/www.studyproessays.com\/help\/wp-json\/wp\/v2\/posts\/88983","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.studyproessays.com\/help\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.studyproessays.com\/help\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.studyproessays.com\/help\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.studyproessays.com\/help\/wp-json\/wp\/v2\/comments?post=88983"}],"version-history":[{"count":0,"href":"https:\/\/www.studyproessays.com\/help\/wp-json\/wp\/v2\/posts\/88983\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.studyproessays.com\/help\/wp-json\/wp\/v2\/media?parent=88983"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.studyproessays.com\/help\/wp-json\/wp\/v2\/categories?post=88983"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.studyproessays.com\/help\/wp-json\/wp\/v2\/tags?post=88983"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}