Thinking Procedurally Flashcards
What is the first stage of thinking procedurally?
Taking the problem defined by the user and breaking it down into its constituent parts
What is the purpose of problem decomposition?
To make complex problems easier to solve and more manageable by allowing tasks to be divided between a group of people according to individual skill sets
State another name given to top-down design
Stepwise refinement
What is the purpose of top-down design?
Continually break problems down into subproblems until each subproblem can be represented as a single task and ideally a self-contained subroutine.
What are the benefits of using top-down design?
● Problems can be solved and modules
developed by different people.
● Tasks can be tested separately.
Modules are self-contained
What sort of problems is top-down design suited to?
Large, complex problems
What is the second stage of thinking procedurally in software development?
Identifying components of a solution
How can the lowest level subproblems in top-down
design in code?
As self-contained modules or subroutines
What do software developers need to consider when
recombining components of a solution?
The order in which subroutines are executed, and how they interact with each other, based on their role in solving the problem.
What must a software developer do before designing
a subroutine to solve a particular problem?
See whether it is possible for an already existing subroutine or module to be used.
State two advantages of utilising reusable
components.
● More reliable than newly-coded components, as
they have already been tested.
● This saves time, money and resources