代做48024 Programming Assignment 2帮做Java编程
- 首页 >> Java编程48024
Programming
Assignment 2
Topics:
OO design, GUIs, MVC, tables, lists
Learning Outcomes:
This assignment supports objectives 3 - 5
Weight:
25%
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:
http://www.gsu.uts.edu.au/rules/student/section-16.html
Working Language
You can choose either Java or Python to complete assignment 2. It is generally expected that you complete the assignment in 1 language only, however, there is no restriction on attempting or completing the assignment in both. If so, the higher mark between your Java solution and Python solution will be counted into your final grade.
Expected workload
The time to do the assignment to a credit level (i.e. a mark between 65% to 75%) has been estimated at 25 hours for a student of average ability who has completed all the tutorial and lab exercises.
Additionally, in accordance with UTS policy, a High Distinction represents exceptional and near-perfect work. Securing beyond 85% for this assessment will require you to push yourself, build off your existing knowledge with self research, and test rigorously to achieve full marks.
Skeleton
You must use the skeleton code provided as a starting point for your assignment. The following restrictions apply to the scaffold:
Java:
● You are not allowed to modify the model classes in any way , other than adding helper methods as needed.
● You cannot add extra controllers or views; you can only write your implementation in the files provided
● You cannot alter the folder structure
● You may add to the style.css file if you like, but do not modify any of its existing content.
Python:
● You are not allowed to modify the model classes in any way, other than adding helper methods as needed.
● You will need to add extra classes/views/controllers to complete your implementation; how you structure this is up to you.
● You may alter the folder structure.
● You may add to the Utils.py file if you like, but do not modify any of its existing content.
Model Changes
Some alterations to the models for assignment 1 have been made to better facilitate a GUI approach. It is highly recommended that you look through the skeleton first to try and understand it before beginning your implementation. It is also advised you perform some testing of your own on the various methods to understand the scaffold you are building from.
Styles
Both the Java and Python scaffold have been provided with a file that is intended to help with styling your GUI elements.
● Java: the scaffold comes with a stylesheet (style.css). Your GUI elements should utilise the classes inside the stylesheet to emulate the look of the solution.
● Python: the scaffold comes with a Utils.py class with reusable, pre-styled tkinter elements.
Note that these files are designed to help with much of the aesthetics of the GUI elements (colour, size, font etc.), but they will not magically make your application look like the solution. You will still need to put thought into how you present these elements on the screen and how you place them relative to the other elements.
Specification
The specification is presented in several parts. This document outlines the rules of the assignment, as well as all relevant information.
A demonstration video is also provided on Canvas. This demonstration video is considered part of the specification and is intended to demonstrate exactly what your program should do in both functionality and looks, regardless of language or operating system.
A rubric is also provided on canvas; however, this is mostly just a written version of what the demonstration video presents. Note that this is the exact rubric that your tutor will mark against during the final demonstration. All criteria points are written to be language and operating system independent; no leniency will be given for issues unique to one operating system.
Layout
To get full marks, you should layout your windows to look as close as possible to the demonstration video. An example window is shown below in Java and Python
Java Python
The actual size of the window itself is not important, much of the time this is affected by the language and operating system anyway. What you need to focus on is the spacing, colours, padding, alignment, order of the elements, and proportions. Additionally, the title bar (the part that says ‘Customer Dashboard’ in the above screenshot, is also operating system dependent and will not be marked other than the title being correct. The expected look of each window is marked compared to the demonstration video.
Submission
Regardless of the language you chose, you will need to submit your assignment in 2 places: Java
● Canvas: JAR file and coversheet
● Ed: Complete source code Python
● Canvas: .zip file and coversheet
● Ed: Complete source code
The Ed submission is used for record keeping and will not provide any testcases or feedback on your submission. Tutors will mark the functionality of your solution in the week 12 demonstration by opening your .jar/.zip from canvas. It is your responsibility to rigorously test this and make sure it works.
Marking
Functionality will be marked with your canvas submission against the rubric provided on canvas by your lab tutor in the week 12 demonstration. Absence without prior approval will incur a 50% penalty.
Analysing spoofing, cheating and plagiarism is done in the two weeks following the due date. If you are suspected of Academic Misconduct, your case will automatically be forwarded to the Misconduct Committee, and you will receive a “high similarity” note on ED submission. Your mark will be finalized within 2 weeks of the due date.
Online Support
A FAQs (Frequently Asked Questions) page will be posted as a slide in the Assignment page on Ed. This is not a static page filled with text, it is a question thread where you can post questions for the teaching staff to answer. Your question should strictly relate to the specification, questions regarding code problems or testcase issues should go on the regular discussion board. Any questions that do not adhere to this rule will be deleted. If you have a question, check the FAQ first, it may already have been answered there. Anything posted to the FAQ by the teaching staff is considered to be part of the assignment
specification.
As for “normal” assignment questions and assignment help, the preferred way to ask is through participating in the lectures, lab activities, UPASS and consultation sessions.
The Subject Coordinator may be contacted by email if you have matters of a personal nature to discuss, e.g., illness, personal issues or other matters of importance. All emails sent to the subject coordinators, tutors or lecturers must have a clear subject line that states the subject number followed by the subject of the email.
e.g.: [Subject 48024, Appointment Request], and must be sent from your UTS email address
Requests for appointments outside the given consultation hours may be arranged where circumstances require, and to do so please contact the subject coordinator by email.