Java代写 | CP2406 Programming 3


Assessment details

Due date Due end of Week 5


The Australian Bureau of Meteorology (BOM) provides a range of climate information about different parts of Australia. In particular, the Climate Data Online service provides access to rainfall data for many different Australian cities and suburbs. For example, Copperlode Dam station has been recording rainfall data since the year 2000.

Your coding challenge is to create an IntelliJ IDEA Java project that contains the following Java classes designed and coded by you:


  1. RainfallAnalyser: (use static Java methods only)
    1. Read BOM rainfall data for 10+ years from csv text files (will be provided to you)
    2. Calculate monthly rainfall totals along with minimum daily and maximum daily rainfall during each month, across the 10+ years’ worth of data
    3. Save the calculated information into a new text file
  2. RainfallVisualiser: (add draw code to a JavaFX Application class that will be provided)
    1. Read the calculated information from those new text files generated by RainfallAnalyser
    2. Display a graphical chart using JavaFX shapes that effectively presents the calculated information

We will provide a GitHub Classroom link to your codebase repository for this assessment task. Starter code that includes JUnit tests will be included in this repo. These unit tests focus on the non-GUI aspects of your codebase. You use these unit tests to ensure your codebase works on a variety of BOM rainfall data files (these files will be provided). For example, your RainfallAnalyser class will be expected to handle situations such as corrupted text files and some other related IO issues. There is no need to provide JUnit tests for your RainfallVisualiser class.


Submit your work using the Assignment Task 1 submission link within the CP2406 LearnJCU site for this subject. Your submission must include:

  • A 1-minute video screencast that shows your RainfallAnalyser passing the unit tests and your RainfallVisualser display its graphical chart
  • A zip of your IntelliJ project folder


This task assesses your ability to apply coding skills such as the use of:

  • Basic Java classes and objects;
  • Java variables and primitive types;
  • JavaFX shape drawing code used inside JavaFX program (template starter code will be provided);
  • Java control flow structures;
  • Basic Java file IO and exception handling; and
  • Basic algorithmic development: top-down design and incremental development.
Task Exemplary 9-10 Good 7-8 Satisfactory 5-6 Limited 2-4 Very Limited 0-1
Using GitHub The majority of commits in the project repo are well motivated and represent incremental steps during the development process. A top-down incremental approach is evident. Exhibits aspects of exemplary (left) and satisfactory (right) The repo contains some commits that aren’t well motivated, or don’t represent incremental steps during the development process. A top-down incremental approach is somewhat evident. Exhibits aspects of satisfactory (left) and very limited (right) GitHub is not used.
Program completeness

(worth double)

Outstanding progress is made on the code implementation. All aspects of the required classes are successfully implemented and fulfil the required program behaviours. Reasonable progress is made. Some classes have been implemented and fulfil some of the required program behaviours. Not enough progress is made.
Code testing All JUnit tests are successfully passed. The unit tests have been added or adapted to suit. Most JUnit tests are successfully passed. Some unit tests have been added or adapted to suit. Not enough JUnit tests are successfully passed.
Code readability Java coding standards are very consistently followed throughout the Java codebase. This includes Java naming conventions and descriptive comments. Java coding standards are mostly followed except in some parts of the Java codebase. Too much of the codebase does not following Java coding standards.
Coding practices

(worth double)

The coding practices covered in the first part of the subject are utilised very effectively. The choice and construction of Java variables, methods, control flow and file handling are outstanding. Coding practices are utilised, however there are some exceptions. The choice and construction of Java variables, methods, control flow and file handling are reasonable. Coding practices are not utilised well enough.


本网站支持淘宝 支付宝 微信支付  paypal等等交易。如果不放心可以用淘宝交易!

E-mail:  微信:itcsdx