Community resourceWorksheet

OCR H446 1.2.3 Software Development mastery and transfer

Part 5 of 6 · H446 1.2.3 · Software development

One ticketing project carries both halves of H446 1.2.3 here: methodology reasoning in the first episode, then algorithm tracing and construction in the second. Nothing new is taught, so it works as consolidation once both strands have been covered separately.

Students will:

  • give paired differences between waterfall and spiral for a single described project
  • organise a project using one methodology or a clearly explained combination
  • explain how changed constraints alter the earlier methodology reasoning
  • trace a supplied algorithm and account for how the final total is formed
  • write code that uses a supplied function, stores its results and appends a total to a file

Inside: 5 explanation cells, 2 fill-in-the-blanks cells, 6 written answers and 1 trace table. 49 marks, about 50 to 65 minutes.

Series: H446 1.2.3 · Software development, part 5 of 6.

Shared by Coding PathwayVerified teacher

  • 14 cells
  • About 60 minutes
  • CC BY-SA 4.0
  • Shared 31 Aug 2026
  • Updated 15 Sept 2026

Preview

The whole resource, exactly as a class sees it. Answers and marking are held back.

Software Development mastery and transfer

This worksheet combines methodology selection with algorithm work. Begin with closed-book retrieval. In each answer, use the project evidence and show the complete path from input or decision to the required result.

Part A: choose and compare development approaches

A theatre group needs ticketing software. The pricing rules are fixed. Volunteers can review the public interface, while connection to a payment provider creates unresolved security risk. Different parts of this project point towards different approaches, so justify each choice carefully.

Fill in the blanks4 marks
A planned progression with defined stage outputs is gap 1. Repeated objectives, risk analysis, development/testing and next-cycle planning is gap 2. Rapid user-evaluated prototypes indicate gap 3. A named agile approach with pair programming and refactoring is gap 4.
  • waterfall
  • spiral
  • RAD
  • XP
  • agile family
Written answer6 marks

Give two differences between waterfall and spiral that matter to the theatre project.

For each difference, compare the same feature on both sides and explain why it matters here.

Students type their answer here.

Written answer10 marks

Recommend how the theatre team should organise the project. You may choose one main methodology or combine approaches if you explain the separate purpose of each.

Use the fixed pricing rules, volunteer interface feedback, payment-security risk and need for project control. Include at least one limitation of your recommendation.

Students type their answer here.

Written answer4 marks

The volunteers are no longer available for reviews, and the payment provider supplies a proven, fixed interface. Explain two ways this new information should change the earlier recommendation.

Reconsider which approaches have lost or gained support. Do not defend the original answer automatically.

Students type their answer here.

Part B: follow, correct and write algorithms

The project context now changes from planning the development to constructing a correct solution. Treat the supplied fee(age) function as an existing component: call it and use the value it returns.

Follow the ticket-fee algorithm

The theatre supplies fee(age), which returns an integer booking fee. Track each returned fee separately from the final total printed by the main algorithm.

Trace table20 marks

Trace the supplied algorithm. Record age, total and output for ages [17, 25, 12].

Enter a value only when it changes. Record returned and printed values in order.

Use one row for each statement as it runs. Fill in a box only when that value changes on that row, and leave the rest blank.

ProgramPython
  1. def fee(age):
  2. if age < 16:
  3. return 1
  4. if age < 21:
  5. return 2
  6. return 3
  7. ages = [17, 25, 12]
  8. total = 0
  9. for age in ages:
  10. total = total + fee(age)
  11. print(total)
Trace table with 8 columns
Rowagestotalageage (fee)Return valueage < 16age < 21Output
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Written answer5 marks

State the fee returned for each age and explain how the algorithm forms the final total.

Give the three returned values, explain the accumulator update and distinguish those returns from the single printed output.

Students type their answer here.

Written answer6 marks

A student copies the body of fee into the loop. They also call fee(age) on a line by itself and then add an undefined variable called charge. Identify two faults and write a correct loop body.

Call the supplied function once for each age and add its returned value to `total`.

Students type their answer here.

Written answer10 marks

Write coherent pseudocode or program code that inputs four ages. For each age, call fee(age) and store the returned fee. Output the total of the four fees, append the total to daily.txt and close the file.

Use a loop. Check each requirement separately and do not rewrite `fee`.

Students type their answer here.

Fill in the blanks4 marks
A methodology recommendation links something the process checkpoint gap 1 to the project requirements. Spiral centres on checkpoint gap 2; RAD centres on rapid checkpoint gap 3 and user evaluation. A function's checkpoint gap 4 must be stored or used by its caller.

Review your responses

Check the methodology answers for accurate process detail, use of the theatre evidence and a supported conclusion. Check the algorithm answers for every input, call, returned value, update, output and file operation required by the task.