Skip to content

A1 · Decomposition

Spec reference: Section A - Computational Thinking
Key idea: Break a complex problem into smaller, manageable sub-problems.


Decomposition


Identifying problems and processes

Before you can decompose a problem, you need to clearly identify and describe it. This means:

  • Stating what the problem actually is.
  • Identifying the inputs - what data goes in.
  • Identifying the outputs - what the system should produce.
  • Identifying the processes - what transformations need to happen.

Example: Online shopping checkout

ElementDescription
ProblemA customer needs to buy items and pay for them online
InputsItems in basket, delivery address, payment details
OutputsOrder confirmation, stock update, payment receipt
ProcessesCalculate total, validate payment, update database, send email

Breaking problems into distinct steps

Once you understand the problem, you break it into distinct steps - each step is a self-contained task that can be understood and completed independently.

Example: Student grade calculator

A program needs to read student marks and output their grade. Decomposed:

  1. Input student marks for each subject.
  2. Calculate the average mark.
  3. Compare average to grade boundaries.
  4. Output the grade.
  5. Repeat for each student.

Each of these steps can be further decomposed. Step 3, for example:

  • If average ≥ 70 → Grade A
  • If average ≥ 60 → Grade B
  • If average ≥ 50 → Grade C
  • Otherwise → Grade U

Describing processes in structured steps

Once decomposed, you describe each process in structured, numbered steps - similar to writing an algorithm. The language should be clear and unambiguous so that any developer (or examiner) can follow it.

Example: Library book search system

1. User enters a search term (title or author)
2. System searches the database for matching records
3. If matches found:
   3a. Display list of matching books with availability status
4. If no matches found:
   4a. Display "No results found" message
5. User selects a book from the results
6. System displays full book details and borrowing options

Why decomposition matters in the exam

In the BTEC Unit 1 exam, you may be given a scenario and asked to:

  • Identify the inputs, processes and outputs of a system.
  • Break a problem into distinct steps.
  • Describe a process in structured English.

Always be specific - name the actual data being input/output, not just "data goes in" and "data comes out".


Exam-style practice

Question: A hospital needs a system to book patient appointments. Identify the inputs, processes and outputs for this system, and break the booking process into at least five structured steps.

Model answer:

ElementDescription
InputsPatient ID, patient name, preferred date/time, doctor ID
OutputsBooking confirmation, updated appointment schedule, reminder notification
ProcessesCheck doctor availability, validate patient details, create booking record, send confirmation

Structured steps:

1. Patient enters their ID and preferred appointment date/time
2. System validates the patient ID against the database
3. System checks the selected doctor's availability for that date/time
4. If the slot is available:
   4a. Create a new appointment record
   4b. Send a confirmation to the patient
5. If the slot is not available:
   5a. Display alternative available times
   5b. Patient selects alternative or exits

Summary

TermMeaning
DecompositionBreaking a problem into smaller sub-problems
Sub-problemA smaller, self-contained part of a larger problem
Structured stepsClear numbered instructions describing a process
InputsData that goes into the system
OutputsResults produced by the system
ProcessesOperations that transform inputs into outputs

Test Yourself

Question 1 of 5

What is the main purpose of decomposition in computational thinking?

Ad

PassMaven - revision made simple.