Overview

This is an individual assignment that requires you to design, develop and test a small Java program using object-oriented approaches.

Timelines and Expectations

Percentage Value of Task: 20%

Due: 16:00 Friday – Week 11

Minimum time expectation: 20 hours

Learning Outcomes Assessed

The following course learning outcomes are assessed by completing this assessment:

  • • Identify and use the correct syntax of a common programming language
  • • Recall and use typical programming constructs to design and implement simple software solutions
  • • Reproduce and adapt commonly used basic algorithms
  • • Utilise pseudocode and/or algorithms as a major program design technique
  • • Write and implement a solution algorithm using basic programming constructs
  • • Demonstrate debugging and testing skills whilst writing code
  • • Develop self-reliance and judgement in adapting algorithms to diverse contexts
  • • Design and write program solutions to identified problems using accepted design constructs

ITECH1000 Programming 1 Summer 2017/2018

CRICOS Provider No. 00103D Summer 2017-18 Assignment 2 Specifications Page 2 of 10

Assessment Details

It’s time to race!! The Lawn Mowing Championship is a competition run in Britain and they have employed you to design, develop and test a small application for managing the Championship results.

Stage 1: Design

This stage requires you to prepare documentation that describes the function of the program and how it is to be tested. There is no coding or code testing involved in this stage. A document template has been provided for your use.

Requirements:

1) Read through Stage 2: Program Development to obtain details of the requirements of this program.
2) Write an algorithm that describes how the program will operate.
a. All program requirements must be included, even if you do not end up including all these requirements in your program code.
b. The algorithm must be structured logically so that the program would function correctly.
3) Prepare and document test cases that can be used to check that the program works correctly, once it has been coded. You do NOT need to actually run the test cases in this stage; this will occur in Stage 3: Testing.
a. All program requirements must be included, even if you do not end up including all these requirements in your program code.
b. Make sure the test cases include checking of data entered by the user to make sure that only valid data is accepted. If the user enters invalid data, the user should be informed of this and given another chance to enter the data. NB: As we have not covered exception handling, you may assume that the user will always enter the expected data type.
c. Test cases should be documented using a template like the one below. You may include extra information if you wish. At this stage, the Actual Result column will be left blank.

Stage 2: Program Development

Using the Design Documentation to assist you, develop a Java program that uses object-orientated coding approaches to record and report upon the Lawn Mowing Championship. You must follow coding conventions, such as proper layout of code, using naming conventions and writing meaningful comments throughout your program.

Overview of the Program:

This section provides an overview of how the program works from the user’s perspective. You may change the appearance of the program provided you implement the same functionality.

1. When the program starts, it provides a short message for initialising the contest administration system and prompts the user to enter the number of rounds that competitors must complete. The user must enter a whole number greater than or equal to 2 and less than 5. Otherwise, the system keeps prompting until a valid entry is made.Screen Shot 2018-01-23 at 6.06.12 PM

2.Once the number of rounds required is obtained, the program automatically initialises. This initialisation includes creating the race, creating the lawn mowers, creating the competitors and registering the competitors in a race.

CRICOS Provider No. 00103D Summer 2017-18 Assignment 2 Specifications Page 4 of 10

3. When initialisation is complete, a menu appears providing the users with options to Enter Results, Display Results, View Program Credits or Exit Program.

4. When the user selects the Enter Results option, the user is prompted to enter the time each competitor took to complete a round. When all results (for each round) have been entered, a message “Results have been successfully recorded” appears and the menu is shown again.

5. When the user chooses to Display Results option, the results are displayed by competitor. Competitors are listed in order of their total score across all rounds, from highest to lowest. The list is followed by the placings for the whole event, with those competitors who achieve the lowest times show in first, second and third place, with the make of lawn mower also identified. The menu is then redisplayed.

Final Results

———————————-

Amy Santiago: 93.6

Rosa Diaz: 80.1

Terry Jeffords: 58.8

Gina Linetti: 40.9

Jake Peralta: 19.0

Final Placings

First: Jake Peralta driving a Honda

Second: Gina Linetti driving a Honda

Third: Terry Jeffords driving a John Deere CRICOS Provider No. 00103D Summer 2017-18 Assignment 2 Specifications Page 5 of 10

6. When the user selects the option to View Program Credits, a message is displayed providing authorship information for this program. The main menu is then redisplayed.

%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%

Program Credits

This program was developed by:

Wendy Burke, Student ID 3XXXXXXX

for ITECH1000 Summer Semester 2017/18

I received assistance from the mailman and my tutor, Fireman Sam

%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%-%%-%

7. When the user selects the option to Exit the program, a message thanks the user for using the system, and then terminates.

CRICOS Provider No. 00103D Summer 2017-18 Assignment 2 Specifications Page 6 of 10

Technical Information:

This section provides technical implementation details required by the programmer to create the program.

Development of this program requires four classes: Race, Entry, Competitor, LawnMower as well as a Driver class to control the flow of the program.

Driver Class: Name this file ID3XXXXXXX, where the Xs are replaced by your student ID. This class will contain a main() method to manage the flow of the program, and other methods as necessary to ensure the code is modularized and functions correctly.

Race Class: This represents a Race. A race has a number of rounds as entered by the user when the program starts. Use the class diagram below as the basis for designing your class.

Entry Class: This represents a single Competitor registered to compete in the race and the scores they obtain for each round. Use the class diagram below as the basis for designing your class CRICOS Provider No. 00103D Summer 2017-18 Assignment 2 Specifications Page 7 of 10

Competitor Class: This represents a Competitor driving a brand of lawn mower. Use the class diagram below as the basis for designing your class

LawnMower Class: This represents a brand of lawn mower. Use the class diagram below as the basis for designing your class

 I you are looking for help in your java assignment ITECH1000 Programming | Assignment 2. Our experts are ready to help you.

Keywords : ITECH1000 Programming , java assignment, assignment 2

Related posts: