Describes the function of the program

Assignment Help Programming Languages
Reference no: EM131834315 , Length: word count:1250

Programming Assignment

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

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

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.

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

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.

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.

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

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.

Initialising the Program: Initialising the program requires the following steps:

1. Prompt the user to enter the number of rounds required for the competition (either 2, 3 or 4). This must be a whole number to be stored as an int. Initialisation cannot proceed until this number has been obtained.

2. Create a new Race for the lawn mowing championships. For this task, you will set the maximum number of rounds (as obtained in Step 1) and the maximum of participants to 5. You will also have to set the maximum number of times a lawn mower brand can be represented in a race to 2.

3. Create a number of lawn mowers for the Competitors to ride.

4. Create new Competitors to complete in the championships. Each Competitor has an attribute that stores the type of lawn mower they drive. You may choose the names of your own competitors.

5. Add the Competitors to the Race

a. For testing purposes, you must try and add too many competitors and lawn mower brands and a Competitor twice. This is to demonstrate that the capacityReached(), entrantAlreadyRegistered(String) and lawnMowerBrandReached(String) work.

6. Advise the user that initialization in complete.

Running the Program:

1. Entering Results

a. Scores for each round should be stored in the finishTimes array for each Entry

b. The user is prompted for the race times for each Competitor. Each race time is to be read as a double. Hint: You should use the setFinishTime(int, int) method to update the finishTimes array. This method takes in the race round number and the time it took to complete the course.

c. You may assume that the user's results entry is the correct data type. You do not need to check to make sure that the user does not enter non-numerical characters.

d. If the user selects the option to Enter Results after having already entered these, the earlier scores will be overwritten.

2. Displaying Results

a. Displaying the competitor's results requires sorting the Competitors in order of the total scores they obtained and presenting this information in a readable format. The report is followed by identifying the first, second and third place-getters and the lawn mower each competitor was riding.

i. If two or more competitors obtain the same total score, then the order of the competitors and their placing will be determined based on the order their results were entered

3. Viewing Program Credits

a. No special processing is required for this section. A simple display of the credit information is all that is needed.

4. Exit Program

a. The program should exit by reaching the end of the main() method. System.exit(int) should not be used.

b. A message thanks the user for using the system, your details are shown and the program terminates

Stage 3: Testing

Using a copy of the test cases developed in Stage 1: Design, test the program you have developed in Stage 2: Program Development. Document your results, including both failed and successful tests.

Attachment:- Assignment File.rar

Reference no: EM131834315

Questions Cloud

Identify the most significant business problem company faced : Identify the most significant business problem the company faced while assessing the various types of organizational communications used to manage the problem.
Difference between a growth mindset and a fixed mindset : What is the difference between a growth mindset and a fixed mindset?
Information you believe is relevant or important : Reading the passage below, Convert what information you believe is relevant or important when it comes to college athletes getting paid or paying college
Choose a disease related to the integumentary system : Choose a disease related to the integumentary system. Use research that disease. Include the name of the disease, causes and symptoms
Describes the function of the program : ITECH1000 Programming Assignment. This stage requires you to prepare documentation that describes the function of the program and how it is to be tested
What message they were sending to their audiences : Pick five films and write two sentences on what message they were sending to their audiences.
Identify the set of domain specific words from this sentence : The student unpacked her notebook, supplies, and textbook from her bag before she sat down at the table to complete her homework at the library.
Identify and discuss three aspects of wu wei : Identify and discuss three aspects of wu wei (non-doing) that would be practical in the busy lives of city dwellers, especially those living in the West.
Explain the primary conflict in fahrenheit 451 : Explain the primary conflict in Fahrenheit 451. How do other conflicts in your the novel affect the primary conflict?

Reviews

len1834315

1/27/2018 5:24:56 AM

Word/Page Count: 1250. Formatting & Referencing: APA. This is an individual assignment that requires you to design, develop and test a small Java program using object-oriented approaches. Displaying the competitor’s results requires sorting the Competitors in order of the total scores they obtained and presenting this information in a readable format. The report is followed by identifying the first, second and third place-getters and the lawn mower each competitor was riding. If two or more competitors obtain the same total score, then the order of the competitors and their placing will be determined based on the order their results were entered.

len1834315

1/27/2018 5:24:50 AM

Note: Please do not leave out any failed tests. If your testing highlights that your program has not worked correctly, then the failed tests help to demonstrate that you have been testing your program properly. To show that you have tested your program, include small (but readable) screen captures in your Actual Results as well as any explanatory comments. Microsoft Windows includes a Snipping Tool that is useful for taking captures of the relevant parts of the screen.

len1834315

1/27/2018 5:24:42 AM

Submission - Your program code, design and testing documentation should be zipped into a single file and loaded into the Assignment Box provided in Moodle by the due date and time. Creation of classes Race, Entry, Competitor and LawnMower to match diagrams provided Initialisation of the program: Creation of a Race, Competitor and LawnMower instances, Adding Competitors to the Race, ensuring that each competitor is only registered once, each lawn mower brand is only used twice, and the capacity of the championships is not exceeded.

len1834315

1/27/2018 5:24:35 AM

Code modularized, correctly using method calls and passing data between methods Object-oriented approaches have been implemented appropriately (full marks only available for a complete assignment) Use of coding conventions throughout entire program, including readable and clear layout, following naming conventions and including meaningful and appropriate comments. The Java program addresses the requirements outlined in the Assignment Details section, including appropriate use of classes, instances, loops, conditional statements, constants and variables. Testing - Documented test results clearly showing all the testing that has been conducted and the results of this testing. Pro-rata marks based on extent of assignment tasks completed.

Write a Review

Programming Languages Questions & Answers

  Create an employee object using the default constructor.

Create an Employee object using the default constructor. Prompt for and then set the first name, last name, gender, dependents, and annual salary. Remember that you have to convert gender, dependents, and annual salary from strings to the appropri..

  Modify the password of thr record

Change the password of the CLASSMATE user to STUDENT using the console

  Web design and object-oriented programming

Identify two differences between web design and object-oriented programming

  Business rules form the basis of the database design.

A member receives many invitations, and each invitation is sent to many members.

  A number type or boolean

In Java, a number type or Boolean (There are 8: long, short, float, char, int, boolean, byte, bit, double)

  Implement a base class appointment and derived classes

Implement a base class Appointment and derived classes Onetime, Daily, Weekly, and Monthly. An appointment has a description (for example, "see the dentist") and a date and time.

  Write down a recursive method to print all the permutations

write a recursive method to print all the permutations of a string. for instance for a string abc the printout is abc

  Program to multiply two integers

What occurs when you multiply two integers whose product is larger than largest int value? Try out example and report your findings.

  Program to return the array index having largest savings

Write down function also called from main module - this function will find out and return array index containing the largest savings.

  Write down a method which is passed string argument

Write down a method, getFirstLine, which is passed a String argument and that returns first line. (Recall that lines are terminated with the "n" character.)

  Define two pointers that hold two values of type int

Define a one dimensional array consisting of five cells, and populate the cells with values 0-5 and then print the result of the one dimensional array on the screen.

  Assembly language instructions into machine code

The assembly instructions are stored in a file. Each line of the file stores exactly oneinstruction. The name of the file should be provided to the program as a command line argument.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd