ITECH1400 Fundamentals of Programming-Assignment 2

Overview

This is an individual assignment that requires you to design, develop and test a small text-based program


Timelines and Expectations

Percentage Value of Task: 20%

Due: 5 pm Friday Week 11

Minimum time expectation: 20 hours


Learning Outcomes Assessed

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


Knowledge:
K1. Identify and use the correct syntax of a common programming language.
 
K2. Recall and use typical programming constructs to design and implement simple software solutions.
 
K3. Reproduce and adapt commonly used basic algorithms
 
Skills:
S1. Utilise pseudocode and/or algorithms as a major program design technique.
 
S2. Write and implement a solution algorithm using basic programming constructs.
 
S3. Demonstrate debugging and testing skills whilst writing code
 
Application of knowledge and skills:
A1. Develop self-reliance and judgement in adapting algorithms to diverse contexts.
 
A2. Design and write program solutions to identified problems using accepted design constructs.

Assessment Details

You work for the Australian Tax Office (ATO) and it’s time to audit the Tooth Fairy. The Tooth Fairy has submitted a CSV file with the details of all the tooth pickups this year (see addresses.csv file in Moodle).
 
The assignment is broken up into three main components:

1) Design pseudocode to analyse the CSV file

2) Create an activity chart which illustrates the behavior of the pseudocode

3) Create a program based on the pseudocode and activity chart diagram
 
Your submission should consist of two files: a Word document containing the design pseudo-code and activity chart and a Python file (script) which is the final program.
 
The CSV File

You will need to download the addresses.csv file from Moodle. The file contains 500 records across seven columns. Here’s a sample of the file and the type of information that it stores.
 
Part 1: Design

This stage requires you to prepare documentation that describes the functionality of the pseudocode and how it is to be tested.  There is no coding or code testing involved in this stage.   
 
Requirements:

1) Read all of this assignment sheet first!!!

2) Write pseudocode 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 it will function correctly.

3) Write five test cases that ensure your program operates correctly

 
Add everything to your Word document.

Part 2: Activity Flowchart

Using either the online website https://draw.io (preferred), or the applications Visio or PowerPoint – create an activity diagram of how the program should operate.

Make sure to use the correct symbols in your diagram for starting, processes, decisions/branches, and ending the process.  Once you have completed your activity flowchart, add it to your Word document.
 
Part 3: Computer Program

You are free to design and implement the program however you see fit. Here are some requirements that must be incorporated into your program.

  1. You must display a welcome message when the program starts. At a minimum, this message should contain the name of your program, the name of the program developer and your student ID.

2. Your program should have a text menu that allows the user to

  a. Print the following statistics

     i. Total number of children in the text file

     ii. Average number of teeth claims over the years

     iii. Number of children who have never lost a tooth

     iv. Number of children who have lost all their baby teeth

      v. Total expenditure for this year given the following:

  b. Print to a new file, a list of children who haven’t lost any teeth. The user should be given the chance to enter a filename.    

  c. Display a graph showing the number of claims per State

  d. Display a graph comparing the overall average number of   teeth lost for two given States

3. To help with the readability of your code, you should use functions


A screenshot of a sample program is included in Appendix 1.
 
Finally, you should use your five test cases and demonstrate if they pass/fail and the reasons. Add your written response to the word document. 

Submission

Your Word document and program code should be zipped into a single file (a .zip file) and loaded into the Assignment Box provided in Moodle by the due date and time. The naming conventions for the zip file are:  
 
ITECH1400_Assignment_2_<YOUR-NAME>_<YOUR-STUDENT-ID>.zip
 

Obviously replace  <YOUR-NAME>  and  <YOUR-STUDENT-ID)  with  your  own  personal  details!  
 
Assignments will be  marked  on  the  basis  of  fulfilment  of  the  requirements  and  the  quality  of  the  work. In addition to the  marking  criteria,  marks  may  be  deducted  for  failure  to  comply  with  the  assignment requirements, including (but not limited to):

- Incomplete implementation(s)

- Incomplete submissions (e.g. missing files

- Poor spelling and grammar

The mark distribution for this assignment is explained on the next page–please look at it carefully and compare your submission to the marking guide.

Feedback

Assignments will be marked within 2 weeks of submission.  Marks will be loaded in fdlGrades, and a completed marking sheet will be available via Moodle.   


Plagiarism: 

Plagiarism is the presentation of the expressed thought or work of another person as though it is one's own without properly acknowledging that person. You must not allow other students to copy your work and must take care to safeguard against this happening. More information about the plagiarism policy and procedure for the university can be found at http://federation.edu.au/students/learning-andstudy/online-help-with/plagiarism.

Order Now