java代写-CODE 00099F -Assignment 1


Applications Programming
Assignment 1
OO Design, Standard Patterns, Lists

Learning Outcomes:
This assessment task addresses the following subject learning objectives (SLOs): 1, 2 and 3

Due date:
11:59PM Friday 16 April


Individual Work
All work is individual. You may discuss ideas, approaches and problems, but you should write every line of
code yourself except for code copied from the lecture notes, lecture code or lab code. You MUST NOT let
another student see your solution code, and you MUST NOT look at another student’s solution code. More
information about Academic Misconduct can be found at:


The Board Game Renting System (or Game Kiosk) will consist of two main components, an administrative
component, and a game catalogue.

The administrative section will allow, through text-based menus, the addition and removal of customers, the
addition and removal of games in the catalogue, the display of customer records, the display of a customer’s
3 favorite games and the top-up of customer accounts.

The catalogue will store a list of all the games in the kiosk, a list of the genres of those games, and a list of the
available games. The catalogue will also allow display of the games in a number of ways, including by
availability, genre and year. Finally, the catalogue will also handle the renting and return of games.

Each customer record will include the customer’s name, their chosen ID number, their current balance, which
games they are currently renting and their full renting history.

Each game record will include the game’s title, its genre, its price and the year in which it was made.

An aside
While reading the first part of the specification, you will notice there is a lot going on.

 How many functions did you identify?

 How many classes did you identify?

 What are the fields in each class?

 How many goals did you identify?

 How many patterns did you think of that might be applicable?

This assignment will be challenging, and you will probably want to manage your time well.

 How long do you think it will take you to code the functions?

 How long do you think it will take you to code each goal?

 A good rule of thumb is to think of an estimate, and then multiply that number by 3 or 4!

 To manage your time well, you may need to figure out which parts of the assignment you can
start early.

 Which parts can you start now?

 Which parts can you start in week 6?

If you complete parts in the same week that you learn the topics (while they are fresh in your mind), they
will take less time to complete.



 Your design will consist of exactly the following classes with the listed fields, declared as
indicated. You may not add or remove classes or fields; however, you may add constructors,
functions and procedures to complete your design (in fact, you will have to!). You should pay
careful attention to the tests on ED, as these will help guide you with some (but not all) of these
 To help visualize the design, a partial class diagram has been provided

 Classes – your design will consist of these 6 classes:
1. Kiosk

2. Catalogue
3. Customer
4. Game
5. Genre

6. In (this is just the class you’ve been using throughout the labs to facilitate simpler I/O)

 Fields – All the fields have been clarified in each class and they should not be modified. The fields
also have some additional requirements and structures:
Lists all have the abstract type of List<>, but must be instantiated with a concrete type that
implements the List<> behavior (you will see two of these in week 6, you can choose either – you
may also want to think about why you might do things this way).

 Constructors – the constructors of the class have the following requirements:
1. All constructors initialize the fields of their class.

2. The Kiosk constructor takes no parameters.
3. The Catalogue constructor takes a single parameter, the Kiosk which it belongs to.
4. The Customer constructor takes three parameters, the ID, name, (initial) balance,
corresponding to the three fields identically named.

5. The Game constructor takes four parameters, corresponding to the title, year, genre
and price, with the same types as the respective fields.
6. The Genre constructor takes a single parameter, the name of the genre.


 toString() – several of the classes will have a toString() function, with the following formatting:
1. Customer.toString() will produce a string of the form:

50 Angela HUO $ 15

Note: \t is the escape code for the tab character.
2. Game.toString() will produce a string of the form:
\t\t<genre name>\t$ <price> </br> </br>e.g. </br>2021 UTS Monopoly Dice Rolling $ 4 </br> </br>3. Genre.toString() will produce a string of the form: </br><genre name> </br> </br>e.g. </br>Role Playing </br> </br> The main method of the program will be in the Kiosk class. </br> Top-Ups: The Kiosk should also implement a top-up system. A customer should be able to top up </br>their account by simply providing their ID and the top-up amount. When renting a game, the price </br>of the chosen game will be deducted from the customer’s account decreasing their balance. If the </br>customer does not have sufficient funds, they will not be able to rent any games. </br> </br>Test Cases </br>For testing purposes, please make sure that you have a data list of games and customers in the </br>constructors as follows: </br> </br>Title Year Genre Price </br>Robinson Crusoe 2012 Action Queue 3 </br>Talisman 2007 Role Playing 4 </br>Three Kingdoms Redux 2014 Hand Management 3 </br>Dungeons & Dragons 2010 Modular Board 4 </br>Elder Sign 2011 Modular Board 3 </br> </br> </br>ID Name Balance </br>101 Jaime 10 </br>102 Luke 10 </br>103 William 1 </br>25.03.2021 </br> </br>UTS CRICOS PROVIDER CODE 00099F </br> </br> </br>Advanced Requirements </br>To achieve a mark of >84, you must implement a favorite reporting function (or set of functions). This </br>corresponds to an item in the main menu. Choosing this option should prompt the user for a valid </br>customer ID, and then display the user’s 3 most rented games, in order of highest renting frequency to </br>lowest. For two games share the same frequency, the earlier rented one rank higher. If the user has only </br>rented less than three games, it will show those games alone. A sample partial I/O trace follows, red text </br>is used to indicate user input: </br> </br>Welcome to the Game Kiosk! Please make a selection from the menu: </br>1. Explore the catalogue. </br>2. View your customer record. </br>3. Show you favourite games. </br>4. Top up account. </br>5. Enter Admin Mode. </br>X. Exit the system. </br>Enter a choice: 3 </br> </br>Enter a customer ID: 101 </br>Angela's favourite games are: </br>2012 Robinson Crusoe Action Queue $3 </br>2010 Dungeons & Dragons Modular Board $4 </br>2011 Elder Sign Modular Board $3 </br> </br>Expected Workload </br>The time to do the assignment to a credit/distinction level has been estimated at 25 hours for a student of </br>average ability who has completed all the tutorial and lab exercises. </br> </br>Online Support </br>The Assignment 1 channel has been set up on ED discussion board so that students can ask questions, and </br>other students can reply. The teaching staff will only post a reply only if the student response was wrong, or </br>in the case of correcting a mistake in the assignment specification. </br>You must not post or share Java code to the discussion board. The board is there to help you, not to provide </br>the solution. Posting your code is academic misconduct and will reported. Each time this rule is violated, the </br>code will be removed and replaced with a comment of the form: “Strike 1: Posting code”. After 3 strikes, you </br>will be muted from the discussion board for the whole semester. </br> </br>A dynamic FAQs (Frequently Asked Questions) has been pinned as the megathread in the channel and their </br>answers will be posted on ED alongside the question. If you have a question, check the FAQ (megathread) </br>first, it may already be answered there. You should read the FAQ (megathread) at least once before you </br>hand in your solution, but to be safe check it every couple of days. Anything posted on the FAQ (megathread) </br>is considered to be part of the assignment specification. The FAQ will be frozen (no new entries) two days </br>before the due date; no questions will be answered after it is frozen. </br> </br>If anything about the specification is unclear or inconsistent, check the FAQ (megathread) first, then contact </br>the subject coordinator who will try to make it clearer by replying to you directly and posting the common </br>questions and answers to the FAQ. This is similar to working on the job, where you ask your client if you are </br>unsure what has to be done, but then you write all the code to do the task. Email to </br>ask for any clarifications or corrections to the assignment. </br> </br>25.03.2021 </br> </br>UTS CRICOS PROVIDER CODE 00099F </br> </br> </br> </br>Marking Scheme </br>The marks for the assignment are divided into the following functionality components (note that individual </br>tests may test several functionality components, and a functionality component may be tested by several </br>tests): </br> </br> </br>Functionality Component </br> </br>Mark Allocation </br> </br>Main Menu </br> </br>4 </br> </br>Catalogue Menu </br> </br>4 </br> </br>Admin Menu </br> </br>4 </br> </br>Add Customer </br> </br>9 </br> </br>Add Game </br> </br>9 </br> </br>Remove Customer </br> </br>5 </br> </br>Remove Game </br> </br>6 </br> </br>Show Games </br> </br>6 </br> </br>Show Games by Category </br> </br>8 </br> </br>Rent </br> </br>4 </br> </br>Return </br> </br>4 </br>Bad Input 3 </br> </br>Customer Record </br> </br>8 </br> </br>Favorites </br> </br>16 </br> </br>Account Top-up </br> </br>10 </br>This adds to a mark out of 100, at makes up 35% of your final assessment mark. </br> </br> </br> </br> </br>25.03.2021 </br> </br>UTS CRICOS PROVIDER CODE 00099F </br> </br> </br>ED Marking </br> </br>Your solution is marked for correctness by comparing the output of your system to the output of the </br>benchmark system in ED. You can submit a solution to ED many times by press “MARK”; I urge you to do </br>this, so you receive credit for your work. Any code hasn’t been “MARK” by ED won’t be credited. </br> </br>ED will test the features of your program in a certain order, but it cannot test the more advanced goals until </br>the basic goals are working. To receive marks, you must pass ED’s test cases in the order in which ED tests </br>them. </br> </br>Your code is marked by software, so you can get a good mark by fooling or spoofing the software. If you </br>spoof a task worth N marks, you receive a penalty of 2*N marks. </br> </br>Submission and Return </br>Your provisional mark and feedback is generated immediately each time you submit to ED. However, it takes </br>time for the analysis of spoofing, plagiarism, collusion and general cheating, which will start two weeks </br>following the due date. If you are suspected of Academic Misconduct, I will forward your case to the </br>Misconduct Committee and will notify you by manual feedback in ED. </br>There is no scheduled late submission period. An extension of up to 3 days may be given by the subject </br>coordinator before the due date; you have to supply documentary evidence of your claim. An extension </br>CANNOT be given after the due date or exceed 3 days. You may also apply for special consideration for </br>reasons including unexpected health, family or work problems. More information about how to apply for </br>special consideration can be found at: </br> </br> </br> </br> </br></br><a href="">学霸联盟</a></div> </div> <div class="detail-cont-tag"> <ul> <li> <a href="/list.html?tagId=261"><i></i>IOS代写</a> </li> <li> <a href="/list.html?tagId=355"><i></i>Behavioural Finance代写</a> </li> <li> <a href="/list.html?tagId=121"><i></i>机械力学代写</a> </li> <li> <a href="/list.html?tagId=397"><i></i>高宏代写</a> </li> <li> <a href="/list.html?tagId=196"><i></i>精算代写</a> </li> <li> <a href="/list.html?tagId=239"><i></i>手写代写</a> </li> <li> <a href="/list.html?tagId=11"><i></i>html代写</a> </li> <li> <a href="/list.html?tagId=49"><i></i>scala代写</a> </li> <li> <a href="/list.html?tagId=105"><i></i>云计算代写</a> </li> <li> <a href="/list.html?tagId=359"><i></i>optimization代写</a> </li> <li> <a href="/list.html?tagId=278"><i></i>code代写</a> </li> <li> <a href="/list.html?tagId=453"><i></i>Labview代写</a> </li> <li> <a href="/list.html?tagId=364"><i></i>实时系统代写</a> </li> <li> <a href="/list.html?tagId=71"><i></i>计算代写</a> </li> <li> <a href="/list.html?tagId=215"><i></i>maya代写</a> </li> <li> <a href="/list.html?tagId=59"><i></i>电子工程代写</a> </li> <li> <a href="/list.html?tagId=450"><i></i>claw代写</a> </li> <li> <a href="/list.html?tagId=76"><i></i>不限代写</a> </li> <li> <a href="/list.html?tagId=85"><i></i>无代写</a> </li> <li> <a href="/list.html?tagId=363"><i></i>ads代写</a> </li> <li> <a href="/list.html?tagId=169"><i></i>期货期权代写</a> </li> <li> <a href="/list.html?tagId=140"><i></i>证明题代写</a> </li> <li> <a href="/list.html?tagId=376"><i></i>问答代写</a> </li> <li> <a href="/list.html?tagId=407"><i></i>建筑学代写</a> </li> <li> <a href="/list.html?tagId=442"><i></i>法学代写</a> </li> </ul> </div> </div> <div class="first-footer"> <div class="footer-nav item-nav contact-bottom"> <div class="title">联系我们</div> </div> <div class="footer-content first-page-content"> <div class="footer-left"> <div class="contact"> <span class="footer-text email"></span> </div> <div class="footer-text address"> 3551 Trousdale Rkwy, University Park, Los Angeles, CA </div> <div class="footer-text">留学生论文指导和课程辅导</div> <div class="footer-text">论文代写:<a target="_blank" href=""></a> </div> <div class="footer-text">课程辅导:<a target="_blank" rel="nofollow" href=""></a> </div> <div class="footer-text">无忧GPA:<a target="_blank" rel="nofollow" href=""></a></div> <div class="footer-text">工作时间:全年无休-早上8点到凌晨3点</div> </div> <div class="footer-right"> <div class="footer-code"> <div class="code"> <img src="../images/first/ewm1.jpg" alt="essay、essay代写" /> </div> <div class="code-text">微信客服:xiaoxionga100</div> </div> <div class="footer-code"> <div class="code"> <img src="../images/first/ewm2.jpg" alt="essay、essay代写" /> </div> <div class="code-text">微信客服:ITCS521</div> </div> </div> </div> </div> <div class="ewm"> <div class="list"> <img src="" alt="essay、essay代写" /> </div> </div> </div> <script src=""></script> <!-- <script language="javascript" src=""></script> --> </body> </html>