Control structures, modularity, data structures, algorithms and the paradigms used to express them.
These are the statements the Software Design and Development syllabus makes about Programming and Data Structures. Dux records each one against the questions you answer, so you can see which of them you have actually been tested on and which have never been asked.
Variables, sequence, selection and iteration, and the control structures that express an algorithm.
Arrays, records, files and lists, and choosing a structure that fits the operations required.
Decomposition, desk checking and expressing a solution in structured English or pseudocode.
Linear and binary search, and comparison sorting, including when a faster algorithm is worth its complexity.
Classes, objects, encapsulation and inheritance, and the design problems each solves.
Base and recursive cases, and tracing a recursive call to verify its result.
Order of magnitude, and why an algorithm that is fine at 100 records fails at a million.
Imperative, object-oriented and logic paradigms, and how the choice shapes a solution.
Range, type and consistency checks, and handling failure without crashing.
HSC Software Design and Development - Examination Shape is 100 marks in 180 minutes. Questions on Programming and Data Structures are not one shape repeated: the command word decides what the marker is looking for, and the mark value decides how much of it. These are the ones Software Design and Development uses.
Dux writes practice for this module in exactly these shapes, so the drill is the same task the paper sets — not a general knowledge quiz with the module name on it.
Programming and Data Structures is module 2 of 4 in Software Design and Development. Students routinely lose marks because a question spans two modules, so the neighbouring modules are worth reading next to this one.
Dux diagnoses Software Design and Development dot point by dot point, then writes questions in the shape this course marks. Written answers come back marked against the bands.