9618 · 12.2
Program Design flashcards
Revision flashcards for Cambridge 9618 Program Design (syllabus 12.2). Flip, recall, then mark a real past-paper question.
Card
What is Program Design?
The process of planning the structure and logic of a program before writing the code. It involves breaking down a problem and defining modules and their relationships.
Card
What is Top-Down Design?
A problem-solving approach where you start with the overall problem and break it down into smaller, more manageable sub-problems. This process is repeated, creating a hierarchy.
Card
What is Stepwise Refinement?
The process of progressively adding detail to a program design. At each stage of top-down design, the sub-problems are refined into more detailed steps, until the steps are simple enough to be coded.
Card
What is a Structure Diagram?
A graphical representation of a program's architecture, showing the modules (sub-routines) and their hierarchical relationships. It shows how the program is broken down, not the order of execution.
Card
What does a rectangle represent in a structure diagram?
A module, which could be a procedure or a function. The top-level rectangle is the main program.
Card
What do lines connecting rectangles in a structure diagram represent?
A 'call' or invocation. A line from module A to module B means that module A calls module B to perform a task.
Card
What is a key difference between a structure diagram and a flowchart?
A structure diagram shows the hierarchical breakdown of tasks (decomposition), whereas a flowchart shows the sequence of operations and decisions (flow of control).
Card
What is a 'module' in program design?
A self-contained block of code that performs a specific task, such as a procedure or a function. Modules are the building blocks in top-down design.
Card
State one benefit of using top-down design.
It helps manage complexity by breaking a large problem into smaller, understandable pieces. Other benefits include easier testing, debugging, and team collaboration.
Card
Common Trap: My structure diagram has decision (diamond) symbols.
This is incorrect. Structure diagrams do not show decisions, loops, or sequence. You are confusing it with a flowchart. Structure diagrams only show decomposition into modules.
Card
How does program design facilitate teamwork?
By breaking the problem into distinct modules, different programmers can work on different modules simultaneously, as long as the interfaces between them are clearly defined.
Card
What is the relationship between Top-Down Design and Stepwise Refinement?
They are linked concepts. Top-down design is the strategy of breaking a problem down. Stepwise refinement is the iterative process of adding detail at each level of the breakdown.