Study resource
Abstraction and automation common mistakes
Study Abstraction and automation with curriculum-aligned Common Mistakes resources, practice links, and exam-focused support.
At a glance
common mistakes
Resource type
Topic
Abstraction and automation
Common mistakes
Testing too few cases
Checking a logic solution with only one or two input combinations and assuming it is correct.
Fix itFor a small problem, list every possible input combination and compare the actual result with the expected result for each one.
Forgetting to update the loop variable
Writing an iterative algorithm in which the value used by the loop condition never changes.
Fix itCheck that each iteration changes the relevant variable so that the loop can eventually terminate.
Confusing removal with grouping
Describing representational abstraction as grouping items by common characteristics.
Fix itRepresentational abstraction removes unnecessary details from a representation. Grouping by common characteristics is abstraction by generalisation or categorisation.
Hiding every characteristic
Assuming that information hiding means concealing all characteristics of an object.
Fix itRetain the essential characteristics and hide only the details that do not contribute to them.
Confusing a procedure with an output
Treating the answer from one calculation as the procedure.
Fix itThe answer is the result of a particular computation. The procedure is the general computational method used to produce results.
Confusing a procedure with a function
Saying that procedural abstraction produces a function.
Fix itState that procedural abstraction produces a procedure. A further abstraction is needed to disregard the particular computation method and obtain a function.
Confusing abstraction with displaying more detail
Saying that data abstraction requires the user of an object to know how it is stored, such as knowing the array positions used by a stack.
Fix itState that the representation and construction details are hidden. A stack can be used without exposing its array and top-of-stack pointer.
Confusing abstraction with removing everything
Assuming that abstraction means deleting all details from the problem.
Fix itOnly unnecessary details are removed. Relevant information must remain so that the problem can still be represented and solved.
Listing unrelated parts
Giving a list of parts without stating the identifiable task completed by each part.
Fix itFor every sub-problem, state the task it accomplishes and ensure that it contributes to the original problem.
Confusing procedures with data objects
Saying that a data abstraction is formed by combining procedures.
Fix itState that procedures are combined to form compound procedures, whereas data objects are combined to form compound data.
Related topics
