Information Technology

CMP1041 Foundation Programming

09 April 2023 07:29 AM | UPDATED 1 year ago

CMP1041 Foundation Programming :

For solution: +610482078788

+61482073403

+61482072848

CMP1041 Foundation Programming
CMP1041 Foundation Programming

Subject Code and NameCMP1041 – Foundation Programming
Assessment Number1
Assessment TitleFoundations and Pseudocode
Assessment Type Length or Duration Subject Learning Outcomes Submission Date / Time WeightingReport
1,000 words +/- 10%
SLO 1, SLO 2
Week 3
25%

Assessment Purpose

Software development companies are experts at writing bug free programs and are often contracted by clients to fix existing programs and to write new programs. Companies may not have software developers in their staff, and instead choose to outsource software development to a software development company.

In this CMP1041 Foundation Programming assessment you will work for a software development company, called Professional Software, who have recently been contracted to write a report that will

  1. provide advice to a client regarding software development
  2. identify bugs in an existing program
  3. develop a new pseudocode program

These programs automate the calculation of employee payment. You have the opportunity to apply your understanding of software development to help the client automate these calculations. As an employee of the software company it is your role to write a report that will solve the client’s needs and problems.

Assessment Task / Item

For this assessment, you must submit a report that addresses the five (5) tasks listed below.

Assessment Instructions

For this CMP1041 Foundation Programming assessment you are required to read the scenario email below and respond by completing the following five (5) tasks. Write your responses to the following five (5) tasks in the form of a report, addressing every point in each of the five tasks. You will submit your report as one (1) PDF file.

The following email was received from the client:

Hi Professional Software!

My name is John Doe, and I am a project manager at Payroll Company. Thank you for accepting our contract to fix our existing program, which calculates bonus pay, and to help us build a new program, to calculate payroll information.

Payroll Company has no software developers, we do however hire freelance software developers to convert pseudocode into programs that we can run. I’m not very technical and I don’t know much about software. Can you educate me about what pseudocode is? Can you also educate me about how a programming language is turned into a program that I can run on my computer?

We previously had a program built, which helps us calculate bonus pay for each employee, however we think that it is wrong. It seems to be paying our employees far less than expected. It should pay them

$100 per month they have been employed with us. Our employees are pretty unhappy with this situation! Can you take a look at the pseudocode of the program and inform us of any problems with it.

0: Start

1:            // Bonus should be $100 per month the employee has worked here. 2: PROMPT “Enter number of years the employee has worked here: ” 3:            GET number_of_years_employed

4:            total_bonus = number_of_years_employed * 100 5: PROMT “Bonus for employee: $”, total_bonuz

6:            OUTPUT total_bonus

7: Stop

Example:

Enter number of years the employee has worked here: 10 Bonus for employee: $1000

We also want a new program, which will calculate the net, gross, and tax paid for an employee per week. Could you provide us with pseudocode of a program that takes an employee’s hourly wage, amount of hours worked in the week, and then provides us with the amount of net pay (total pay), gross pay (total – tax), and tax paid. This will save us a lot of time calculating this by hand for each employee!

Example:

Write a report to be sent back to the client with at least the following sections:

  • Title – include the name of the client company.
  • Summary – detail what is in the report.
  • A section for each of the five tasks below.

Task 1

The client is unsure of what pseudocode is and how programs can be run on their machine. Provide the following information in your report:

  1. Explain to the client what pseudocode is, specifically discuss why it is used to implement conceptual algorithms. (100 words or less).
    1. Explain to the client that provided pseudocode can be turned into a programming language, and explain how that programming language is transformed into a machine language that can be run on their machine. (100 words or less).

Task 2

The client provided pseudocode for calculating bonuses that he believes has bugs in it. Find all syntax errors in the provided pseudocode (there is at least one) and provide the following information in your CMP1041 Foundation Programming report:

  1. The number of syntax errors in the provided code.
  2. The client is not a software developer, to help them understand the problem describe what a syntax error is.
  3. Which line of code contains the syntax error.
  4. Fix the syntax error and provide the fixed code.

You may use the following template, replacing all of the <…> with the correct information:

Text Box: This code has <number_of_syntax_errrors> syntax errors.
For your information, syntax errors are… <describe what syntax errors are>. Syntax Error (at line <line_number_with_syntax_error>):
<insert_code_with_syntax_error> Replace this line with:
<insert_fixed_code>
“></td></tr></tbody></table></figure>



<figure class=
Text Box: This code has 17 syntax errors.
For your information, syntax errors are… Syntax Error (at line 4):
price_of_item_with_discount = pric_of_item * 0.9 Replace this line with:
price_of_item_with_discount = price_of_item * 0.9

Syntax Error (at line 9):
GETT price_of_item Replace this line with:
GET price_of_item

...

Example:

The client wants pseudocode for calculating bonuses that he believes has bugs in it. Find all logical errors in the provided pseudocode (there is at least one) and provide the following information in your CMP1041 Foundation Programming report:

  1. The number of logic errors in the provided code.
  2. Your client is not a software developer, to help them understand the problem describe what a logic error is.
  3. Which line of code where the logic error occurs.
  4. Fix the logic error and provide the fixed code.
  5. Describe why the code was changed to resolve the logic error.
Text Box: This code has <number_of_logic_errrors> logic errors. Logic errors are… <describe what logic errors are>.
Logic Error (at <line_number_with_logic_error>):
<insert_code_with_logic_error> Replace this line with:
<insert_fixed_code> Reasoning for change:
<reason_for_change>
“></td></tr></tbody></table></figure>



<p>You may use the following template, replacing all of the <…> with the correct information:</p>  



<figure class=
Text Box: This code has 4 logic errors.
For your information, logic errors are… Logic Error (at line 3):
price_of_item_with_discount = price_of_item * 0.9 Replace this with:
price_of_item_with_discount = price_of_item * 0.8 Reasoning for change:
The discounted item should be 80% of the price of the item.

Logic Error (at line 9):
…

Example:

The client wants pseudocode for a new program that will calculate the net, gross, and tax paid for an employee per week. Write pseudocode that:

  1. takes two inputs: employee wage per hour, and hours worked by employee this week.
  2. outputs three values: gross pay (total pay), net pay (total pay – tax), tax. Calculate the tax as 40% of the gross pay.
  3. prompt the user of the program to exactly match the example provided in the email from the client.

Task 5

The client provided us with pseudocode for calculating bonuses which had bugs in it. We want to ensure that we do not deliver the client buggy software like that program! Provide the following to the client so they have confidence in your program:

  1. Provide information about what a desk check is and why it is important.
  2. Perform desk checks with at least three data sets, see table below for example data sets, and provide the results so the client can confirm the program is not buggy for themselves!

You may use the following template, replacing all of the <…> with the correct information:

 Data Set 1Data Set 2Data Set 3
Employee wage per hour2030<..>
Hours worked this week3038<..>
 Data Set 1Data Set 2Data Set 3
Gross6001140<..>
Net360684<..>
Tax240456<..>
Statement Number<variable 1><variable 2>
1<..><..><..>
2<..><..><..>
3<..><..><..>
<..><..><..>

Submission

Export your CMP1041 Foundation Programming report in a pdf format with the following naming convention:

[Student_ID]_[Surname]_[First Name]_[SubjectCode]_[Assessment_#].pdf E.g.: 1234_Singh_Visha_PRG1002_Assessment_01.pdf

Google Docs, Microsoft Word, and various other word processing applications can export/publish to the pdf format.

All work must be submitted via the LMS, in the CMP1041 Foundation Programming assignments section appropriate to this brief. Please ensure the above mentioned submission date and/or time are adhered to, or penalties may apply.

For more information on late submission, please see the Assessment Policy.

Academic Integrity

The integrity of the CMP1041 Foundation Programming assessment process is fundamental for ensuring appropriate evaluation at AIT. All work submitted should be your own, and where additional resources are used, they must be referenced according to the Harvard style. Additionally, TurnItIn is available in the LMS to test plagiarism in your writing.

For more information on academic integrity, please see the Academic Integrity and Academic Integrity Penalties Policies.

Appeals

Fair application of the assessment rubric, rules and guidelines should be administered for each assessment. If you feel an evaluation requires further consideration, you may be entitled to an appeal.

For more information on your right to an appeal, please see the Assessment Appeals Procedure and Policy.

Policies

For access to the policies mentioned above and related to education at AIT, please see the footer of the AIT website, and follow the link named Education Policies and Procedures.

Website: https://www.ait.edu.au

Assessment Rubric

Task Descriptor(F) Fail(P) Pass(C) Credit(D) Distinction(HD) High Distinction
Interpret and discuss fundamental programming concepts   40%Fewer than three (3) of the following criteria are met. Other criteria are not included or poorly applied.Three (3) of the following criteria are met. Other criteria are not included or poorly applied.  Four (4) of the following criteria are met. Other criteria are not included or poorly applied.   Explanation of pseudocode includes that it is used to design algorithms.   Explanation of pseudocode includes rationale for how it allows quicker development of algorithms than actual code.   Explanation of pseudocode includes that it can be encoded in numerous forms.   Explanation of pseudocode includes how it differs from computer code.   Explanation of syntax and logic errors is well formatted and clear.   Explanation of syntax and logic errors includes what influence they have on the program.   Explanation of syntax and logic errors includes  At least five (5) of the following criteria are met. Other criteria are not included or poorly applied.   Explanation of pseudocode includes that it is used to design algorithms.   Explanation of pseudocode includes rationale for how it allows quicker development of algorithms than actual code.   Explanation of pseudocode includes that it can be encoded in numerous forms.   Explanation of pseudocode includes how it differs from computer code.   Explanation of syntax and logic errors is well formatted and clear.   Explanation of syntax and logic errors includes what influence they have on the program.   Explanation of syntax and logic errors includesAll seven (7) of the following criteria are met.   Explanation of pseudocode includes that it is used to design algorithms.   Explanation of pseudocode includes rationale for how it allows quicker development of algorithms than actual code.   Explanation of pseudocode includes that it can be encoded in numerous forms.   Explanation of pseudocode includes how it differs from computer code.   Explanation of syntax and logic errors is well formatted and clear.   Explanation of syntax and logic errors includes what influence they have on the program.   Explanation of syntax and logic errors includes how they manifest.
   1. Explanation of pseudocode includes that it is used to design algorithms.1. Explanation of pseudocode includes that it is used to design algorithms.
   2. Explanation of pseudocode includes rationale for how it allows quicker development of algorithms than actual code.2. Explanation of pseudocode includes rationale for how it allows quicker development of algorithms than actual code.
   3. Explanation of pseudocode includes that it can be encoded in numerous forms.3. Explanation of pseudocode includes that it can be encoded in numerous forms.
   4. Explanation of pseudocode includes how it differs from computer code.4. Explanation of pseudocode includes how it differs from computer code.
   5. Explanation of syntax and logic errors is well formatted and clear.5. Explanation of syntax and logic errors is well formatted and clear.
   6. Explanation of syntax and logic errors includes what influence they have on the program.6. Explanation of syntax and logic errors includes what influence they have on the program.
   7. Explanation of syntax and logic errors includes how they manifest.7. Explanation of syntax and logic errors includes how they manifest.
   how they manifest.how they manifest. 
Determine the process for the implementation of algorithms     20%Fewer than three (3) of the following criteria are met. Other criteria are not included or poorly applied.   The provided pseudocode:  Three (3) of the following criteria are met including the first two criteria. Other criteria are not included or poorly applied.  At least four (4) of the following criteria including the first three criteria.   The provided pseudocode:  At least five (5) of the following criteria including the first four criteria.   The provided pseudocode:    All six (6) of the following criteria are met.   The provided pseudocode:   Has the correct inputs.   Has the correct outputs.   Has no syntax errors.   Has no logic errors.   Is well formatted and has informatively named variables.   Prompt’s match the example exactly.
   1. Has the correct inputs.The provided pseudocode:1. Has the correct inputs.1. Has the correct inputs.
   2. Has the correct outputs.1. Has the correct inputs.2. Has the correct outputs.2. Has the correct outputs.
   3. Has no syntax errors.2. Has the correct outputs.3. Has no syntax errors.3. Has no syntax errors.
   4. Has no logic errors.3. Has no syntax errors.4. Has no logic errors.4. Has no logic errors.
   5. Is well formatted and has informatively named variables.Has no logic errors.   is well formatted and has informatively named variables.5. Is well formatted and has informatively named variables.5. Is well formatted and has informatively named variables.
 6. Prompt’s resemble the example.6. Prompt’s resemble the example.6. Prompt’s almost match the example.6. Prompt’s match the example exactly.
Apply the process of testing to validate the correctness of an algorithm.     10%    Less than three (3) of the following criteria are met.   1. Desk check is provided for at least one (1) data set.    Three (3) of the following criteria are met.   1. Desk check is provided for at least one (1) data set.  Three (3) of the following criteria are met.   1. Desk check is provided for at least two (2) data sets.Three (3) of the following criteria are met.   1. Desk check is provided for at least three (3) data sets.All four (4) of the following criteria are met.   1. Desk checks are provided for at least three (3) data sets.
 2. Desk checks are formatted in the correct manner.2. Desk checks are formatted in the correct manner.2. Desk checks are formatted in the correct manner.2. Desk checks are formatted well and in the correct manner.2. Desk checks are formatted well and in the correct manner.
 3. Desk check contains most statements of the provided pseudocode.3. Desk check contains most statements of the provided pseudocode.3. Desk check contains most statements of the provided pseudocode.3. Desk check contains most statements of the provided pseudocode.3. Desk check contains all statements of the provided pseudocode.
 4. Desk check values are mostly computed correctly.4. Desk check values are mostly computed correctly.4. Desk check values are mostly computed correctly.4. Desk check values are mostly computed correctly.4. Desk check values are computed correctly.
Apply the process of debugging pseudocode to identify and correct syntax and logic errors.     20%                  Fewer than two (2) of the following criteria are met.   Some Syntax Errors were identified in the provided pseudocode.   Some Logic Errors were identified in the provided pseudocode.            At least three (3) of the following criteria are met.   Some Syntax Errors were identified in the provided pseudocode, with respect to their line of code, line number.   Some Syntax Errors were fixed in the provided pseudocode, in a non-optimal manner.   Some Logic Errors were identified in the provided pseudocode.   Some Logic Errors were fixed in the provided pseudocode.        All four (4) of the following criteria are met.   Some Syntax Errors were identified in the provided pseudocode, with respect to their line of code, line number.   Some Syntax Errors were fixed in the provided pseudocode, in a non-optimal manner.   Some Logic Errors were identified in the provided pseudocode.   Some Logic Errors were fixed in the provided pseudocode.  All four (4) of the following criteria are met.   All Syntax Errors were identified in the provided pseudocode, with respect to their line of code, line number.   All Syntax Errors were fixed in the provided pseudocode, in a non-optimal manner with respect to lines of code used or in.   All Logic Errors were identified in the provided pseudocode, with respect to their line of code, line number.   All Logic Errors were fixed in the provided pseudocode, in a non-optimal manner.All four (4) of the following criteria are met.   All Syntax Errors were identified in the provided pseudocode, with respect to their line of code, line number.   All Syntax Errors were fixed in the provided pseudocode, in an optimal manner, i.e. no errors were introduced and no redundancy or inefficient code statements were used.   All Logic Errors were identified in the provided pseudocode, with respect to their line of code, line number.   All Logic Errors were fixed in the provided pseudocode, in an optimal manner.
Organize and present content in a suitable report format  Less than three (3) of the following criteria are met.  Three (3) of the following criteria are met.At least four (4) of the following criteria are met.  All five (5) of the following criteria are met.  All five (5) of the following criteria are met.
10%1. Provided file is in pdf format.1. Provided file is in pdf format.1. Provided file is in pdf format.1. Provided file is in pdf format.1. Provided file is in pdf format.
 Report has an appropriate title.   Report has a summary that somewhat details the contents of the report.   Report has at least five (5) sections corresponding to each of the tasks.Report has an appropriate title.   Report has a summary that somewhat details the contents of the report.   Report has at least five (5) sections corresponding to each of the tasks.Report has an appropriate title.   Report has a summary that somewhat details the contents of the report.   Report has at least five (5) sections corresponding to each of the tasks.Report has an appropriate title that includes the name of the client company.   Report has a summary that appropriately details the contents of the report.Report has an appropriate title that includes the name of the client company.   Report has a summary that comprehensively details the contents of the report.
     5. Report is well formatted.4. ReportCMP1041 Foundation Programming has at least five (5) sections corresponding to each of the tasks.4. Report has at least five (5) sections corresponding to each of the tasks.
 5. Report is well formatted.5. Report has consistent and good formatting.

Visit:https://auspali.info/

Also visit:https://www.notesnepal.com/archives/767

For solution: +610482078788

+61482073403

+61482072848